MCP Object Specification
Overview
Full JSON Schema (Draft v0.1)
{
"version": "0.1",
"subject": "did:pkh:eth:0x123abc...",
"timestamp": 1728323900,
"permissions": ["read.dao", "read.tokens", "read.nft"],
"context": {
"wallet": {
"address": "0x123abc...",
"chain_id": 1,
"token_balances": [
{
"symbol": "DAI",
"amount": "124.35",
"contract": "0x6b175474e89094c44da98b954eedeac495271d0f"
}
],
"nfts": [
{
"collection": "Zorb",
"token_id": "1234",
"contract": "0xabcd..."
}
]
},
"dao": {
"memberships": [
{
"dao_name": "MetaDAO",
"member_since": "2023-04-15",
"roles": ["voter", "delegate"],
"voting_power": 342
}
],
"recent_votes": [
{
"proposal_id": "proposal_42",
"vote": "yes",
"timestamp": 1723122900
}
]
},
"profile": {
"ens": "user.eth",
"lens": "@user.lens",
"farcaster": "fid:12345"
}
},
"proof": {
"type": "EIP712Signature",
"signer": "0x123abc...",
"signature": "0xdeadbeef...",
"domain": {
"name": "MCP3 Gateway",
"version": "1.0",
"chainId": 1
}
}
}Field Descriptions
Field
Type
Description
Proof Strategies
Context Mutability
Context Field
Mutable?
Source
Best Practices
Example Usage
Future Extensions
🛠️ Context API Reference
🧵 Base URL
🔄 Endpoints
GET /context
Param
Type
Required
Description
POST /verify
POST /sign
GET /metadata
🔐 Authentication
⚠️ Error Codes
Code
Meaning
🚀 SDK Support
🧩 GraphQL Preview (Optional)
Last updated