MCP service#
The Agent Registry MCP service is a Model Context Protocol server that exposes every Agent Registry operation as an AI-callable tool. It lets AI development tools — including Claude, GPT, LangChain, and Cursor — read from and write to the CIS-8004 and CIS-8 contracts without requiring the AI to understand Concordium’s wire formats or cryptography.
The service holds no private keys. All tools that produce transactions return a sign-ready payload (hex-encoded parameter bytes plus metadata) that the caller’s wallet must sign and submit. The MCP service is stateless with respect to user credentials.
Hosted service#
A hosted instance of the MCP service is available for direct use in AI assistants and agent frameworks. Connect your MCP-compatible client to the hosted endpoint to gain immediate access to all registry tools on mainnet, testnet, and devnet.
Contact the Concordium team or check the Concordium developer portal for the current hosted endpoint URL and connection instructions.
Running locally#
For production deployments, custom network configurations, or offline use, you can run the MCP service locally alongside your own Indexer instance.
Prerequisites#
Docker (recommended) or a Node.js runtime.
A reachable Concordium gRPC v2 endpoint for the target network.
A running Indexer instance if you need discovery and search tools (
list_agents,search_agents,recent_registrations).
Configuration#
The service reads configuration from environment variables:
Variable |
Description |
|---|---|
|
Target network. One of |
|
gRPC v2 endpoint of a Concordium node. Defaults to the public endpoint for the configured network. |
|
Base URL of the Agent Registry Indexer REST API (e.g. |
|
Override the CIS-8004 contract address in |
|
Override the CIS-8 contract address. Same format as above. |
Docker quick-start#
docker run -e MCP_NETWORK=mainnet \
-e MCP_INDEXER_URL=http://host.docker.internal:4400 \
-p 3000:3000 \
concordium/agent-registry-mcp:latest
The server listens on port 3000 by default and exposes a standard MCP endpoint at /mcp.
Available tools#
The MCP service exposes 35 tools, grouped by function.
Discovery and search (require Indexer)#
Tool |
Description |
|---|---|
|
Lists all registered agents. Supports pagination, owner filter, and status filter (Active / Revoked). |
|
Substring search across |
|
Returns the most recent |
|
Returns the most recent |
|
Full event history for a single agent token. |
On-chain lookups (no Indexer required)#
Tool |
Description |
|---|---|
|
Resolves a Base58Check token address to a full agent record. |
|
Resolves a |
|
Returns all agents owned by a given Concordium account. |
|
Returns the agent associated with a given account, if any. |
|
Reads a single on-chain metadata key for an agent. Returns value as hex and UTF-8 text. |
|
Returns the payment wallet address stored in the reserved |
|
Returns true if the agent’s status is Active, false if Revoked or not found. |
|
Returns the Concordium account that registered a given CIS-8 external key, or null. |
Transaction builders (CIS-8004)#
All builder tools return { hex, schema_json } — the hex is the wire-encoded parameter, ready for signing. No private keys are required or accepted.
Tool |
Description |
|---|---|
|
Builds a |
|
Builds a |
|
Builds a |
|
Builds a |
|
Builds a |
|
Builds a CIS-2 |
|
Admin-only: builds a forced transfer payload. |
|
Builds an |
|
Admin-only: builds a module upgrade payload. |
|
Admin-only: updates the linked CIS-8 and CIS-10 contract addresses atomically. |
Transaction builders (CIS-8)#
Tool |
Description |
|---|---|
|
Returns the exact bytes the external key must sign before calling |
|
Builds a CIS-8 |
|
Builds a CIS-8 |
|
Builds a CIS-8 |
|
Returns the canonical bytes required to prove control of a wallet when setting |
Utilities#
Tool |
Description |
|---|---|
|
Generates a complete, valid Agent Card JSON and its SHA-256 hash from human-readable inputs. |
|
Fetches |
|
Computes the Base58Check CIS-2 token address for a |
|
Decodes a Base58Check token address into its component fields. Off-chain only. |
|
Lists available tools, unavailable tools with reasons, and the configured backends for a given network. |
|
Returns the gRPC endpoint, latest finalised block, and Indexer sync state for a network. |
|
Returns contract addresses, module references, and admin accounts for both CIS-8004 and CIS-8 on a given network. |
Connecting Claude Desktop#
Add the following block to your Claude Desktop MCP configuration (claude_desktop_config.json) to connect to the hosted service:
{
"mcpServers": {
"concordium-agent-registry": {
"url": "<hosted-mcp-endpoint>"
}
}
}
For a locally running server, replace the URL with http://localhost:3000/mcp.