YAMO Chain MCP Server
OfficialProvides tools for interacting with the Ethereum blockchain (Sepolia testnet) to submit, retrieve, and audit YAMO blocks, anchor provenance events, and verify block integrity.
Enables decentralized storage of YAMO block content via IPFS, including automatic uploading, deep bundling, and encryption of reasoning chains.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@YAMO Chain MCP Serverrecall my last 5 lesson memories"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
π€ YAMO Chain MCP Server 
This MCP Server acts as a bridge, allowing LLMs to interact with the YAMO Blockchain. It is now powered by @yamo/core for robust IPFS handling.
π¦ Installation
# Global installation (recommended)
npm install -g @yamo/mcp-server
# Or use npx (no installation needed)
npx @yamo/mcp-serverRelated MCP server: Hyperledger Fabric MCP Server
π§° Tools Provided
yamo_recall_lessons
Recalls past LessonLearned constraints stored by YAMO agents β Ghost Protection.
Call this at the start of each session to restore institutional memory and avoid repeating past mistakes. Returns raw YAMO block content strings; the calling LLM interprets and applies them as active constraints.
Input:
limit(optional, default: 5, max: 20)Output: Raw YAMO block strings joined with double newline
Env:
YAMO_MEMORY_PATHβ path to LanceDB directory (default:./data/memories.lance)
Architectural note: This server accesses memory in read-only mode. If a future requirement needs MCP sessions to store lessons, route writes through yamo-bridge via
memory:sharedβ do not open the LanceDB store for direct writes from MCP.
yamo_submit_block
Submits a new reasoning block.
Input:
blockId,contentHash, etc.New Feature:
content(string) andfiles(array). If provided, the server handles IPFS uploading and Deep Bundling automatically before signing.Encryption: Optional
encryptionKey(string). If provided, the bundle is encrypted (AES-256-GCM) before upload, ensuring privacy for sensitive reasoning chains.
yamo_get_block
Retrieves full block data from the YAMO blockchain by its unique ID.
Returns metadata including blockId, previousBlock, agentAddress, contentHash, timestamp, consensusType, ledger, and ipfsCID.
yamo_get_latest_block
Retrieves the most recently submitted YAMO block from the blockchain. Useful for automatically getting the chain tip to use as previousBlock for the next submission.
yamo_audit_block
Performs a cryptographic integrity audit of a block.
Fetches block metadata from blockchain.
Downloads content from IPFS.
Re-hashes the content locally.
Asserts
LocalHash === ChainHash. RequiresencryptionKeyif the bundle is encrypted.
yamo_verify_block
Quickly verifies if a specific hash matches the immutable on-chain record for a block ID.
yamo_anchor_event
Anchors a YAMO provenance event on-chain (Phase 3). Submits a blockId and contentHash pair to the registry without IPFS content.
yamo_bridge_*
Tools for interacting with the YAMO bridge cluster (requires YAMO_BRIDGE_URL):
yamo_bridge_list_kernels: Lists connected kernels and their skills.yamo_bridge_cluster_status: Shows bridge cluster status (Raft leader, members).yamo_bridge_invoke_skill: Invokes a skill on a capable kernel.
βοΈ Configuration
Option 1: Claude Desktop Integration (Recommended)
Add to your Claude Desktop config (claude_desktop_config.json):
With Global Installation:
{
"mcpServers": {
"yamo-chain": {
"command": "yamo-mcp-server",
"env": {
"CONTRACT_ADDRESS": "0x3c9440fa8d604E732233ea17095e14be1a53b015",
"RPC_URL": "https://ethereum-sepolia-rpc.publicnode.com",
"PRIVATE_KEY": "0xYOUR_PRIVATE_KEY",
"USE_REAL_IPFS": "false",
"PINATA_JWT": "optional_if_using_real_ipfs"
}
}
}
}With npx (no installation):
{
"mcpServers": {
"yamo-chain": {
"command": "npx",
"args": ["@yamo/mcp-server"],
"env": {
"CONTRACT_ADDRESS": "0x3c9440fa8d604E732233ea17095e14be1a53b015",
"RPC_URL": "https://ethereum-sepolia-rpc.publicnode.com",
"PRIVATE_KEY": "0xYOUR_PRIVATE_KEY",
"USE_REAL_IPFS": "false"
}
}
}
}Option 2: Standalone Usage
Set environment variables and run:
export CONTRACT_ADDRESS=0x3c9440fa8d604E732233ea17095e14be1a53b015
export RPC_URL=https://ethereum-sepolia-rpc.publicnode.com
export PRIVATE_KEY=0xYOUR_PRIVATE_KEY
# With global install
yamo-mcp-server
# Or with npx
npx @yamo/mcp-serverπ Networks
Sepolia Testnet (Production - Recommended)
Configuration:
Contract:
0x3c9440fa8d604E732233ea17095e14be1a53b015RPC:
https://ethereum-sepolia-rpc.publicnode.com
Requirements:
β Wallet with Sepolia ETH for gas
β Public RPC endpoint (no API key needed)
Local Development
Configuration:
Contract: Deploy using
@yamo/contractsRPC:
http://127.0.0.1:8545
Requirements:
β οΈ Local Hardhat node must be running:
npx hardhat nodeβ οΈ Contract must be deployed locally
β οΈ Wallet must be funded with local ETH
π° Wallet Setup
1. Generate a Wallet
If you don't have a private key:
node -e "const ethers = require('ethers'); const w = ethers.Wallet.createRandom(); console.log('Address:', w.address); console.log('Private Key:', w.privateKey);"2. Get Sepolia ETH (Testnet Only)
Your wallet needs Sepolia ETH for gas. Use your wallet address (not private key) with these faucets:
Alchemy Faucet (Fastest - 0.5 ETH):
Sign in with Google/GitHub
PoW Faucet (No login - 0.05-0.1 ETH):
Mine for ~5 minutes
Google Cloud Faucet (0.05 ETH):
3. Check Your Balance
# Replace with your wallet address
curl -X POST https://ethereum-sepolia-rpc.publicnode.com \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_getBalance","params":["0xYOUR_ADDRESS","latest"],"id":1}'If result is "0x0", you need more ETH!
β οΈ Common Issues
"Sender doesn't have enough funds"
Problem: Your wallet has 0 ETH or insufficient balance
Solution:
Check you're using Sepolia RPC, not localhost
Verify your wallet address has Sepolia ETH (see faucets above)
Make sure
PRIVATE_KEYmatches the funded wallet
"Connection refused" or "ECONNREFUSED"
Problem: RPC_URL points to http://127.0.0.1:8545 but no local node running
Solution:
For Sepolia: Change RPC to
https://ethereum-sepolia-rpc.publicnode.comFor Local: Start Hardhat node:
cd packages/contracts && npx hardhat node
Balance shows 0 but I have ETH
Problem: Wrong network - you might have mainnet ETH, not Sepolia ETH
Solution:
Verify RPC is Sepolia:
https://ethereum-sepolia-rpc.publicnode.comCheck balance on Sepolia: https://sepolia.etherscan.io/
Get Sepolia testnet ETH from faucets (see above)
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Flicense-qualityDmaintenanceEnables AI agents to interact with the Somnia blockchain network, including documentation search, blockchain queries, wallet management, cryptographic signing, and on-chain operations.Last updated
- AlicenseAqualityBmaintenanceEnables AI assistants to interact with Hyperledger Fabric blockchain networks, supporting chaincode queries and invocations, block and transaction retrieval, chaincode lifecycle management, and channel operations.Last updated12132ISC
- Alicense-qualityDmaintenanceEnables LLMs to interact with blockchain data across multiple chains (Ethereum, BSC, Polygon, Avalanche, etc.) via Ankr's Advanced API, supporting NFT, token, and query operations.Last updated7MIT

Nexus MCP Serverofficial
Alicense-qualityDmaintenanceEnables AI agents to interact with the Nexus blockchain, providing tools for querying blockchain data, smart contract calls, transaction submission, and event monitoring.Last updated7MIT
Related MCP Connectors
Provide AI agents and automation tools with contextual access to blockchain data including balanceβ¦
AI Reasoning Cache & Consensus Layer with 11 MCP tools via Streamable HTTP.
TPermanent memory layer for AI agents. Mint moments to the Polygon blockchain via MCP.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/yamo-protocol/yamo-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server