Skip to main content
Glama

Server Details

Research articles and live crypto prices for AI agents via x402 on Base.

Ownership verified
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

A4.4/5.0

Scored across 6 tools

Disambiguation5/5

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.

Naming Consistency5/5

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.

Tool Count5/5

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.

Completeness4/5

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 tools
check_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.

ParametersJSON Schema
NameRequiredDescriptionDefault
alertIdYesThe alertId returned by create_price_alert.

TDQS

A4.3/5.0
Behavior4/5

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.

Conciseness5/5

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.

Completeness5/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYesCryptocurrency symbol, e.g. BTC, ETH, SOL.
conditionYesWhether to alert when price goes above or below the threshold.
thresholdYesPrice threshold in USD.

TDQS

A4.4/5.0
Behavior4/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines5/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe article ID to retrieve (e.g., 'on-chain-trading-signals', 'defi-vulnerabilities', 'know-your-agent-compliance'). Use list_articles to discover available IDs.

TDQS

A4.1/5.0
Behavior4/5

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.

Conciseness4/5

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.

Completeness4/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYesCryptocurrency 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

A4.4/5.0
Behavior4/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters4/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain ID: 8453 (Base, default), 1 (Ethereum), or 56 (BSC).8453
addressYesThe ERC-20 token contract address (0x + 40 hex characters).

TDQS

A4.1/5.0
Behavior4/5

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.

Conciseness4/5

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.

Completeness4/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior4/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters4/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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.

  1. 2 tool updates
    • Addedcheck_price_alert
    • Addedcreate_price_alert
  2. 1 tool update
    • Changedget_token_safety2 fields changed
      • changedInput schema / properties / address / description
        Previous 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)."
      • addedInput schema / properties / chain
        Added value: +{
        +  "default": "8453",
        +  "description": "Chain ID: 8453 (Base, default), 1 (Ethereum), or 56 (BSC).",
        +  "type": "string"
        +}
  3. 1 tool update
    • Addedget_token_safety
  4. 3 tool updates
    • First observedget_article
    • First observedget_crypto_price
    • First observedlist_articles

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.