feat: add Umia plugin for Base MCP#144
Open
pamungkaski wants to merge 1 commit into
Open
Conversation
* feat: add Umia plugin for Base MCP First futarchy / decision-market plugin for Base MCP. Hybrid integration (umia-cli + auth-free /api/v1/calldata/* HTTP API) routed through send_calls; never signs locally. Appends four net-new discovery tags to the vocabulary. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * fix: correct Umia plugin doc accuracy (pre-upstream review) Live-verified fixes from the internal plugin-spec review of PR #1: - Clarify the `:venture` REST path param is the project `slug` (`project.slug` from `/hub/markets`); the venture id/address 404. - Correct the mainnet-env note — `config` returns null contracts and `/hub/fundraises` is empty, so gate all market/auction features to testnet (previous "auction factory only" was unsupported). - Auction `--max-price` must be strictly above the clearing price (API returns 422 at or below it), not "at/above". Signing model, endpoints, allowlist, chains, ERC6909 ids, and the send_calls mapping all verified against the live testnet API. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * fix: address Copilot PR review comments (pre-upstream review) - Onboarding callout: source the wallet address from Base MCP `get_wallets` (not from the user), and add a high-risk-category disclaimer — decision markets/token sales may be jurisdiction- restricted and some auction steps require verification; never help circumvent geofencing or verification gates. - Surface Routing: stop asserting the API hosts "are on the allowlist" — allowlisting is a maintainer-provisioned step; describe the not-allowlisted fallback (hub UI) for chat-only surfaces. - Example Prompts: correct `GET /hub/markets?status=open` to the documented `GET /api/v1/hub/markets?status=open` (shorthand path 404s). CLI `@latest` (3 comments) intentionally kept: the plugin-spec's `cliPackage` examples use `@latest`; pinning is mandated only for stdio MCPs, and `version` is the plugin-doc version, not the package version. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Collaborator
🟡 Heimdall Review Status
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Adds the Umia plugin to the Base MCP skill. Umia runs onchain decision markets (futarchy) and continuous-clearing token auctions across EVM chains. The plugin reads markets, auctions, prices, and positions over Umia's HTTP API and builds unsigned
{ to, value, data }calldata via the auth-free/api/v1/calldata/*endpoints, then routes every write through Base MCPsend_calls. With a shell it uses theumiaCLI (npx umia-cli@latest); on chat-only surfaces it calls the same HTTP API directly. It never signs or broadcasts outside Base MCP and never handles private keys.hybrid(HTTP API + optional CLI, surface-dependent routing)base,base-sepolia(multi-chain; the active set is discovered viaumia config/GET /api/v1/config, never assumed)This PR also registers four genuinely new tags introduced by the plugin —
futarchy,decision-markets,token-auctions,governance— by appending them to the tag vocabulary list inreferences/plugin-spec.md, as required by the spec's Contribution Scope.Type of change
Affected skill(s)
base-mcp
Plugin checklist
Base MCP Plugin Submission Agreement (when applicable)
By checking the box below, I agree and represent on behalf of the protocol/entity it references that:
I am authorized to submit this plugin on behalf of the protocol/entity it references;
the plugin does not infringe or misappropriate any third party's rights;
the plugin and the underlying protocol comply with all applicable laws, and my API enforces the same geofencing and eligibility restrictions as my own user-facing app;
the plugin is in full compliance with our protocol's/entity's then-current terms and conditions, and if not, submission and use thereafter is considered a formal written exemption to such terms and conditions;
the plugin accurately describes its behavior and contains no hidden, deceptive, or malicious instructions, and my API will not return malicious or unexpected calldata;
the protocol/entity is solely responsible for the plugin and is submitting a plugin is subject to the Base Account and Base App Terms of Service as using a "Service"; and
Base may modify, decline to list, or remove the plugin at any time, for any reason.
I have read and agree to the Base MCP Plugin Submission Agreement above.
Related issues
N/A
🤖 Generated with Claude Code