Zora Coins MCP Server
Supports IPFS URIs for coin metadata storage when creating and updating creator coins on the Zora platform
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., "@Zora Coins MCP Servershow me the top trending coins on Zora right now"
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.
šØ Zora Coins MCP Server
A production-ready Model Context Protocol (MCP) server that provides seamless access to the Zora Coins ecosystem. Query coin data, explore markets, manage profiles, and execute trades on Base mainnet through a simple, standardized interface.
⨠Features
š Query Tools (No wallet required)
Market Exploration: Discover trending coins, top gainers, highest volume, and newest launches
Coin Analytics: Get detailed market data, holder information, and trading history
Social Features: Access comments, creator profiles, and community engagement
Real-time Data: Live pricing, market caps, and trading volumes
ā” Write Operations (Wallet required)
Create Coins: Deploy new creator coins with custom metadata
Trade: Buy/sell coins with ETH or ERC20 tokens
Manage: Update coin metadata and payout recipients
š ļø Developer Experience
Type Safe: Built with TypeScript and Zod validation
Error Handling: Comprehensive error messages and graceful failures
Pagination: Support for large datasets with cursor-based pagination
Flexible: Works with any MCP-compatible client (Claude Desktop, Cursor, etc.)
Related MCP server: Base MCP Server
š Quick Start
Installation Options
Option 1: NPX (Recommended - No Installation Required)
# Run directly with npx - always uses latest version
npx zora-coins-mcpOption 2: NPX with Full Package Name
# Alternative NPX syntax
npx zora-coins-mcp-serverOption 3: Global Installation
# Install globally for persistent use
npm install -g zora-coins-mcp-server
# Then run with either command
zora-coins-mcp
# or
zora-coins-mcp-serverBasic Setup
Create environment file:
cp .env.example .envConfigure environment variables:
# Required for enhanced features (get from https://zora.co)
ZORA_API_KEY=your_api_key_here
# Optional: Custom RPC endpoint
BASE_RPC_URL=https://mainnet.base.org
# Required for write operations only
PRIVATE_KEY=0xYourPrivateKeyHereTest the server:
zora-coins-mcpš§ MCP Client Integration
Claude Desktop
Add to your ~/.claude/mcp.json:
Option 1: Using NPX (Recommended)
{
"mcpServers": {
"zora-coins": {
"command": "npx",
"args": ["zora-coins-mcp"],
"env": {
"ZORA_API_KEY": "your_api_key_here",
"BASE_RPC_URL": "https://mainnet.base.org",
"PRIVATE_KEY": "0xYourPrivateKeyHere"
}
}
}
}Option 2: Using Global Installation
{
"mcpServers": {
"zora-coins": {
"command": "zora-coins-mcp",
"env": {
"ZORA_API_KEY": "your_api_key_here",
"BASE_RPC_URL": "https://mainnet.base.org",
"PRIVATE_KEY": "0xYourPrivateKeyHere"
}
}
}
}Cursor IDE
Configure in your MCP settings:
Option 1: Using NPX (Recommended)
{
"name": "zora-coins",
"command": ["npx", "zora-coins-mcp"],
"env": {
"ZORA_API_KEY": "your_api_key_here"
}
}Option 2: Using Global Installation
{
"name": "zora-coins",
"command": ["zora-coins-mcp"],
"env": {
"ZORA_API_KEY": "your_api_key_here"
}
}Custom Integration
# Run as stdio server with npx
npx zora-coins-mcp
# Or if globally installed
zora-coins-mcp
# Development mode with live reload
npm run devš Available Tools
š„ Health Check
zora_health- Server diagnostics and configuration status
š Market Exploration
zora_explore_new- Recently created coinszora_explore_top_gainers- Biggest 24h gainerszora_explore_top_volume_24h- Highest trading volumezora_explore_most_valuable- Highest market capzora_explore_last_traded- Recently traded coins
š° Coin Data
zora_get_coin- Comprehensive coin informationzora_get_coins- Batch fetch multiple coinszora_get_coin_holders- Token holder list with balanceszora_get_coin_swaps- Recent trading activityzora_get_coin_comments- Community comments
š¤ Profile Management
zora_get_profile- User profile informationzora_get_profile_coins- Coins created by userzora_get_profile_balances- User's coin portfolio
ā” Trading & Creation (Requires Wallet)
zora_create_coin- Deploy new creator coinzora_trade_coin- Buy/sell coinszora_update_coin_uri- Update metadatazora_update_payout_recipient- Change earnings recipient
š” Usage Examples
Explore Trending Coins
// Get top 5 newest coins
await mcp.callTool("zora_explore_new", { count: 5 });
// Find biggest gainers
await mcp.callTool("zora_explore_top_gainers", { count: 3 });Analyze a Specific Coin
// Get detailed coin information
await mcp.callTool("zora_get_coin", {
address: "0xd769d56f479e9e72a77bb1523e866a33098feec5"
});
// Check recent trading activity
await mcp.callTool("zora_get_coin_swaps", {
address: "0xd769d56f479e9e72a77bb1523e866a33098feec5",
first: 10
});Profile Analysis
// Get profile information
await mcp.callTool("zora_get_profile", {
identifier: "base"
});
// See coins created by user
await mcp.callTool("zora_get_profile_coins", {
identifier: "jacob",
count: 5
});Trading Operations
// Buy a coin with ETH
await mcp.callTool("zora_trade_coin", {
sellType: "eth",
buyType: "erc20",
buyAddress: "0x...",
amount: "0.001",
slippage: 0.05
});
// Create a new coin
await mcp.callTool("zora_create_coin", {
name: "My Creator Coin",
symbol: "MCC",
uri: "ipfs://...",
payoutRecipient: "0x..."
});āļø Configuration
Environment Variables
Variable | Required | Description |
| Recommended | API key from zora.co for enhanced features |
| Optional | Base mainnet RPC endpoint (defaults to public RPC) |
| Optional | Chain ID (defaults to 8453 for Base) |
| Write ops only | 0x-prefixed private key for transactions |
| Optional | Address for referral attribution |
Getting API Keys
Visit zora.co
Go to Developer Settings
Generate a new API key
Add to your
.envfile
Note: The server works without an API key but may have rate limits and reduced functionality.
š Security Best Practices
Private Key Safety
Never commit private keys to version control
Use environment variables or secure key management
Consider using a dedicated wallet for trading operations
Test with small amounts first
API Key Protection
Store API keys securely
Rotate keys regularly
Monitor usage in Zora dashboard
Use different keys for development/production
š ļø Development
Local Development
# Clone the repository
git clone https://github.com/your-username/zora-coins-mcp-server.git
cd zora-coins-mcp-server
# Install dependencies
npm install
# Copy environment file
cp .env.example .env
# Start development server
npm run devBuilding
# Build TypeScript
npm run build
# Clean build directory
npm run clean
# Build and start
npm run build && npm startProject Structure
zora-coins-mcp-server/
āāā src/
ā āāā index.ts # Main server implementation
āāā dist/ # Compiled JavaScript
āāā .env.example # Environment template
āāā package.json # Package configuration
āāā tsconfig.json # TypeScript configuration
āāā README.md # This fileš Supported Networks
Base Mainnet (8453) - Full support for all operations
Other networks may have limited functionality
š Resources
Documentation
Zora Coins SDK - Official SDK documentation
Model Context Protocol - MCP specification
Base Network - Layer 2 blockchain documentation
Community
Zora Discord - Community support
Base Discord - Network support
š¤ Contributing
We welcome contributions! Please see our Contributing Guide for details.
Development Workflow
Fork the repository
Create a feature branch
Make your changes
Add tests if applicable
Submit a pull request
š License
This project is licensed under the MIT License - see the LICENSE file for details.
ā ļø Disclaimer
This software is provided "as is" without warranty. Cryptocurrency trading involves risk. Always:
Test with small amounts first
Understand the risks involved
Never invest more than you can afford to lose
Do your own research (DYOR)
The Zora Coins on this platform are created for artistic and cultural purposes as collectibles, not as investments or financial instruments.
Built with ā¤ļø for the Zora ecosystem
Available Tools
19 toolszora_create_coinCreate a new coinB
Deploy a new Zora coin. Requires PRIVATE_KEY; only Base mainnet is supported currently.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| symbol | Yes | ||
| uri | Yes | ||
| payoutRecipient | Yes | ||
| platformReferrer | No | ||
| chainId | No | ||
| currency | No | ||
| gasMultiplier | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the need for a PRIVATE_KEY (implying authentication) and network restriction to Base mainnet, which adds useful context. However, it lacks details on critical behaviors: whether this is a write operation (implied by 'Deploy'), potential costs (gas fees), rate limits, error conditions, or what happens upon success (e.g., returns a transaction hash or coin address).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise (two sentences) and front-loaded with the core purpose. Every sentence adds value: the first states the action, and the second provides critical constraints. There is no wasted text or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (a deployment tool with 8 parameters, no annotations, and no output schema), the description is incomplete. It covers the basic purpose and some constraints but misses essential details: parameter explanations, behavioral traits (e.g., mutability, costs), and output expectations. For a tool that likely involves blockchain transactions, this leaves significant gaps for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for all 8 parameters. It provides no information about any parameters (name, symbol, uri, payoutRecipient, platformReferrer, chainId, currency, gasMultiplier), their purposes, formats, or relationships. The description fails to add meaning beyond the bare schema, leaving parameters undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Deploy a new Zora coin') and resource ('Zora coin'), distinguishing it from sibling tools like zora_get_coin (read) or zora_trade_coin (trade). It goes beyond the title's generic 'Create a new coin' by specifying the deployment context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides some context with 'Requires PRIVATE_KEY; only Base mainnet is supported currently', which implies prerequisites and network constraints. However, it doesn't explicitly state when to use this tool versus alternatives like zora_update_coin_uri or zora_update_payout_recipient, nor does it mention exclusions or complementary tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zora_explore_last_tradedLast tradedC
Coins most recently traded.
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | ||
| after | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It mentions 'most recently traded' but doesn't disclose behavioral traits such as data freshness (real-time vs. delayed), pagination (implied by 'after' parameter but not explained), rate limits, authentication needs, or error handling. The description is minimal and lacks operational context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise at three words, front-loaded with the core purpose. There's no wasted language or redundancy, making it efficient for quick scanning, though this brevity contributes to gaps in other dimensions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, 0% schema coverage, no output schema, and 2 parameters, the description is incomplete. It doesn't explain what data is returned (e.g., coin details, timestamps), how results are ordered, or any limitations. For a tool with parameters and exploration context, more detail is needed to be fully usable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate but adds no parameter information. It doesn't explain what 'count' (number of coins to return) or 'after' (cursor for pagination) mean, their typical values, or how they affect results. With 2 parameters and no schema descriptions, this is a significant gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Coins most recently traded' states the purpose (listing recently traded coins) but is vague about scope and mechanism. It doesn't specify if this is a global list, user-specific, or filtered by any criteria beyond recency. Compared to siblings like 'zora_explore_most_valuable' or 'zora_explore_top_volume_24h', the distinction is implied but not explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. With siblings like 'zora_explore_new' (new coins) and 'zora_explore_top_gainers' (top performers), the description doesn't clarify if this tool is for tracking market activity, discovery, or another use case. There's no mention of prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zora_explore_last_traded_uniqueLast traded (unique traders)C
Coins most recently traded by unique traders.
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | ||
| after | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It only states what data is returned (coins recently traded by unique traders) without describing how results are ordered, whether there's pagination, what the response format looks like, or any rate limits. For a data retrieval tool with zero annotation coverage, this leaves significant behavioral questions unanswered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise - a single sentence that directly states the tool's purpose. There's no wasted language, repetition, or unnecessary elaboration. It's front-loaded with the core functionality and doesn't bury important information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no annotations, no output schema, and 0% parameter documentation coverage, the description is insufficiently complete. While concise, it doesn't provide enough context for an AI agent to understand how to effectively use this tool, what to expect in return, or how parameters affect results. A simple data retrieval tool needs more behavioral and contextual information when structured fields are sparse.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds no parameter information beyond what's in the schema. With 0% schema description coverage, both 'count' and 'after' parameters are undocumented in both schema and description. The baseline is 3 because the schema provides the structure (two optional parameters with types and constraints), but the description fails to compensate for the coverage gap by explaining what these parameters mean or how they affect results.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Coins most recently traded by unique traders' specifies both the resource (coins) and the filtering criteria (recently traded by unique traders). It distinguishes from sibling 'zora_explore_last_traded' by adding 'unique traders' qualification, though it doesn't explicitly contrast with other explore tools like 'zora_explore_new' or 'zora_explore_top_gainers'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when this specific 'unique traders' view is preferable to the regular 'last_traded' or other exploration tools like 'most_valuable' or 'new'. There's no indication of prerequisites, timing considerations, or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zora_explore_most_valuableMost valuableC
Coins with highest market capitalization.
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | ||
| after | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool retrieves coins by market capitalization but lacks details on permissions, rate limits, pagination (implied by 'after' parameter), or response format. For a tool with 2 parameters and no annotations, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's front-loaded and appropriately sized for its content, with zero waste or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (2 parameters, no annotations, no output schema), the description is incomplete. It covers the basic purpose but lacks details on behavior, parameter usage, and output, leaving significant gaps for an AI agent to understand how to invoke it correctly in context with siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for undocumented parameters. It mentions 'coins with highest market capitalization', which hints at the 'count' parameter for limiting results, but doesn't explain 'after' (likely for pagination) or provide format details. With 2 parameters and no schema descriptions, the description adds minimal semantic value beyond basic inference.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: retrieving coins with the highest market capitalization. It uses specific terms ('coins', 'highest market capitalization') that distinguish it from siblings like 'zora_explore_top_gainers' or 'zora_explore_top_volume_24h', though it doesn't explicitly differentiate them. The verb 'explore' in the name suggests a read operation, which aligns with the description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'zora_explore_top_gainers' or 'zora_explore_top_volume_24h', nor does it specify contexts or exclusions. Usage is implied by the term 'most valuable', but explicit alternatives or prerequisites are absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zora_explore_newNew coinsC
Most recently created coins.
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | ||
| after | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It implies a read-only operation (exploring coins) but doesn't disclose behavioral traits such as pagination (via 'after' parameter), rate limits, authentication needs, or data freshness. This leaves gaps in understanding how the tool behaves beyond its basic purpose.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with a single phrase, 'Most recently created coins,' which is front-loaded and wastes no words. It efficiently conveys the core purpose without unnecessary elaboration, making it easy to scan and understand quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (2 parameters, no output schema, no annotations), the description is incomplete. It lacks details on parameter usage, behavioral constraints, and output format, leaving significant gaps for an AI agent to invoke the tool correctly without additional context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 2 parameters and 0% schema description coverage, the schema provides no parameter details. The description adds no semantic information about 'count' (number of coins to retrieve) or 'after' (pagination cursor), failing to compensate for the lack of schema documentation, which is insufficient for effective use.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Most recently created coins' clearly indicates the tool retrieves recently created coins, which is a specific purpose. However, it doesn't explicitly state the action verb (e.g., 'retrieve' or 'list') or differentiate from siblings like 'zora_get_coins' or 'zora_explore_last_traded', making it somewhat vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. With siblings like 'zora_get_coins' (general retrieval) and 'zora_explore_last_traded' (trading-focused), the description lacks context for selection, offering only a basic function without exclusions or comparisons.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zora_explore_top_gainersTop gainers (24h)C
Coins with highest market cap delta over last 24h.
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | ||
| after | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions the tool's function but doesn't disclose any behavioral traits such as rate limits, authentication needs, data freshness, or whether it's a read-only operation. For a tool with zero annotation coverage, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without any unnecessary words. It is appropriately sized and front-loaded, making it easy to understand at a glance, with zero waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (exploring top gainers with 2 parameters), no annotations, no output schema, and 0% schema description coverage, the description is incomplete. It doesn't cover parameter usage, behavioral aspects, or output details, leaving significant gaps for the agent to understand and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds no meaning beyond the input schema. With 0% schema description coverage and 2 parameters ('count' and 'after'), the schema lacks descriptions for both parameters. The description doesn't explain what these parameters do, such as 'count' for limiting results or 'after' for pagination, failing to compensate for the low schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: it identifies coins with the highest market cap delta over the last 24 hours. It uses specific terms like 'coins', 'highest market cap delta', and 'last 24h', making the verb+resource explicit. However, it doesn't distinguish itself from sibling tools like 'zora_explore_most_valuable' or 'zora_explore_top_volume_24h', which might have overlapping or similar purposes, so it lacks sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention any context, prerequisites, or exclusions, and it doesn't reference sibling tools like 'zora_explore_most_valuable' or 'zora_explore_top_volume_24h' that might serve similar exploration purposes. This leaves the agent without clear usage instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zora_explore_top_volume_24hTop 24h volumeC
Coins with highest trading volume in last 24 hours.
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | ||
| after | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool explores top volume coins but doesn't cover critical aspects like whether it's read-only, how it handles pagination (implied by 'after' parameter), rate limits, authentication needs, or what the output format looks like. This is a significant gap for a tool with parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose. There's no wasted verbiage, and it directly addresses what the tool does without unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (2 parameters, 0% schema coverage, no annotations, no output schema), the description is incomplete. It doesn't explain parameter usage, output format, or behavioral traits like pagination or safety. For a data retrieval tool with parameters, this leaves the agent under-informed about how to invoke it effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for undocumented parameters. It mentions 'coins with highest trading volume' but doesn't explain the 'count' (number of results) or 'after' (pagination cursor) parameters at all. The description adds no meaningful semantics beyond what's inferable from the tool name.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: identifying coins with the highest trading volume in the last 24 hours. It specifies the verb ('explore') and resource ('coins'), but doesn't explicitly differentiate from siblings like 'zora_explore_top_gainers' or 'zora_explore_most_valuable' beyond the volume focus.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention siblings like 'zora_explore_top_gainers' (for price performance) or 'zora_explore_most_valuable' (for market cap), leaving the agent to infer usage context solely from the tool name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zora_get_coinGet coin detailsC
Fetch metadata, market data & creator info for a coin.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | ||
| chainId | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'Fetch' implying a read operation, but lacks details on permissions, rate limits, error handling, or response format. This is inadequate for a tool with potential complexity in data retrieval.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core action and data types without unnecessary words. Every part earns its place, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, 0% schema coverage, and no output schema, the description is incomplete. It doesn't address behavioral traits, parameter meanings, or return values, leaving significant gaps for the agent to operate effectively with this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for undocumented parameters. It adds no meaning beyond the schema, failing to explain what 'address' and 'chainId' represent (e.g., cryptocurrency address and blockchain identifier) or their impact on the fetch operation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Fetch') and the resource ('coin') with specific data types ('metadata, market data & creator info'), making the purpose evident. However, it doesn't explicitly differentiate from siblings like 'zora_get_coins' (plural) or 'zora_get_coin_holders', which might cause ambiguity in tool selection.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With many sibling tools (e.g., 'zora_get_coins', 'zora_get_coin_holders'), there's no indication of context, prerequisites, or exclusions, leaving the agent to infer usage from tool names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zora_get_coin_commentsGet coin commentsC
Fetch comments associated with a coin (paginated).
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | ||
| chainId | No | ||
| after | No | ||
| count | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions pagination, which is useful, but fails to cover critical aspects like rate limits, authentication requirements, error handling, or the format of returned comments (e.g., structured data vs. raw text). This leaves significant gaps for a tool that likely interacts with external data.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose ('Fetch comments associated with a coin') and adds a key behavioral note ('paginated') without any wasted words. Every element earns its place, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (a data-fetching tool with 4 parameters, no annotations, and no output schema), the description is insufficient. It lacks details on return values, error conditions, authentication, and parameter usage, leaving the agent under-informed for reliable tool invocation in a real-world context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 0%, so the description must compensate, but it only implies parameters indirectly (e.g., 'coin' suggests 'address', 'paginated' hints at 'after' and 'count'). It doesn't explain what 'address' or 'chainId' represent, or how 'after' and 'count' work in pagination. This adds minimal value beyond the bare schema, meeting the baseline for partial compensation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Fetch') and resource ('comments associated with a coin'), distinguishing it from siblings like zora_get_coin (which gets coin details) or zora_get_coin_holders (which gets holders). However, it doesn't specify the exact scope (e.g., all comments vs. recent ones) beyond pagination, keeping it from a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. For example, it doesn't clarify if this is for retrieving all comments or if other tools like zora_get_coin might include comments, leaving the agent to guess based on context with siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zora_get_coin_holdersGet coin holdersC
List holders of a coin with balances and profile data.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | ||
| chainId | No | ||
| after | No | ||
| count | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It implies a read-only operation ('List'), but doesn't disclose behavioral traits like pagination (suggested by 'after' and 'count' parameters), rate limits, authentication needs, or error handling. This is a significant gap for a tool with multiple parameters and no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose without unnecessary words. Every part ('List holders of a coin with balances and profile data') contributes directly to understanding the tool's function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (4 parameters, 0% schema coverage, no annotations, no output schema), the description is incomplete. It doesn't explain the return format, pagination behavior, or error cases, leaving the agent with insufficient information for reliable invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for undocumented parameters. It mentions 'coin' but doesn't explain the 'address' parameter or others like 'chainId', 'after', and 'count'. The description adds minimal meaning beyond the schema, failing to clarify parameter roles or usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List holders') and resource ('of a coin') with specific output details ('balances and profile data'), making the purpose evident. However, it doesn't explicitly differentiate from sibling tools like 'zora_get_profile_balances' or 'zora_get_profile_coins', which might also involve holder or balance data, so it falls short of a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, such as needing a valid coin address, or compare it to siblings like 'zora_get_coin' or 'zora_get_profile_balances', leaving the agent without context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zora_get_coinsGet multiple coinsC
Batch fetch coins by address and chainId.
| Name | Required | Description | Default |
|---|---|---|---|
| coins | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It only states the basic action ('Batch fetch') without disclosing behavioral traits like rate limits, authentication needs, pagination, error handling, or what 'coins' represent (e.g., tokens, NFTs). This leaves critical operational details unspecified for a tool with potential complexity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero waste. It front-loads the key action ('Batch fetch') and resource, making it easy to scan. Every word contributes directly to the tool's purpose without redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and low schema coverage, the description is incomplete. It lacks behavioral context (e.g., safety, performance), detailed parameter meanings, and output expectations. For a batch operation with nested parameters, this minimal description fails to provide adequate guidance for an agent to use it effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It mentions parameters 'address and chainId', which partially maps to the nested 'collectionAddress' and 'chainId' in the 'coins' array. However, it doesn't explain the array structure ('coins' as a batch), the meaning of 'collectionAddress', default values, or required fields, leaving significant gaps beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Batch fetch') and resource ('coins'), specifying it's by 'address and chainId'. It distinguishes from siblings like 'zora_get_coin' (singular) and 'zora_get_profile_coins' (profile-specific), but doesn't explicitly contrast with all exploration tools. The purpose is specific but could be more differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives is provided. It doesn't mention when batch fetching is preferable to single coin retrieval ('zora_get_coin') or profile-based fetching ('zora_get_profile_coins'), nor does it specify prerequisites or exclusions. The description implies usage context but offers no explicit alternatives or constraints.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zora_get_coin_swapsGet coin swapsC
Fetch recent buy/sell swap activity for a coin.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | ||
| chainId | No | ||
| after | No | ||
| first | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states 'Fetch recent buy/sell swap activity', implying a read-only operation, but doesn't cover critical aspects like rate limits, authentication needs, data freshness, or error handling, which are essential for safe and effective use.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without any fluff. It's appropriately sized and front-loaded, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a 4-parameter tool with no annotations, 0% schema coverage, and no output schema, the description is insufficient. It lacks details on parameter usage, behavioral traits, and expected outputs, making it incomplete for effective agent operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the schema provides no parameter details. The description mentions 'coin' but doesn't explain how parameters like 'address', 'chainId', 'after', or 'first' relate to fetching swap activity, leaving their meaning and usage unclear.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Fetch') and resource ('recent buy/sell swap activity for a coin'), making the purpose understandable. However, it doesn't explicitly differentiate from sibling tools like 'zora_get_coin' or 'zora_trade_coin', which might also involve coin-related operations, so it doesn't reach the highest score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'zora_get_coin' for general coin info or 'zora_explore_last_traded' for similar activity, leaving the agent without context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zora_get_profileGet profileC
Fetch profile for a wallet or @handle.
| Name | Required | Description | Default |
|---|---|---|---|
| identifier | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states it's a fetch operation (implying read-only), but doesn't cover critical aspects like authentication requirements, rate limits, error handling, or what the profile data includes (e.g., basic info vs. detailed metadata). This is inadequate for a tool with no annotation support.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose without unnecessary words. Every part ('Fetch profile for a wallet or @handle') directly contributes to understanding, making it appropriately sized and well-structured for quick comprehension.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations, no output schema, and low schema description coverage (0%), the description is insufficiently complete. It doesn't explain what a 'profile' entails, potential return values, or behavioral constraints, leaving the agent with significant uncertainty about tool behavior and outcomes in this context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds minimal semantics by indicating the 'identifier' parameter can be a 'wallet or @handle', which provides context beyond the schema's generic string type (0% coverage). However, it doesn't specify format details (e.g., wallet address structure, handle syntax) or examples, leaving gaps in parameter understanding despite the low schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Fetch') and resource ('profile') with specific targets ('wallet or @handle'), making the purpose immediately understandable. However, it doesn't explicitly distinguish this from sibling tools like 'zora_get_profile_balances' or 'zora_get_profile_coins', which also fetch profile-related data but with different scopes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description doesn't mention prerequisites, context for usage, or differentiate it from sibling tools that also involve profiles (e.g., 'zora_get_profile_balances' for balances or 'zora_get_profile_coins' for coins), leaving the agent to infer usage based on tool names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zora_get_profile_balancesGet profile balancesC
List coin balances for a wallet or handle.
| Name | Required | Description | Default |
|---|---|---|---|
| identifier | Yes | ||
| count | No | ||
| after | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'List coin balances' which implies a read-only operation, but doesn't specify if it's paginated (hinted by 'count' and 'after' parameters), rate-limited, requires authentication, or what the output format looks like. For a tool with three parameters and no output schema, this leaves significant gaps in understanding how it behaves beyond basic functionality.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without any fluff. It's front-loaded with the core action and resource, making it easy to parse quickly. Every word earns its place, and there's no wasted verbiage or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has three parameters with 0% schema coverage, no annotations, and no output schema, the description is insufficiently complete. It doesn't explain the parameters, behavioral details like pagination or error handling, or what the output contains. For a data retrieval tool with multiple inputs, this leaves too much undefined for reliable agent use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, meaning none of the parameters are documented in the schema. The description only vaguely references 'wallet or handle' which might relate to 'identifier', but doesn't explain what 'identifier' is, what 'count' controls (likely pagination limit), or what 'after' does (likely cursor for pagination). It fails to compensate for the lack of schema documentation, leaving parameters largely unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List') and resource ('coin balances for a wallet or handle'), making the purpose understandable. It distinguishes itself from siblings like 'zora_get_profile' or 'zora_get_profile_coins' by focusing specifically on balances rather than general profile data or owned coins. However, it doesn't explicitly differentiate from other balance-related tools if any existed, keeping it at a 4 rather than a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With siblings like 'zora_get_profile' and 'zora_get_profile_coins', there's no indication of when to prefer this tool for balances over those for broader profile data or coin lists. It lacks any context about prerequisites, constraints, or typical use cases, leaving the agent to infer usage based on the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zora_get_profile_coinsGet profile-created coinsC
List coins created by a profile.
| Name | Required | Description | Default |
|---|---|---|---|
| identifier | Yes | ||
| count | No | ||
| after | No | ||
| chainIds | No | ||
| platformReferrerAddress | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states a read operation ('List'), implying it's likely safe and non-destructive, but doesn't disclose any behavioral traits such as pagination (hinted by 'after' parameter), rate limits, authentication needs, or what the output looks like. This leaves significant gaps for an agent to understand how to interact with it effectively.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no wasted words. It's front-loaded with the core purpose, making it easy to scan and understand quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 5 parameters with 0% schema coverage, no annotations, and no output schema, the description is incomplete. It doesn't address parameter meanings, behavioral aspects, or output format, leaving the agent with insufficient context to use the tool correctly beyond a basic understanding of its purpose.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate but doesn't mention any parameters. It doesn't explain what 'identifier' refers to (e.g., profile ID or address), what 'count' limits, the purpose of 'after' (likely pagination cursor), 'chainIds' filtering, or 'platformReferrerAddress'. This leaves all 5 parameters undocumented beyond their schema types.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List') and resource ('coins created by a profile'), making the purpose understandable. However, it doesn't differentiate from sibling tools like 'zora_get_coins' or 'zora_get_coin', which might also list coins but with different scopes or filters.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With siblings like 'zora_get_coins' (likely general coin listing) and 'zora_get_coin' (likely single coin details), there's no indication of the specific context or prerequisites for using this profile-focused tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zora_healthZora Coins server healthB
Returns server and environment diagnostics (API key present, wallet, RPC, chain).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It states what diagnostics are returned but doesn't describe response format, error conditions, rate limits, authentication needs, or whether this is a read-only operation. For a health check tool with zero annotation coverage, this leaves significant behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's function without unnecessary words. It's appropriately sized for a simple health check tool and front-loads the core purpose immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (0 parameters, no output schema, no annotations), the description provides adequate basic purpose information. However, for a health diagnostic tool, it should ideally describe what the return values mean or what constitutes healthy vs. unhealthy states, especially with no output schema to document this.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters with 100% schema description coverage, so the schema fully documents the parameter situation. The description appropriately doesn't discuss parameters, maintaining focus on the tool's purpose. Baseline for 0 parameters with full schema coverage is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Returns') and resource ('server and environment diagnostics'), listing specific components checked (API key, wallet, RPC, chain). It distinguishes itself from sibling tools by focusing on system health rather than coin operations, though it doesn't explicitly name alternatives for similar diagnostic functions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context (checking server/environment status) but doesn't explicitly state when to use this tool versus alternatives. No guidance on prerequisites, timing, or exclusions is provided, leaving usage context inferred rather than clearly defined.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zora_trade_coinTrade coinB
Swap ETH or ERC20 for a coin (or back). Uses permit2 for ERC20 where supported. Requires PRIVATE_KEY (EOA).
| Name | Required | Description | Default |
|---|---|---|---|
| sellType | Yes | ||
| sellAddress | No | ||
| sellDecimals | No | ||
| buyType | Yes | ||
| buyAddress | No | ||
| amount | Yes | ||
| slippage | No | ||
| recipient | No | ||
| sender | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It adds some context: it mentions 'Uses permit2 for ERC20 where supported' (a technical detail) and 'Requires PRIVATE_KEY (EOA)' (an authentication requirement). However, it lacks critical behavioral traits like whether this is a read-only or destructive operation, potential rate limits, error handling, or what the tool returns, which are significant gaps for a trading tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise and front-loaded, consisting of just two sentences that directly convey key information without any wasted words. Every sentence earns its place by stating the core action and important constraints.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a trading tool with 9 parameters, no annotations, and no output schema, the description is incomplete. It misses essential details like the tool's behavioral impact (e.g., whether it executes trades destructively), expected return values, error conditions, and comprehensive parameter explanations, making it inadequate for safe and effective use by an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 0%, meaning none of the 9 parameters are documented in the schema. The description adds minimal parameter semantics: it implies parameters for 'ETH or ERC20' (relating to sellType/buyType) and 'swap' (relating to amount), but doesn't explain the purpose or usage of most parameters like sellAddress, sellDecimals, slippage, recipient, or sender. This insufficiently compensates for the lack of schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Swap ETH or ERC20 for a coin or back') and identifies the resource (coins), making the purpose specific. However, it doesn't explicitly differentiate from sibling tools like 'zora_get_coin_swaps' or 'zora_explore_last_traded', which might involve similar trading concepts, so it doesn't reach the highest score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It mentions a prerequisite ('Requires PRIVATE_KEY (EOA)'), but doesn't explain when to choose this over other trading-related tools or what scenarios it's best suited for, leaving the agent without clear usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zora_update_coin_uriUpdate coin metadata URIB
Update the token metadata URI for an existing coin. Requires owner wallet.
| Name | Required | Description | Default |
|---|---|---|---|
| coin | Yes | ||
| newURI | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions a requirement ('Requires owner wallet'), which adds some behavioral context about authentication. However, it doesn't disclose other critical traits such as whether the update is reversible, potential side effects, rate limits, or what happens on success/failure. For a mutation tool with zero annotation coverage, this leaves significant gaps in understanding its behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two sentences that directly state the purpose and a key requirement. It is front-loaded with the main action and wastes no words, making it easy to parse quickly. Every sentence earns its place by providing essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a mutation tool with no annotations, 0% schema coverage, and no output schema, the description is incomplete. It lacks details on parameters, behavioral outcomes, error handling, and return values. While it covers the basic purpose and a prerequisite, it doesn't provide enough context for safe and effective use, especially compared to siblings like 'zora_update_payout_recipient' which might have different requirements.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It implies that 'coin' refers to an existing coin and 'newURI' is the updated metadata URI, but it doesn't explain the format, constraints, or examples for these parameters. The description adds minimal meaning beyond the schema's basic types, resulting in a baseline score due to the coverage gap not being fully addressed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Update'), the resource ('token metadata URI'), and the target ('for an existing coin'). It distinguishes from siblings like 'zora_create_coin' (creation vs. update) and 'zora_get_coin' (read vs. write), though it doesn't explicitly mention these distinctions. The purpose is specific but could be more precise about what 'coin' refers to in this context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides some guidance by stating 'Requires owner wallet,' which implies a prerequisite for usage. However, it doesn't specify when to use this tool versus alternatives like 'zora_update_payout_recipient' or other update-related tools, nor does it mention any exclusions or edge cases. The guidance is implied but lacks explicit context for decision-making.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
zora_update_payout_recipientUpdate payout recipientB
Change the payout recipient address (creator earnings). Requires owner wallet.
| Name | Required | Description | Default |
|---|---|---|---|
| coin | Yes | ||
| newPayoutRecipient | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions a requirement ('Requires owner wallet') which adds useful context about permissions, but it doesn't cover other critical aspects like whether this is a destructive/mutative operation (implied by 'Change'), rate limits, error conditions, or what happens to existing payouts. For a mutation tool with zero annotation coverage, this leaves significant gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two sentences that are front-loaded: the first states the purpose, and the second adds a key constraint. Every word earns its place with no redundancy or fluff, making it efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (a mutation operation with 2 parameters), lack of annotations, and no output schema, the description is incomplete. It covers the basic purpose and a permission requirement but misses details on parameter usage, behavioral traits (e.g., idempotency, side effects), and expected outcomes. For a tool that modifies financial payouts, this is inadequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for undocumented parameters. It mentions 'payout recipient address' which relates to 'newPayoutRecipient', but doesn't explain 'coin' at all (e.g., what coin identifier to use). The description adds minimal meaning beyond the schema, failing to fully address the coverage gap for both parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Change') and resource ('payout recipient address'), specifying it's for 'creator earnings'. It distinguishes from siblings like 'zora_update_coin_uri' by focusing on payout addresses rather than coin metadata. However, it doesn't explicitly differentiate from all siblings (e.g., 'zora_trade_coin' is also a write operation).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides some context with 'Requires owner wallet', implying usage is restricted to owners. However, it doesn't specify when to use this versus alternatives (e.g., no guidance on whether this is for initial setup or updates, or if there are other tools for managing payouts). The context is implied but lacks explicit alternatives or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
19 tool updates
- First observed
zora_create_coin - First observed
zora_explore_last_traded - First observed
zora_explore_last_traded_unique - First observed
zora_explore_most_valuable - First observed
zora_explore_new - First observed
zora_explore_top_gainers - First observed
zora_explore_top_volume_24h - First observed
zora_get_coin - First observed
zora_get_coin_comments - First observed
zora_get_coin_holders - First observed
zora_get_coin_swaps - First observed
zora_get_coins - First observed
zora_get_profile - First observed
zora_get_profile_balances - First observed
zora_get_profile_coins - First observed
zora_health - First observed
zora_trade_coin - First observed
zora_update_coin_uri - First observed
zora_update_payout_recipient
TDQS
Most tools have distinct purposes, but there is some overlap between exploration tools (e.g., zora_explore_last_traded and zora_explore_last_traded_unique) that could cause minor confusion. The core functions like create, get, trade, and update are clearly differentiated.
All tool names follow a consistent snake_case pattern with a clear prefix (zora_) and verb_noun structure (e.g., zora_create_coin, zora_get_coin, zora_update_coin_uri). This predictability aids in agent selection and understanding.
With 19 tools, the count is slightly high but reasonable for a comprehensive Zora coin management server. It covers exploration, metadata, trading, and updates, though it might feel heavy for simpler use cases.
The toolset provides complete coverage for the Zora coin domain, including creation, exploration, metadata retrieval, trading, updates, and profile management. There are no obvious gaps, supporting full lifecycle operations from deployment to interaction.
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 Connectors
32 paid x402 endpoints for crypto, Zora & on-chain analysis. 10 MCP tools. USDC on Base.
Query real-time blockchain token data across EVM and Solana networks. Access token balances, transfers, prices, holders, NFT ownership, DEX swaps, and liquidity pools. Supports Ethereum, Base, Arbitrum, BSC, Polygon, Solana, and more.
Read-only on-chain intelligence for AI agents on Base: balances, tokens, gas, tx status.
Read-only on-chain intelligence for AI agents on Base: balances, tokens, gas, tx status.
51
Related MCP Servers
- AlicenseNot gradedqualityNot gradedmaintenanceEnables AI applications to interact with the Base Network blockchain and Coinbase API for onchain operations including wallet management, fund transfers, smart contract deployment, NFT handling, DeFi lending through Morpho vaults, and crypto onramping.13-
- AlicenseNot gradedqualityNot gradedmaintenanceEnables AI applications to interact with the Base Network and Coinbase API for onchain operations including wallet management, token transfers, smart contract deployment, NFT operations, DeFi lending through Morpho vaults, and onramping funds.13-
- AlicenseNot gradedqualityDmaintenanceAn MCP server that enables AI-driven on-chain interactions with the Zora Protocol on Base, supporting token queries, swaps, and transfers via natural language.192MIT
- AlicenseNot gradedqualityDmaintenanceEnables querying Base Network blockchain data including blocks, transactions, balances, and smart contracts on mainnet and testnet.4MIT
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/r4topunk/zora-coins-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server