Metaplex Agent Registry
io.github.nirholasPublished by GitHub account nirholasv0.2.1Updated Oct 27, 2026
Deploy AI agents on-chain on Solana with an EIP-8004 identity. Deploy fee funds $THREE buybacks.
Overview
Mints and registers AI agents on-chain in the Metaplex Agent Registry on Solana, with an EIP-8004 identity, from any MCP client.
- What you can do
- Mint and register agents: mint a Metaplex Core asset plus its EIP-8004 identity, signed by a local key or prepared for an external wallet to sign, then broadcast the signed transactions.
- Enrol existing assets: register an already-minted Core asset in the Agent Registry.
- Read agents: fetch a registered agent's asset, plugins, decoded metadata and registration documents, identity PDA and built-in wallet balance.
- Inspect wallets: look up an asset's built-in wallet or the configured signer with live SOL balance.
- Build documents and list deployments: generate the EIP-8004 registration JSON offline and list recent registrations from the three.ws feed.
- Price a deploy: show the fee schedule, a…
- When to use it
- Use it when you want an assistant to publish an AI agent on Solana with a Metaplex Core asset and EIP-8004 identity, or to inspect and price existing registry entries. Devnet support makes it suitable for free rehearsal before a mainnet deploy.
- Requirements
- Runs locally via npx, so Node 20+ is needed. SOL on the target network is required for minting (about 0.027 SOL per agent on mainnet, or about 0.007 with the holder waiver; devnet is free). Optional SOLANA_SECRET_KEY for the key-signing lane; the external-wallet lane needs no key. SOLANA_RPC_URL defaults to a public endpoint; an HTTPS RPC is required.
Installation
In SourceWeft
- Open Metaplex Agent Registry in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
@three-ws/metaplex-agent-mcp
Deploy AI agents on-chain into the Metaplex Agent Registry on Solana, from any MCP client.
One flow mints a Metaplex Core asset and registers its EIP-8004 agent identity (a single atomic transaction when it fits Solana's 1232-byte limit, create + register in sequence otherwise, exactly how the Genesis 333 landed), so the agent shows up on metaplex.com/agents with its own built-in wallet, reputation surface, and explorer pages. The default output reproduces the exact shape of the three.ws Genesis 333 mints, verified byte-for-byte against the live assets:
- asset metadata as a self-contained
data:application/json;base64URI (name,image,animation_urlGLB) - Royalties plugin (5% to the owner), VerifiedCreators (the signing wallet), ImmutableMetadata
- AgentIdentity plugin carrying the
eip-8004#registration-v1document (model.uri,active,x402Support,registrations,supportedTrust)
Two signing lanes, both self-custodial:
- Agents sign with their own keypair (
SOLANA_SECRET_KEY):mint_onchain_agent. - People sign with Phantom, Solflare, Backpack, Ledger, or any Solana wallet:
prepare_agent_mintbuilds the transaction, the wallet signs it,send_signed_transactionbroadcasts it. No key ever touches the server.
A mainnet deploy pays a flat 0.02 SOL fee, in the same transaction as the mint, and that fee funds $THREE buybacks. Hold $THREE and it halves, then disappears; devnet never pays it. Every preview shows the number and its recipient before anything is signed. See $THREE: the deploy fee and the holder waiver.
Nothing is mocked: real Metaplex programs, real Solana, and devnet support for free end-to-end rehearsal.
Install
Setup
Claude Code:
Cursor / any MCP client (mcp.json):
SOLANA_SECRET_KEY is optional: every read tool and the whole Phantom/Solflare flow works without it.
Quick start
Rehearse on devnet for free, then go to mainnet:
A mainnet deploy costs ~0.027 SOL: ~0.007 in Core rent, identity PDA rent, and network fees, plus a flat 0.02 SOL deploy fee that funds $THREE buybacks. Holding $THREE halves that fee and then waives it, and devnet is free. See $THREE.
Tools
$THREE: the deploy fee and the holder waiver
A mainnet deploy carries a flat 0.02 SOL fee. Three things about it matter:
- It rides in the same transaction that creates the asset. A deploy that fails, is rejected, or expires moves no money. There is no separate payment step and nothing to reconcile.
- It is disclosed before anything is signed. Every
mint_onchain_agentpreview and everyprepare_agent_mintresponse returnsdeploy_fee_solanddeploy_fee_to, with the tier that produced them. - It funds $THREE buybacks. The fee is paid to the wallet the three.ws
$THREE buyback lane spends from
(
FeMbDoX7R1Psc4GEcvJdsbNbZA3bfztcyDCatJVJpumpis the mint), and the public ledger of what that lane has bought is at/api/three-token/stats. Deploys are the only revenue this package has.
Holding $THREE makes it cheaper, then free:
The balance is read live from the chain when the transaction is built. Nothing is staked, escrowed, locked, or spent to earn it: hold the tokens in your own wallet and keep them, and the waiver applies to every agent you deploy. Devnet always pays zero, so a full end-to-end rehearsal stays free.
Self-hosting a fork with different economics is DEPLOY_FEE_SOL, DEPLOY_FEE_WALLET, and
DEPLOY_FEE_ENABLED.
Customization
Every field the mint touches is a parameter: owner, collection, royalty basis points and splits, verified creator, immutable metadata, on-chain Attributes, permanent freeze/transfer/burn delegates, AddBlocker, off-chain metadata attributes, external_url, services, trust models, registration entries, and full metadata_uri / registration_uri overrides for documents you host yourself. The defaults are the Genesis 333 values, so calling with just name, description, image, and model_url produces an asset indistinguishable in shape from the originals.
Safety
mint_onchain_agentandregister_agent_identitybroadcast only withconfirm: true(setREQUIRE_CONFIRM=falseto opt out); previews cost nothing.- Keys stay yours:
SOLANA_SECRET_KEYor a per-callsecret, never a custodial wallet. The wallet lane needs no key at all. - Balances are checked before spending, RPC endpoints must be HTTPS, and devnet is a first-class target for rehearsal.
Environment variables
Library use
The builders are exported for direct embedding (web apps, scripts):
The registration and metadata builders are also importable on their own (dependency-free, browser-safe) from @three-ws/metaplex-agent-mcp/lib/registration, and the transaction builders from @three-ws/metaplex-agent-mcp/lib/mint. The three.ws /deploy-onchain page runs on exactly these. When atomic is false, combinedBuilder still holds the whole mint: compiled as a Solana transaction v1 (4,096-byte limit) it lands create + register in one atomic transaction, which is what /deploy-onchain does for any wallet that advertises v1 signing.
Requirements
- Node 20+
- SOL on the target network for minting (~0.027 SOL per agent on mainnet, or ~0.007 with the holder waiver; devnet is free via faucet)
Links
- three.ws: https://three.ws
- $THREE: https://three.ws/three
- Live deployments feed: https://three.ws/deployments
- Metaplex Agent Registry: https://www.metaplex.com/agents
- Metaplex docs: https://www.metaplex.com/docs/agents
- Source: https://github.com/nirholas/three.ws/tree/main/packages/metaplex-agent-mcp
Source: packages/metaplex-agent-mcp/README.md at commit c8f2cde
Tools
0Version history
2- v0.2.1LatestOct 10, 2026
- v0.2.0Sep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts