agent-data-pro
Server Details
Research articles and live crypto prices for AI agents via x402 on Base.
- Status
- Healthy
- Uptime
- 100.0% over 22 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2024-11-05
- URL
- Repository
- OrionSmithers/agent-data-pro
- GitHub Stars
- 1
- Server Listing
- Agent Data Pro
TDQS
Scored across 6 tools
Each tool has a distinct resource and action: price alert creation vs. checking, article listing vs. retrieval, crypto price fetching, and token safety checking. There is no meaningful overlap that would cause an agent to misselect a tool. The descriptions reinforce the boundaries clearly.
All tool names follow a consistent snake_case verb_noun pattern: check_price_alert, create_price_alert, get_article, get_crypto_price, get_token_safety, list_articles. The verbs accurately describe the actions and the pattern is predictable throughout.
Six tools is well-scoped for a crypto data/pro service covering prices, token safety, price alerts, and premium articles. Each tool earns its place without redundancy or excessive granularity.
The core workflows are covered: create/check price alerts, list/retrieve articles, fetch crypto prices, and check token safety. Minor gaps exist, such as no cancel/delete for price alerts or no article search/filtering, but agents can work around them.
Available Tools
6 toolscheck_price_alertAInspect
Free. Check the status of a previously created price alert by its alertId. Returns status: 'pending' or 'triggered', and the triggering price/time if fired.
| Name | Required | Description | Default |
|---|---|---|---|
| alertId | Yes | The alertId returned by create_price_alert. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it delivers real behavioral detail: the tool is free, it is a status lookup (read-only by implication), and it enumerates the possible return states ('pending' or 'triggered') plus the triggering price/time. It does not mention auth requirements or error behavior for an unknown/expired alertId, which keeps it below 5.
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?
Three short sentences, front-loaded with the purpose, then the input, then the return contract. The leading 'Free.' earns its place as a cost signal and nothing is redundant.
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?
For a single-parameter read tool with no output schema, the description supplies exactly what is missing elsewhere: the return shape ('pending'/'triggered' plus triggering price/time) and the cost. Nothing an agent needs to invoke it correctly is absent.
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 100% and the schema already documents alertId as the value returned by create_price_alert, so the description adds no parameter meaning beyond the structured field. The baseline of 3 applies for a single fully-documented parameter.
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?
States a specific verb and resource ('Check the status of a previously created price alert') and scopes it by alertId, which clearly separates it from the sibling create_price_alert and from the price/security/read tools. An agent can select it without opening the schema.
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 phrase 'previously created' plus 'by its alertId' establishes the precondition that an alert must already exist via create_price_alert, giving clear context for when the tool applies. It does not state explicit exclusions or name a competing sibling to avoid, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_price_alertAInspect
[x402 Payment Required] Register a one-time price alert for a cryptocurrency. Pay once ($0.05 USDC on Base), then poll check_price_alert (free) with the returned alertId to see if it has fired. Checked every 5 minutes server-side.
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes | Cryptocurrency symbol, e.g. BTC, ETH, SOL. | |
| condition | Yes | Whether to alert when price goes above or below the threshold. | |
| threshold | Yes | Price threshold in USD. |
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, and it does well: it discloses the x402 payment requirement, the exact cost ($0.05 USDC on Base), that the alert is one-time, and that server-side evaluation runs every 5 minutes. It stops short of covering failure modes (insufficient funds, invalid symbol) or whether the alert expires unfulfilled.
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?
Three sentences, front-loaded with the cost/paid nature before the workflow, and every clause earns its place: cost, polling partner, return value, and evaluation cadence.
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?
There is no output schema, so the description correctly supplies the key return value (alertId) and the cadence of evaluation. It is sufficient for an agent to call and follow up on this tool, though it omits edge cases like what happens when a payment fails or an alert expires.
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 100% with three well-documented parameters including an enum for condition, so the schema already does the heavy lifting. The description adds no per-parameter syntax or format detail beyond what the schema provides, making the baseline 3 appropriate.
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?
States a specific verb and resource ('Register a one-time price alert for a cryptocurrency') with clear scope (one-time, single symbol/condition/threshold). It is immediately distinguishable from the sibling check_price_alert, which it explicitly positions as the follow-up polling tool.
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?
Gives an explicit two-step workflow: register here (paid), then poll check_price_alert (free) with the returned alertId. It names the alternative tool and the condition that selects it, so the agent knows exactly when to call each.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_articleAInspect
[x402 Payment Required] Retrieve the full content of a premium research article on Blockchain, DeFi, or Crypto Markets. Returns analysis, data, and actionable insights. Price varies by article ($0.01–$0.30 USDC). Requires x402 payment on Base network. Call list_articles first to get valid article IDs.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The article ID to retrieve (e.g., 'on-chain-trading-signals', 'defi-vulnerabilities', 'know-your-agent-compliance'). Use list_articles to discover available IDs. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Since no annotations are provided, the description carries the full behavioral burden. It clearly discloses the paid nature (USDC amount, Base network, x402), the requirement to call list_articles first, and the type of content returned. It does not detail failure modes or response format, but covers the most critical operational aspects.
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 front-loaded with the core retrieval purpose and domain, then provides payment details and the prerequisite. It is slightly verbose (five short sentences), but every sentence conveys useful operational information, so it remains efficient.
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?
For a one-parameter, paid retrieval tool, the description covers the ID source, payment requirements, and expected content type. It lacks explicit error handling and response format details, but the 100% schema coverage and clear sibling context minimize ambiguity.
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 coverage is 100%: the schema already documents the id parameter and even includes the list_articles hint. The description repeats that hint but adds no new semantic detail beyond the schema, aside from the indirect note that price varies by article. Baseline 3 is appropriate.
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 uses a specific verb ('Retrieve') and resource ('full content of a premium research article'), explicitly scoped to Blockchain, DeFi, and Crypto Markets. It also differentiates from siblings by instructing the agent to call list_articles first, making the tool's role in the workflow clear.
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 gives clear usage context: call list_articles first to get valid article IDs, and be aware of the x402 payment requirement. It does not explicitly list when not to use this tool versus get_crypto_price, but the domain scoping makes that distinction obvious.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_crypto_priceAInspect
Fetch current cryptocurrency price data including USD price, 24h change, 7d change, market cap, and 24h volume. Supports 5000+ coins including BTC, ETH, SOL, DOGE, XRP, ADA, AVAX, MATIC, and more. Data updates every 5 minutes from cryptorates.ai. Rate-limited to 30 requests per 60 seconds. TIP: Before trading any token, call get_token_safety to check for honeypots and transfer restrictions ($0.01 USDC).
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes | Cryptocurrency symbol (uppercase). Examples: BTC, ETH, SOL, DOGE, XRP, ADA, AVAX, MATIC, DOT, LINK, UNI, ATOM, FTM, NEAR, ALGO, VET, ICP, FIL, EGLD, THETA, XTZ, RUNE, CRO, KCS, HNT, MKR, AAVE, SNX, CRV, CAKE, SUSHI, UST, LUNC, etc. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses key behavioral traits: data update interval (every 5 minutes), data source (cryptorates.ai), rate limit (30 requests/60s), and the nature of the data (read-only fetch). It does not mention error handling or behavior for invalid symbols, but given the simplicity of the tool, this is adequate. The rate limit and freshness disclosure are valuable.
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 four sentences with no redundancy. The purpose is front-loaded, and each subsequent sentence adds a distinct piece of information: data fields, coin support, freshness/source, rate limit, and a safety tip. The tip is tangential but relevant. Nothing is wasted.
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 simplicity (one parameter, no output schema), the description covers the return data fields, data freshness, rate limits, and even a best-practice tip. It does not address error scenarios (e.g., unknown symbol) or whether the result is numeric with a specific format, but these are minor omissions. The presence of a tip to call a sibling tool adds operational guidance that enhances completeness.
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 input schema already documents the 'symbol' parameter with a rich list of examples (100% coverage). The description adds the scope 'Supports 5000+ coins' and highlights specific examples, reinforcing the schema but not adding fundamentally new meaning. It does add the breadth of coin support, which is helpful for an agent deciding which symbol to pass. The description does not introduce syntax or formatting details beyond the schema, but the schema is thorough.
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 verb 'Fetch' and the resource 'current cryptocurrency price data', and enumerates the exact data fields returned (USD price, 24h/7d change, market cap, volume). It distinguishes itself from sibling tools by domain: price data vs. articles and safety checks. No ambiguity about what this tool does.
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 (trading) via the tip about calling get_token_safety before trading, and it provides operational constraints (rate limit, data update frequency). However, it does not explicitly state when to use this tool versus alternatives, though the siblings are clearly different domains, making confusion unlikely. The lack of explicit 'when not to use' is a minor gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_token_safetyAInspect
[x402 Payment Required] Check the safety of an ERC-20 token on Base (or Ethereum/BSC). Uses Honeypot.is to simulate buy/sell transactions and detect honeypots, taxes, and contract risks. Returns a risk score (0-100), verdict (safe/caution/risky/danger), and detailed warnings. Use this before buying or trading any token. Price: $0.01 USDC. Requires x402 payment on Base network.
| Name | Required | Description | Default |
|---|---|---|---|
| chain | No | Chain ID: 8453 (Base, default), 1 (Ethereum), or 56 (BSC). | 8453 |
| address | Yes | The ERC-20 token contract address (0x + 40 hex characters). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that the tool requires x402 payment, simulates buy/sell transactions (implying read-only), and returns specific outputs. It does not cover error handling or rate limits, but the key behavioral aspects (payment, method, and results) are transparent.
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 well-structured, front-loading the payment requirement and then explaining functionality, output, and usage. It is informative without being verbose, using concise sentences. A small deduction for slightly redundant phrasing like 'on Base (or Ethereum/BSC)' given the chain parameter, but overall it is efficient.
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?
The description covers the core aspects: what it does, how it works, what it returns, when to use, cost, and payment method. It does not mention edge cases like unsupported chains or invalid addresses, but for a typical call the agent has enough information. Since there is no output schema, the description adequately describes the return values.
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 100%, so the schema already documents both parameters (chain and address) with clear descriptions. The tool description adds no additional meaning beyond what the schema provides, such as address format or chain specifics, which are already in the schema. Baseline 3 is appropriate.
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 checks token safety on specific chains using Honeypot.is, with a specific verb 'Check'. It distinctly differentiates from sibling tools like get_crypto_price and list_articles, which serve unrelated purposes. The mention of risk score, verdict, and warnings makes the purpose unambiguous.
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?
It explicitly says 'Use this before buying or trading any token', providing a clear usage context. However, it does not mention when not to use it or alternatives, though siblings are unrelated so no exclusion is needed. The guidance is sufficient for an agent to decide when to invoke it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_articlesAInspect
List all available premium research articles with their prices, categories, and previews. Free to call — no payment required. Use this first to discover available article IDs.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral disclosure burden. It explains that the call is free ('no payment required') and that it returns article metadata with previews. For a read-only zero-parameter listing, this is adequate, though it does not mention pagination or response format.
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?
Three short sentences, each earning its place: purpose, cost/read-only nature, and usage guidance. The description is front-loaded and free of 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?
For a simple zero-parameter listing tool with no output schema, the description covers purpose, content, cost, and correct usage order. Minor omissions like sorting or pagination do not prevent an agent from using 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?
Input schema has zero parameters and is fully covered by the schema itself, so no parameter explanation is needed. Baseline 4 applies for zero-parameter tools.
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?
Description states a specific verb ('List') and resource ('available premium research articles') and specifies the returned fields: prices, categories, and previews. It is clearly distinct from the siblings get_article and get_crypto_price.
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?
Explicitly instructs 'Use this first to discover available article IDs,' which tells an agent when this tool should be invoked. It does not explicitly contrast with get_article, but the usage guidance provides clear context.
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.
2 tool updates
- Added
check_price_alert - Added
create_price_alert
1 tool update
- Changed
get_token_safety2 fields changed- changed
Input schema / properties / address / descriptionPrevious value: -"The ERC-20 token contract address on Base (0x + 40 hex characters)."New value: +"The ERC-20 token contract address (0x + 40 hex characters)." - added
Input schema / properties / chainAdded value: +{ + "default": "8453", + "description": "Chain ID: 8453 (Base, default), 1 (Ethereum), or 56 (BSC).", + "type": "string" +}
1 tool update
- Added
get_token_safety
3 tool updates
- First observed
get_article - First observed
get_crypto_price - First observed
list_articles
Related MCP Connectors
Pay-per-call crypto market intelligence for AI agents. USDC on Base via x402.
Market data and web intelligence for AI agents, paid per call in USDC on Base via x402.
Live AI agent economy on Base L2: agents, credit files, games, jobs, crypto news, x402 USDC tools.
Bitcoin and YouTube video intelligence for AI agents. Pay-per-call via x402 USDC on Base.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides real-time crypto market data for AI agents, including derivatives, liquidations, options, macro, and market regime detection, with pay-per-call via x402 micropayments on Base.182 npmMIT
- AlicenseNot gradedqualityDmaintenancePay-per-task AI agent for writing, research, code, DeFi & blockchain. Pay in USDC on Base or Solana. Supports A2A, MCP, x402 and Agentmail protocols.4MIT
- AlicenseAqualityCmaintenanceEnables AI agents to fetch crypto market and on-chain data, including prices across venues, token facts, OHLC candles, market overview, DeFi TVL, and wallet balances, with two free tools and the rest paid per call in USDC on Base via x402.840 npmMIT

hyperd-mcpofficial
AlicenseAqualityDmaintenancePre-trade DeFi intelligence for AI agents. 20 paid x402 endpoints, USDC on Base.2353 npm1MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.