openpulsechain
OfficialThis server provides comprehensive analytics and security tools for the PulseChain ecosystem, enabling AI assistants to query token data, monitor DEX activity, assess security risks, and track wallet behavior across 20 tools.
Free (No API Key Required):
Token Data — Current price, 24h change, volume, and market cap for any PulseChain token
Token Info — Full token details: name, symbol, decimals, liquidity, volume, and holder count
Price History — Historical OHLCV price data (up to 30 days free, 1000 days with Pro)
Top Tokens — Top PulseChain tokens sorted by volume, liquidity, or symbol (up to 500)
Top Pairs — Top PulseX DEX trading pairs by volume (up to 500)
Market Overview — Network-wide stats: TVL, 24h volume, active tokens, top gainers/losers
Token Safety — Scam analysis: honeypot detection, buy/sell tax, ownership, liquidity score (0–100, A–F grade)
Token Liquidity — Detailed liquidity breakdown across all DEX pairs, volumes, and reserves
Bridge Stats — PulseChain bridge inflows, outflows, and net flow over the last 7 days
Holder Leagues — Holder distribution tiers (poseidon/whale/shark/dolphin/squid/turtle) for PLS, PLSX, HEX, INC, or PRVX
Honeypot List — Recently detected honeypot tokens on PulseChain
Pro (Requires OPENPULSECHAIN_API_KEY):
Address Risk Check — Flag wallets/contracts for AML risk, exploits, phishing, or OFAC sanctions
Deployer Reputation — Score a token deployer based on deployment history and rug pattern detection
Scam Alerts — Real-time alerts for honeypots, LP removals (rug pulls), and whale dumps
Smart Money Feed — Track large wallet movements and whale swaps on PulseX
Recent Swaps — Recent large swaps on PulseX DEX with configurable USD threshold
Wallet Balances — Current token holdings for any PulseChain wallet
Wallet Swap History — Swap activity history for a specific wallet
Funding Tree — Trace 2-level funding sources for a wallet (bridge/DEX interactions)
Holder Rank — A wallet's holder rank and tier across all tracked tokens
Provides tools for querying blockchain data on PulseChain, an Ethereum-compatible chain, including token prices, safety scores, bridge statistics, and wallet analytics.
OpenPulsechain
Open-source analytics platform for PulseChain.
Live: openpulsechain.com · Dune: Bridge Analytics
Not affiliated with PulseChain, PulseX, or any related entity. Data is for informational purposes only — not financial advice.
What's included
Module | Description |
Dashboard | 16-page web app: Overview, DEX, Tokens, Bridge, Whales, Intelligence, Safety, Alerts, Smart Money, Leagues, Heart Law, Wallet Profiles, Token Safety, MCP/API, Privacy |
Token Safety API | FastAPI with 25 public endpoints: safety scores, scam radar, deployer reputation, smart money, wallet analysis, leagues, bridge stats, funding trees |
REST API | FastAPI with 12 endpoints: tokens, prices, history, pairs, market overview, safety proxies |
MCP Server | Model Context Protocol server with 20 tools for AI assistants |
Chrome Extension | Token safety scores, transaction guard, portfolio tracker, scam alerts |
Indexers | 23 Python cron jobs collecting on-chain data every 5-15 min |
Dune | 9 SQL queries + 20 visualizations for bridge analytics (Ethereum-side) |
Related MCP server: Web3 Signals — Crypto Signal Intelligence
Features
Analytics Dashboard
Overview — PLS price, chain TVL, gas estimates, token prices table
DEX Analytics — PulseX daily volume, liquidity, top 30 trading pairs
Token Explorer — 2500+ browsable tokens with pagination, search, price history charts
Bridge Monitor — OmniBridge + Hyperlane: daily flows, cumulative net flow, whale alerts, TVL by token
Whale Tracker — Top holders, cross-token analysis, funding clusters, connection graph
Leagues — Holder tier rankings for PLS, PLSX, HEX, INC, updated every 6 hours
Heart Law — Educational AMM price simulator for PulseX pools
Security & Intelligence
Token Safety Scanner — Composite score (0-100, grade A-F) based on honeypot detection, contract analysis, LP health, holder concentration, token age
Scam Radar — Automated alerts for LP removals and whale dumps, scanning every 30 minutes
Deployer Reputation — Serial rugger detection: analyzes deployer's token history, dead token ratio
Smart Money Tracker — Large swaps on PulseX, top wallets by volume, auto-refresh every 60s
Wallet Profiler — Token holdings + swap activity for any address
Market Intelligence — AI-analyzed Twitter sentiment, risk conclusions, action detection
Chrome Extension
Transaction Guard — Intercepts swaps on PulseX, 9mm, Piteas and warns about risky tokens before signing
Safety Scanner — Browse all analyzed tokens with safety scores, grades, and sub-score details
Portfolio Tracker — Track wallet balances with sparkline charts
Scam Alerts — Real-time notifications for critical scam detections
Data
2,500+ tokens discovered from PulseX Subgraph
463K+ price records (daily, since May 2023)
231K+ bridge transfers (OmniBridge + Hyperlane)
100% sovereign token prices from PulseX
derivedUSD— no CoinGecko dependency for PulseChain tokens
Architecture
PulseX Subgraph ──┐
DefiLlama API ────┤
PulseChain RPC ───┤──> Python Indexers ──> PostgreSQL (RLS)
Blockscout API ───┘ │
┌─────────┼──────────┐
│ │ │
React SPA REST API Safety API
│ │
Dashboard safety.openpulsechain.com
16 pages + MCP 25 public endpoints
│
Chrome ExtensionProject Structure
/
frontend/ # React dashboard (16 pages)
api/ # REST API FastAPI (tokens, prices, pairs)
token_safety/ # Safety API FastAPI (scores, scam radar, deployer, smart money, leagues)
indexers/ # 23 Python cron jobs (on-chain data collection)
live_cache/ # Real-time token pool cache (DexScreener)
mcp-server/ # MCP server for AI assistants (20 tools)
extension/ # Chrome browser extension
dune/ # SQL queries for Dune Analytics
docs/ # DocumentationGetting started
git clone https://github.com/openpulsechain/openpulsechain.git
cd openpulsechainModule | Setup |
|
|
|
|
|
|
|
|
|
|
|
|
Data sources
Data | Source | Access |
Token prices (PulseChain) | PulseX Subgraph | Public |
TVL, DEX volume | DefiLlama API | Public |
Gas price, blocks | PulseChain RPC | Public |
Bridge events (ETH-side) | Dune Analytics | Public (2500 credits/mo) |
Bridge events (PLS-side) | PulseChain OmniBridge Subgraph | Public |
Hyperlane transfers | Hyperlane Explorer API | Public |
Contract analysis | PulseChain Scan API (Blockscout v2) | Public |
Honeypot detection | FeeChecker contract (on-chain simulation) | On-chain |
Token logos | PulseX CDN, Piteas GitHub, DexScreener | Public |
License
Available Tools
28 toolscheck-address-riskCheck Address AML RiskARead-onlyIdempotent
[PRO] Check if a wallet/contract address is flagged for AML risk, known exploits, phishing, or sanctions (OFAC). Requires OPENPULSECHAIN_API_KEY.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Wallet or contract address (0x...) |
Output Schema
| Name | Required | Description |
|---|---|---|
| address | Yes | Checked address |
| risk_level | Yes | Risk level: low, medium, high, critical |
| risk_score | Yes | Numeric risk score (0-100) |
| flags | Yes | List of risk flags (e.g. sanctions, exploit, phishing) |
| details | No | Additional risk context |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare safe read-only behavior (readOnlyHint=true, destructiveHint=false, idempotentHint=true). Description adds value by noting the PRO nature and the API key requirement, which are important behavioral constraints not captured in annotations. No contradictions.
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?
Two sentences, each essential. First states purpose and scope, second lists a key requirement. No redundant information. Front-loaded with most critical 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 a simple interface (one parameter) and an output schema exists, the description provides sufficient context: what risks are checked, that it's a PRO feature, and API key needed. Could be improved by noting that results may include detailed flags or scores, but acceptable.
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 one parameter 'address' with full description in schema (100% coverage). Description does not add any additional semantic meaning beyond what the schema provides, so baseline score of 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?
Description clearly states the tool checks 'wallet/contract address' for specific risk categories: AML, exploits, phishing, sanctions. Verb 'check' and resource 'address' are precise. No sibling tool performs this function, so differentiation is inherent.
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?
Description mentions requirement for OPENPULSECHAIN_API_KEY, which is a usage prerequisite. However, it does not explicitly instruct when to use this tool over alternatives (e.g., other safety/risk tools), nor provides exclusions. Usage context is implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-bridge-statsGet Bridge StatsARead-onlyIdempotent
Get PulseChain bridge statistics: inflows, outflows, net flow over the last 7 days.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| inflow_usd | Yes | Total bridge inflows in USD over the last 7 days |
| outflow_usd | Yes | Total bridge outflows in USD over the last 7 days |
| net_flow_usd | Yes | Net flow (inflow - outflow) in USD |
| daily | Yes | Daily bridge flow breakdown |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, nondestructive, and open world hints. The description adds the 7-day time window context, which is not covered by annotations, enhancing transparency without contradiction.
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, well-structured sentence that front-loads the key information (what it does and the metric details) without any extraneous words.
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 (no parameters, has output schema), the description fully covers the scope, specifying the metrics and time window. The output schema handles return value details.
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 zero parameters and schema coverage is 100%, so the description is not required to explain parameters. Baseline 4 is appropriate as no additional parameter info is needed.
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 it retrieves PulseChain bridge statistics, specifying inflows, outflows, net flow, and a precise time range ('last 7 days'), which uniquely identifies its purpose among sibling tools.
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?
While no explicit 'when to use' guidance is given, the description clearly implies usage for bridge statistics, and there are no sibling tools covering bridge data, so confusion is minimal.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-deployer-reputationGet Deployer ReputationARead-onlyIdempotent
[PRO] Get reputation score for a token deployer: how many tokens deployed, how many died (rug pattern detection). Requires OPENPULSECHAIN_API_KEY.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Deployer wallet address (0x...) |
Output Schema
| Name | Required | Description |
|---|---|---|
| address | Yes | Deployer address |
| reputation_score | Yes | Reputation score (0-100) |
| tokens_deployed | Yes | Total number of tokens deployed |
| tokens_dead | Yes | Number of tokens that died or were rugged |
| rug_pattern | Yes | Whether a rug pull pattern is detected |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint, idempotentHint, etc. The description adds the need for an API key and mentions rug pattern detection. It does not contradict annotations, but could disclose more about behavior (e.g., data freshness).
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 only two sentences, front-loading the purpose and including a prerequisite. Every sentence adds value with no 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 presence of an output schema, the description need not explain return values. It covers purpose and prerequisites, though it could elaborate on terms like 'died' for clarity. Overall adequate for a simple 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?
The schema already describes the address parameter with full coverage (100%). The description adds no additional semantic meaning beyond what is in the schema, so 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's purpose with a specific verb ('Get reputation score') and resource ('token deployer'), and lists what the score includes (tokens deployed, how many died with rug pattern detection). This distinguishes it from sibling tools like check-address-risk.
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 mentions a prerequisite (OPENPULSECHAIN_API_KEY) but does not explicitly state when to use this tool over alternatives. The specificity of the tool's function implies its use case, but lacks explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-funding-treeGet Funding TreeARead-onlyIdempotent
[PRO] Trace funding sources for a wallet: where did the money come from? (2-level depth, bridge/DEX interactions). Requires OPENPULSECHAIN_API_KEY.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Wallet address to trace (0x...) |
Output Schema
| Name | Required | Description |
|---|---|---|
| address | Yes | Root wallet address |
| depth | Yes | Trace depth level |
| funding_sources | Yes | Array of funding sources |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds information beyond annotations: requires an API key, and specifies the depth and type of interactions (bridges/DEXs). This complements the readOnlyHint and idempotentHint annotations 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?
Two sentences pack essential purpose, scope, and requirements with zero redundancy. Every word serves a purpose, making it highly efficient for an agent 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 presence of an output schema, return value details are unnecessary. The description covers purpose, depth, and authentication. An example or note on expected output structure would further enhance 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?
Parameter coverage is 100% via schema, and the description provides context for the address's role in tracing funds. However, no additional constraints or format details are added 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 it traces funding sources for a wallet, specifying 2-level depth and bridge/DEX interactions. This distinguishes it from sibling tools like get-wallet-transactions or get-tx-trace, which serve different purposes.
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 mentions a prerequisite (API key) but does not explicitly state when to use this tool versus alternatives. Given 26 sibling tools, comparative guidance would improve selection accuracy.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-gasGet Gas PriceARead-onlyIdempotent
[PRO] Current PulseChain gas price in Gwei, block number, and base fee. Requires OPENPULSECHAIN_API_KEY.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| gas_price_gwei | Yes | Current gas price in Gwei |
| base_fee_gwei | Yes | Base fee in Gwei |
| block_number | Yes | Latest block number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark it as readOnly, idempotent, etc. Description adds that it requires an OPENPULSECHAIN_API_KEY, which is useful behavioral context beyond the structured fields. No contradictions.
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?
Single sentence conveying all essential information without redundancy. Every part serves a purpose.
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 zero parameters and an existing output schema, the description adequately specifies the return values (gas price in Gwei, block number, base fee) and the authentication requirement. No gaps.
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 no parameters, so schema description coverage is 100%. Description adds no extra parameter details, but with no parameters a baseline of 4 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?
Description clearly states the tool gets current PulseChain gas price in Gwei, block number, and base fee, with a specific verb and resource. It is distinct from sibling tools which focus on other blockchain data.
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. Only mentions required API key but no context on appropriate usage scenarios or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-holder-leaguesGet Holder LeaguesARead-onlyIdempotent
Get aggregated holder distribution tiers (poseidon/whale/shark/dolphin/squid/turtle) for a core PulseChain token.
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes | Token symbol |
Output Schema
| Name | Required | Description |
|---|---|---|
| symbol | Yes | Token symbol |
| tiers | Yes | Array of holder tiers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, non-destructive, idempotent, and open-world hints. The description adds value by specifying the aggregation tiers and the token restriction, providing behavioral context beyond annotations without contradiction.
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?
A single, clear sentence that is front-loaded with the core action and resource. No unnecessary words, earning its place efficiently.
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 simple single-parameter tool with good annotations and an output schema, the description is complete enough. It covers the purpose and tier names without needing to explain 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 coverage is 100% with a well-defined enum parameter. The description does not add extra meaning beyond what the schema provides, so a baseline score of 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 verb 'Get' and the resource 'aggregated holder distribution tiers' with a specific list of tier names. It specifies the domain (core PulseChain token), distinguishing it from sibling tools like get-token-holders or get-holder-rank.
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 explicit guidance on when to use this tool versus alternatives. The description does not mention when not to use it or suggest other tools for similar queries, leaving the agent to infer context from sibling names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-holder-rankGet Holder RankBRead-onlyIdempotent
[PRO] Get holder rank and tier for a wallet address across all tracked tokens. Requires OPENPULSECHAIN_API_KEY.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Wallet address (0x...) |
Output Schema
| Name | Required | Description |
|---|---|---|
| address | Yes | Wallet address |
| ranks | Yes | Array of holder rankings per token |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint, destructiveHint, idempotentHint, openWorldHint. The description adds only the API key requirement, which is useful but minimal behavioral context beyond annotations.
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?
Two sentences, no fluff. Efficiently conveys purpose and prerequisite without wasting words.
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?
With an output schema present, return values don't need explanation. The description covers purpose and API key prerequisite. However, it lacks context on when to use this tool among many similar siblings, but is adequate for a simple query 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 coverage is 100% with a single parameter 'address' described as 'Wallet address (0x...)'. The description does not add any extra meaning beyond what the schema provides, earning the baseline score of 3.
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 'Get holder rank and tier for a wallet address across all tracked tokens', which is a specific verb+resource combination. This distinguishes it from sibling tools like 'get-token-holders' that likely list holders for a token.
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 only notes '[PRO]' and 'Requires OPENPULSECHAIN_API_KEY' as prerequisites. No guidance on when to use this tool versus alternatives like 'check-address-risk' or 'get-wallet-balances'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-honeypotsGet Honeypot TokensBRead-onlyIdempotent
List recently detected honeypot tokens on PulseChain.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of results (default 20, max 200) |
Output Schema
| Name | Required | Description |
|---|---|---|
| honeypots | Yes | Array of detected honeypot tokens |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, and non-destructive behavior. The description adds the temporal context 'recently detected', but does not disclose pagination, rate limits, or data freshness. Given annotations, the description provides marginal added value.
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 action. It is concise but could be slightly expanded to include usage context without losing conciseness.
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 tool is simple with one parameter, rich annotations, and an output schema. However, the lack of usage guidelines and behavioral details beyond annotations reduces completeness for an agent selecting among 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?
The input schema fully describes the 'limit' parameter with default and maximum values (100% coverage). The description does not add any additional semantic information about parameters beyond what is already in 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 'list' and the resource 'recently detected honeypot tokens on PulseChain'. This distinguishes it from sibling tools like get-scam-alerts or get-token-safety, which cover different scam or token safety aspects.
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 such as get-scam-alerts. There is no mention of prerequisites, use cases, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-market-overviewGet Market OverviewARead-onlyIdempotent
Get PulseChain network overview: TVL, 24h volume, active tokens, top gainers/losers.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| tvl_usd | Yes | Total value locked in USD |
| volume_24h | Yes | Total 24-hour volume in USD |
| active_tokens | Yes | Number of actively traded tokens |
| top_gainers | Yes | Tokens with largest 24h gains |
| top_losers | Yes | Tokens with largest 24h losses |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, and openWorld. The description adds value by specifying the returned data (TVL, volume, etc.), providing context beyond the annotations.
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?
Single sentence, front-loaded with the action and resource, no unnecessary words. Every part contributes meaning.
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 parameterless tool with an output schema, the description fully captures what the tool returns and its purpose. No gaps.
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?
No parameters exist, so schema coverage is 100%. With zero params, a baseline of 4 is appropriate; the description does not need to add parameter info.
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?
Clearly states it retrieves the PulseChain network overview and lists specific data points (TVL, volume, etc.), distinguishing it from sibling tools like get-top-pairs or get-top-tokens which focus on specific subsets.
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?
While no explicit when-not or alternatives are given, the description implies it's the first tool for a network summary. The context is clear, but lacks explicit guidance on when to use other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-opportunity-signalGet Opportunity SignalARead-onlyIdempotent
[PRO] Composite opportunity score (0-100) for a PulseChain token. Combines momentum, volume spike, buy pressure, safety, whale activity, and MC/liquidity fragility. Returns confidence level and graceful degradation for partial data. Requires OPENPULSECHAIN_API_KEY.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Token contract address (0x...) |
Output Schema
| Name | Required | Description |
|---|---|---|
| opportunity_score | Yes | Composite score 0-100 |
| grade | Yes | Grade: A, B+, B, C, D, F |
| direction_hint | Yes | strong_opportunity, bullish_momentum, neutral_positive, neutral, bearish_pressure, avoid |
| confidence | Yes | high, medium, low, insufficient_data |
| factors | Yes | Individual factor scores |
| kill_signals | Yes | Override signals that force score to 0 |
| data_completeness | Yes | full, partial_no_history, safety_only, minimal |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate non-destructive, read-only, idempotent behavior. The description adds that it returns a confidence level and handles partial data gracefully, which is valuable context beyond the annotations.
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?
Two sentences efficiently convey purpose, components, and key features. No wasted words, and the most critical info is front-loaded in the first sentence.
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?
Output schema exists, so return format details are covered. The description explains the composite nature, graceful degradation, and authentication requirement. For a single-parameter tool, this is sufficient.
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% with one parameter 'address' fully described in the schema. The description does not add new parameter meaning, so baseline score applies.
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 returns a composite opportunity score (0-100) for PulseChain tokens, combining six specific components like momentum and volume spike. This distinguishes it from siblings like get-token-safety or get-token-sentiment, which focus on individual aspects.
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 mentions the requirement for an API key and labels it as '[PRO]', indicating a paid tier. While it doesn't explicitly compare to siblings, the composite nature implies use for overall opportunity assessment. Some guidance on when not to use would improve clarity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-pair-analyticsGet DEX Pair AnalyticsARead-onlyIdempotent
[PRO] Detailed analytics for a PulseX trading pair: price, volume, liquidity, buy/sell ratio, price impact estimates, volatility, wash trading detection. Requires OPENPULSECHAIN_API_KEY.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Pair contract address (0x...) |
Output Schema
| Name | Required | Description |
|---|---|---|
| pair_address | Yes | |
| price_usd | Yes | |
| metrics | Yes | |
| computed | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, etc. Description adds value by noting the tool is '[PRO]' and requires an API key, plus mentions specific analytics like wash trading detection. No contradiction.
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?
Two concise sentences: first lists capabilities, second states prerequisite. No wasted words.
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 single parameter, full schema coverage, annotations, and output schema existence, description adequately covers purpose and key behavioral context. Could mention that output schema provides detailed return structure, but not necessary.
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?
Only parameter 'address' is fully described in schema (100% coverage). Description does not add additional meaning beyond what schema provides, so 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?
Clearly states it provides 'detailed analytics for a PulseX trading pair' and lists specific metrics (price, volume, liquidity, etc.), distinguishing it from sibling tools like get-top-pairs or get-token-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?
Includes prerequisite ('[PRO]', requires API key) but does not explicitly guide when to use this vs alternatives or when not to use it. Context implies it's for comprehensive pair analysis.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-recent-swapsGet Recent DEX SwapsBRead-onlyIdempotent
[PRO] Get recent large swaps on PulseX DEX. Requires OPENPULSECHAIN_API_KEY.
| Name | Required | Description | Default |
|---|---|---|---|
| minutes | No | Lookback in minutes (default 60, max 1440) | |
| min_usd | No | Minimum swap USD value (default 1000) |
Output Schema
| Name | Required | Description |
|---|---|---|
| swaps | Yes | Array of recent swaps |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false. The description adds context that only 'large' swaps are fetched and requires an API key, but does not disclose rate limits or response details.
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 sentence with a necessary note about the API key. It is efficiently written but could be slightly more 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?
The tool is simple with two optional parameters and an output schema. The description is minimally sufficient but lacks contextual details such as typical use cases or data freshness.
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%, so the input schema fully documents parameters. The description adds no extra meaning beyond the schema definitions.
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 'Get', the resource 'recent large swaps', and the platform 'PulseX DEX'. It differentiates from sibling tools that focus on wallets, tokens, or specific metrics.
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 like 'get-wallet-swaps' or 'get-smart-money-feed'. It only mentions an API key requirement and PRO status.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-scam-alertsGet Scam AlertsARead-onlyIdempotent
[PRO] Get real-time scam radar alerts: honeypots, LP removals (rug pulls), whale dumps. Requires OPENPULSECHAIN_API_KEY.
| Name | Required | Description | Default |
|---|---|---|---|
| alert_type | No | Filter by alert type (omit for all) | |
| limit | No | Number of alerts (default 20, max 200) |
Output Schema
| Name | Required | Description |
|---|---|---|
| alerts | Yes | Array of scam alerts |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true. Description adds context: real-time, requires API key. No contradictions.
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?
Single sentence with essential information, no fluff. Front-loaded with purpose and includes requirement.
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 output schema exists and annotations are present, description covers key aspects: purpose, real-time nature, and API key requirement. Slightly more detail on result structure could elevate, but sufficient.
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 100% coverage with clear descriptions for alert_type and limit. Description does not add new meaning beyond schema, but provides context for the parameter values.
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 clearly states the tool gets real-time scam alerts for specific types (honeypots, LP removals, whale dumps), differentiating it from siblings like get-honeypots and get-whale-alerts.
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?
Description includes requirement for API key and PRO tier, but does not explicitly guide when to use vs alternatives. However, the specific alert types imply a focused use case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-smart-money-feedGet Smart Money FeedARead-onlyIdempotent
[PRO] Get smart money / whale activity feed: large wallet movements and recent swaps on PulseX. Requires OPENPULSECHAIN_API_KEY.
| Name | Required | Description | Default |
|---|---|---|---|
| hours | No | Lookback period in hours (default 24, max 168) | |
| min_usd | No | Minimum swap value in USD (default 1000) |
Output Schema
| Name | Required | Description |
|---|---|---|
| movements | Yes | Array of smart money movements |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, destructive, idempotent, and openWorld hints. The description adds context about PulseX and whale movements, but no additional behavioral details (e.g., rate limits, data freshness) beyond what annotations provide.
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 concise sentence with an additional requirement line. It is front-loaded, with no wasted words, and every sentence serves a clear purpose.
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 that an output schema exists (context signals indicate 'has output schema: true'), the description does not need to detail return values. It adequately covers the tool's function and requirements, though it could mention list structure or pagination if needed.
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 parameters are well-documented in the schema. The description does not add extra meaning beyond what the schema already provides for hours and min_usd.
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 that the tool retrieves smart money/whale activity feed for large wallet movements and swaps on PulseX. It is specific about the resource and action, though it does not explicitly differentiate from the similar sibling 'get-whale-alerts'.
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 mentions it is a '[PRO]' tool and requires an API key, but does not provide explicit guidance on when to use this tool versus alternatives or when not to use it. The purpose is implied but not structured as usage advice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-token-historyGet Token Price HistoryARead-onlyIdempotent
Get historical price data (OHLCV) for a PulseChain token. Limited to 30 days without API key; Pro unlocks full history.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Token contract address (0x...) | |
| days | No | Number of days of history (default 30, max 1000) |
Output Schema
| Name | Required | Description |
|---|---|---|
| address | Yes | Token contract address |
| days | Yes | Number of days returned |
| history | Yes | Array of OHLCV candles |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and destructiveHint=false. The description adds valuable behavioral context about the API key restriction on historical depth, which is not captured by annotations. No contradiction.
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?
Two sentences, no wasted words. The key functional purpose and limitation are front-loaded in the first sentence. Every part adds value.
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 simple parameters (2, one required) and presence of an output schema, the description is complete. It explains what data is returned (OHLCV) and the crucial access limitation, which fully supports agent decision-making.
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 covers both parameters with descriptions (100% coverage). The description adds extra meaning by linking the days parameter to the API key limitation, which is beyond what the schema provides. This helps the agent understand practical constraints.
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 retrieves historical price data (OHLCV) for a PulseChain token, using a specific verb and resource. It distinguishes itself from sibling tools like get-token-price (likely current price) by specifying 'history' and including the OHLCV acronym.
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 clear context on usage limitations: 30-day history without an API key, full history with Pro. It does not explicitly state when not to use or name alternatives, but the limitation itself guides appropriate usage scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-token-holdersGet Token HoldersARead-onlyIdempotent
[PRO] Top holders of a PulseChain token with balances and ownership percentages. Requires OPENPULSECHAIN_API_KEY.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Token contract address (0x...) | |
| limit | No | Number of holders to return (default: 50, max: 100) |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| token_address | Yes | |
| count | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, non-destructive, idempotent behavior. The description adds value by stating it requires an API key and is a [PRO] feature, plus clarifies it returns specific data (balances and percentages). No contradiction with annotations.
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, front-loaded sentence that directly states the tool's purpose and a key prerequisite. Every word contributes meaning with no redundancy or filler.
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 data retrieval tool with an output schema, the description adequately explains what data is returned (top holders with balances and percentages) and notes the API key requirement. It could mention the default limit behavior, but this is covered in the schema. Overall sufficient for the tool's complexity.
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% with clear descriptions for both parameters (address and limit). The description does not add any extra meaning about parameters but does not need to, as the schema fully documents them. Baseline score of 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 it returns 'Top holders' with 'balances and ownership percentages' for a PulseChain token, specifying the verb 'get' and resource 'token holders'. It adds context with the [PRO] marker and API key requirement. However, it does not explicitly differentiate from sibling tools like get-holder-rank or get-holder-leagues, which also deal with holders.
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 mentions the API key requirement but provides no guidance on when to use this tool versus alternatives (e.g., get-holder-rank). It lacks any when-to-use or when-not-to-use instructions, leaving the agent to infer usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-token-infoGet Token InfoARead-onlyIdempotent
Get full details for a PulseChain token: name, symbol, decimals, liquidity, volume, holder count.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Token contract address (0x...) |
Output Schema
| Name | Required | Description |
|---|---|---|
| address | Yes | Token contract address |
| name | Yes | Token name |
| symbol | Yes | Token ticker symbol |
| decimals | Yes | Token decimal places |
| total_liquidity_usd | Yes | Total liquidity in USD |
| volume_24h | Yes | 24-hour trading volume in USD |
| holder_count | Yes | Number of token holders |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already convey read-only, non-destructive, idempotent, and open-world behavior. The description adds the return fields, which provides some behavioral context (no mutations), but does not disclose any additional traits like rate limits or authentication needs. It adds marginal value beyond annotations.
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 sentence that conveys the purpose efficiently. It is front-loaded with the verb and resource, and lists specifics without unnecessary elaboration. Every word earns its place.
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 low complexity (1 parameter, simple output schema), the description adequately covers the tool's purpose and return values. The presence of an output schema reduces the need to explain return details. It is complete for an agent to select and invoke.
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% for the single parameter 'address', which is already well-documented in the schema. The description does not add new meaning to the parameter; it merely repeats the purpose of the tool. Baseline of 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 specifies the verb 'Get' and the resource 'full details for a PulseChain token', listing specific fields (name, symbol, decimals, liquidity, volume, holder count). This distinguishes it from sibling tools that focus on individual aspects like price or holders.
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 lacks explicit guidance on when to use this tool over alternatives. It implies it is for comprehensive token details, but does not state exclusions or provide when-not-to-use context. The phrase 'full details' is implicitly comparative but not actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-token-liquidityGet Token LiquidityBRead-onlyIdempotent
Get detailed liquidity breakdown for a token: all DEX pairs, volumes, and reserves.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Token contract address (0x...) |
Output Schema
| Name | Required | Description |
|---|---|---|
| address | Yes | Token contract address |
| total_liquidity_usd | Yes | Total liquidity across all pairs in USD |
| pairs | Yes | Array of liquidity pairs |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, and openWorldHint=true, so the safety profile is clear. The description adds context about the data returned (pairs, volumes, reserves) but does not go beyond what annotations already imply. With annotations, the bar is lower, and the description provides modest added value.
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 exceptionally concise at one sentence and 13 words. It is front-loaded with the main purpose and contains no extraneous information. Every word earns its place.
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 tool with one parameter, annotations, and an output schema (presumably complete), the description adequately conveys the return data. It specifies that it returns all DEX pairs, volumes, and reserves, which is sufficient for most use cases.
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 fully describes the single parameter 'address' with 100% coverage. The description does not add any extra meaning beyond what the schema provides, so the baseline score of 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 it retrieves a detailed liquidity breakdown for a token, specifying DEX pairs, volumes, and reserves. It distinguishes from sibling tools like get-token-info or get-pair-analytics by focusing on liquidity specifics, though not explicitly differentiating.
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 over alternatives, nor does it mention any context or exclusions. It simply states what the tool does without usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-token-priceGet Token PriceARead-onlyIdempotent
Get current price, 24h change, volume, and market cap for a PulseChain token.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Token contract address (0x...) — e.g. 0x2b591e99afe9f32eaa6214f7b7629768c40eeb39 for HEX |
Output Schema
| Name | Required | Description |
|---|---|---|
| address | Yes | Token contract address |
| price_usd | Yes | Current price in USD |
| price_change_24h | Yes | 24-hour price change percentage |
| volume_24h | Yes | 24-hour trading volume in USD |
| market_cap | Yes | Market capitalization in USD |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, indicating safe reads. The description adds the specific data fields returned, providing behavioral context beyond annotations.
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, well-structured sentence that immediately conveys the tool's purpose with no unnecessary words.
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 existence of an output schema, the description need not detail return values. It adequately covers the returned metrics and specifies the blockchain (PulseChain). Minor omissions like timezone for 24h change are not critical.
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%, and the schema description already explains the 'address' parameter clearly. The description adds no additional meaning beyond what the schema provides.
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 it retrieves current price, 24h change, volume, and market cap for a PulseChain token. It distinguishes from siblings like get-token-info (general info) and get-token-liquidity (liquidity-specific) by specifying exact metrics.
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 explicit guidance on when to use this tool over alternatives. The description implicitly suggests use for price-related queries, but does not mention when to prefer get-token-info or get-market-overview.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-token-safetyGet Token Safety ScoreARead-onlyIdempotent
Analyze a token for scam indicators: honeypot detection, buy/sell tax, ownership, liquidity score (0-100, A-F grade).
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Token contract address (0x...) |
Output Schema
| Name | Required | Description |
|---|---|---|
| address | Yes | Token contract address |
| score | Yes | Safety score from 0 (dangerous) to 100 (safe) |
| grade | Yes | Letter grade: A (safest) through F (dangerous) |
| is_honeypot | Yes | Whether the token is detected as a honeypot |
| buy_tax | Yes | Buy tax percentage |
| sell_tax | Yes | Sell tax percentage |
| ownership_renounced | Yes | Whether contract ownership has been renounced |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so behavior is clear. Description adds value by enumerating specific scam indicators checked, but does not disclose additional traits like rate limits or authentication needs, which annotations do not cover.
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?
Single sentence, 18 words, directly conveys the tool's purpose and key outputs (honeypot, tax, ownership, liquidity). No unnecessary 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 single parameter and presence of output schema, the description sufficiently covers the tool's functionality. It clearly states the domain (scam analysis) and scope, making it complete for an AI agent to understand invocation and expected results.
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 for the 'address' parameter is complete (100% coverage). Description does not add further parameter semantics beyond what the schema provides, so 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?
Description clearly states the tool analyzes a token for scam indicators, listing specific checks like honeypot detection, buy/sell tax, ownership, and liquidity score. This distinguishes it from siblings that focus on narrower aspects like get-honeypots or get-token-liquidity.
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 such as check-address-risk or get-honeypots. The description implies comprehensive scam analysis but does not provide context for selection or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-token-sentimentGet Token SentimentARead-onlyIdempotent
[PRO] Aggregated social sentiment score (-100 to +100) for a PulseChain token. Based on categorized events (partnerships, exploits, dumps, etc.). Requires OPENPULSECHAIN_API_KEY.
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes | Token symbol (e.g. PLS, HEX, PLSX) |
Output Schema
| Name | Required | Description |
|---|---|---|
| symbol | Yes | |
| sentiment_score | Yes | -100 (extreme bearish) to +100 (extreme bullish) |
| classification | Yes | bullish, bearish, neutral |
| positive_events | Yes | |
| negative_events | Yes | |
| total_events | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, destructiveHint, idempotentHint, and openWorldHint. The description adds value by specifying that it requires an API key, outputs a bounded score, and is based on categorized events, providing useful behavioral context beyond the annotations.
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 two concise sentences, front-loading the core purpose and score range, followed by the basis and requirement. Every sentence adds value without 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 single-parameter tool with an existing output schema and annotations, the description covers purpose, input context, and a key authentication requirement. While minor details like rate limits are absent, the overall completeness is high.
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% with a clear description for the 'symbol' parameter. The description does not add additional parameter-level semantics beyond what the schema provides, so a baseline score of 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 explicitly states the tool returns an aggregated social sentiment score ranging from -100 to +100 for a PulseChain token, based on categorized events. It clearly distinguishes from sibling tools like get-token-price or get-token-safety by specifying sentiment analysis.
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 does not provide guidance on when to use this tool over alternatives, nor does it mention exclusions or prerequisites beyond requiring an API key. Usage is implied but not systematically clarified.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-top-pairsGet Top DEX PairsARead-onlyIdempotent
List top PulseX DEX trading pairs by volume.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of pairs (default 20, max 500) |
Output Schema
| Name | Required | Description |
|---|---|---|
| pairs | Yes | Array of top trading pairs |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, and openWorldHint=true, covering safety and idempotency. The description adds no further behavioral details (e.g., data freshness, pagination, or rate limits) beyond what annotations provide.
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 sentence with no wasted words. It front-loads the key action and resource, making it easy to scan.
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 presence of an output schema and the simplicity of the tool (one optional parameter, annotations cover behavior), the description is sufficient. It could optionally mention that results are sorted by volume, but that is implied by 'top pairs' and the tool's name.
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% for the single parameter 'limit', which is clearly described with default and max values. The description does not mention parameters, but the schema already documents them adequately. 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 'List', identifies the resource as 'top PulseX DEX trading pairs', and specifies the criterion 'by volume'. This clearly distinguishes it from siblings like 'get-top-tokens' and 'get-pair-analytics'.
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, nor does it mention any prerequisites or exclusions. For example, it does not suggest that this is for volume-based ranking or when to prefer other tools like 'get-pair-analytics'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-top-tokensGet Top TokensARead-onlyIdempotent
List top PulseChain tokens sorted by volume, liquidity, or symbol.
| Name | Required | Description | Default |
|---|---|---|---|
| sort_by | No | Sort field (default: volume) | |
| limit | No | Number of tokens to return (default 20, max 500) |
Output Schema
| Name | Required | Description |
|---|---|---|
| tokens | Yes | Array of top tokens |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint. Description adds sorting behavior and default limit, but doesn't mention caching or data recency. No contradiction.
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?
Single sentence, no fluff, information front-loaded. Every word earns its place.
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 simple parameters, strong annotations, and presence of output schema, description fully covers what the tool does and how to use it.
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 covers both parameters with descriptions. Description adds context that sort_by can be volume, liquidity, or symbol, and mentions default limit of 20, which improves over schema alone.
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?
Clearly states it lists top PulseChain tokens with sorting by volume, liquidity, or symbol. Distinct from siblings like get-token-info which retrieve individual tokens.
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 such as get-top-pairs or get-token-liquidity. Agent must infer from name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-tx-traceGet Transaction TraceARead-onlyIdempotent
[PRO] Internal call trace for a transaction hash. Shows all internal transfers, contract calls, and token movements. Requires OPENPULSECHAIN_API_KEY.
| Name | Required | Description | Default |
|---|---|---|---|
| tx_hash | Yes | Transaction hash (0x...) |
Output Schema
| Name | Required | Description |
|---|---|---|
| transaction | Yes | |
| internal_transactions | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, destructiveHint false, idempotentHint true, and openWorldHint true. The description adds value by specifying the exact contents (internal transfers, contract calls, token movements) and that it's a PRO feature, which beyond annotations.
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?
Two sentences with no wasted words. The first sentence defines the purpose and output scope; the second provides the key prerequisite. Front-loaded and 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 tool has an output schema (not shown), so the description does not need to detail returns. It covers purpose, scope, and authentication requirement. Given the annotations and schema richness, the description is complete.
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 has 100% coverage for the single parameter tx_hash with a description 'Transaction hash (0x...)'. The description does not add any additional meaning or constraints beyond what the schema already provides.
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 provides an internal call trace for a transaction hash, including all internal transfers, contract calls, and token movements. It distinguishes itself from siblings like get-wallet-transactions or get-token-history by focusing on internal trace details.
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 mentions the requirement for an OPENPULSECHAIN_API_KEY, giving a prerequisite. However, it does not provide guidance on when to use this tool versus alternatives (e.g., get-token-history for token movements or get-wallet-transactions for external transfers).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-wallet-balancesGet Wallet BalancesARead-onlyIdempotent
[PRO] Get current token balances for a PulseChain wallet. Requires OPENPULSECHAIN_API_KEY.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Wallet address (0x...) |
Output Schema
| Name | Required | Description |
|---|---|---|
| address | Yes | Wallet address |
| total_value_usd | Yes | Total portfolio value in USD |
| balances | Yes | Array of token balances |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool as readOnlyHint, destructiveHint false, idempotentHint true, and openWorldHint true. The description adds that it requires an API key and is a PRO feature, which is useful context beyond the annotations. No contradictions.
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 front-load the PRO label and clearly state the tool's function. Every word is useful with no 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 low complexity (one parameter, output schema exists), the description is sufficient. It explains the purpose and a key prerequisite (API key). The output schema covers return values, so no further detail is needed.
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 provides a description for the 'address' parameter with 100% coverage. The description does not add any additional meaning or constraints beyond what the schema provides, so a baseline score of 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 it gets current token balances for a PulseChain wallet, with a specific verb and resource. It is distinct from sibling tools that focus on specific tokens (e.g., get-token-info) or other wallet actions (e.g., get-wallet-transactions).
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 mentions the requirement for an API key, providing usage context. However, it does not explicitly state when to use this tool versus alternatives like get-wallet-swaps or get-wallet-transactions. It is clear but lacks exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-wallet-swapsGet Wallet Swap HistoryARead-onlyIdempotent
[PRO] Get swap history for a PulseChain wallet. Requires OPENPULSECHAIN_API_KEY.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Wallet address (0x...) |
Output Schema
| Name | Required | Description |
|---|---|---|
| address | Yes | Wallet address |
| swaps | Yes | Array of wallet swaps |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint, idempotentHint) indicate safe read operation. Description adds the requirement 'Requires OPENPULSECHAIN_API_KEY', which is useful beyond annotations. Could mention rate limits or data scope but not essential given annotations.
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?
Two short sentences with no redundancy. Purpose is front-loaded. Could be slightly expanded to mention the output type without becoming verbose.
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 one-parameter tool with output schema and rich annotations, the description is mostly complete. It conveys the core function and a key requirement. No major gaps.
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% and describes 'address' as 'Wallet address (0x...)'. The description adds 'PulseChain wallet' but doesn't provide additional semantic meaning 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?
Clearly states 'Get swap history for a PulseChain wallet', identifying the resource and action. Distinguishes from siblings like get-wallet-transactions and get-recent-swaps by specifying swaps.
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 explicit guidance on when to use this tool versus alternatives. The '[PRO]' prefix and API key requirement hint at prerequisites but don't define usage context relative to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-wallet-transactionsGet Wallet TransactionsARead-onlyIdempotent
[PRO] Recent transactions for a wallet address (PLS transfers + token transfers). Requires OPENPULSECHAIN_API_KEY.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Wallet address (0x...) | |
| limit | No | Number of transactions (default: 20, max: 50) |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate it's read-only and idempotent. The description adds behavioral context by noting it requires an API key and is a PRO feature, which are useful beyond annotations. No contradictions.
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 two sentences, with the core purpose and requirement front-loaded. Every word adds value without 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 the presence of a full output schema and comprehensive annotations, the description sufficiently covers the tool's purpose, scope (both transfer types), and access requirements. No gaps remain for an agent to misunderstand.
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 100% description coverage with clear definitions for 'address' and 'limit'. The tool description does not add additional parameter context beyond the schema, earning a baseline score of 3.
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 it retrieves recent transactions for a wallet address, specifying it includes both PLS transfers and token transfers. This distinguishes it from sibling tools like get-wallet-balances or get-wallet-swaps.
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 for fetching transaction history but does not explicitly differentiate from alternatives or provide when-not-to-use guidance. It lacks explicit context on when to choose this tool over similar ones like get-token-history.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-whale-alertsGet Whale AlertsARead-onlyIdempotent
[PRO] Recent whale movements: large swaps (>$10K), LP removals, whale dumps. Combines scam radar + PulseX subgraph data. Requires OPENPULSECHAIN_API_KEY.
| Name | Required | Description | Default |
|---|---|---|---|
| hours | No | Lookback period in hours (default: 24, max: 168) | |
| min_usd | No | Minimum USD value for swaps (default: 10000) |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| count | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint, destructiveHint, idempotentHint, openWorldHint. Description adds behavioral context by specifying data sources (scam radar + PulseX subgraph) and movement conditions, enhancing transparency beyond annotations.
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?
Two sentences cover purpose, scope, data sources, and requirements. Front-loaded with main function, no wasted words.
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 presence of output schema (implied) and annotations, description sufficiently covers what the tool does, its premium status, and key parameters. No obvious gaps for an agent to select and invoke 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?
Schema coverage is 100%, but description adds meaning by correlating min_usd with 'large swaps (>$10K)' and explaining the context of 'whale movements'. Provides value beyond schema definitions.
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 clearly states it provides recent whale movements with specific criteria (large swaps >$10K, LP removals, whale dumps). Differentiates from sibling tools like get-scam-alerts by focusing on whale-specific data and combining scam radar with PulseX subgraph data.
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?
Mentions that it is a [PRO] tool requiring OPENPULSECHAIN_API_KEY, giving clear usage prerequisites. However, does not explicitly contrast with sibling tools or provide when-not-to-use guidance.
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.
8 tool updates
v1.2.3- Added
get-gas - Added
get-opportunity-signal - Added
get-pair-analytics - Added
get-token-holders - Added
get-token-sentiment - Added
get-tx-trace - Added
get-wallet-transactions - Added
get-whale-alerts
40 tool updates
v0.1.3- Removed
check_address_risk - Added
check-address-risk - Removed
get_bridge_stats - Removed
get_deployer_reputation - Removed
get_funding_tree - Removed
get_holder_leagues - Removed
get_holder_rank - Removed
get_honeypots - Removed
get_market_overview - Removed
get_recent_swaps - Removed
get_scam_alerts - Removed
get_smart_money_feed - Removed
get_token_history - Removed
get_token_info - Removed
get_token_liquidity - Removed
get_token_price - Removed
get_token_safety - Removed
get_top_pairs - Removed
get_top_tokens - Removed
get_wallet_balances - Removed
get_wallet_swaps - Added
get-bridge-stats - Added
get-deployer-reputation - Added
get-funding-tree - Added
get-holder-leagues - Added
get-holder-rank - Added
get-honeypots - Added
get-market-overview - Added
get-recent-swaps - Added
get-scam-alerts - Added
get-smart-money-feed - Added
get-token-history - Added
get-token-info - Added
get-token-liquidity - Added
get-token-price - Added
get-token-safety - Added
get-top-pairs - Added
get-top-tokens - Added
get-wallet-balances - Added
get-wallet-swaps
20 tool updates
v0.1.2- Changed
check_address_risk1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "address": { + "description": "Checked address", + "type": "string" + }, + "details": { + "description": "Additional risk context", + "type": "string" + }, + "flags": { + "description": "List of risk flags (e.g. sanctions, exploit, phishing)", + "items": { + "type": "string" + }, + "type": "array" + }, + "risk_level": { + "description": "Risk level: low, medium, high, critical", + "type": "string" + }, + "risk_score": { + "description": "Numeric risk score (0-100)", + "type": "number" + } + }, + "required": [ + "address", + "risk_level", + "risk_score", + "flags" + ], + "type": "object" +}
- Changed
get_bridge_stats2 fields changed- removed
Input schema / $schemaRemoved value: -"http://json-schema.org/draft-07/schema#" - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "daily": { + "description": "Daily bridge flow breakdown", + "items": { + "additionalProperties": {}, + "properties": { + "date": { + "description": "Date in ISO format", + "type": "string" + }, + "inflow_usd": { + "description": "Daily inflow in USD", + "type": "number" + }, + "outflow_usd": { + "description": "Daily outflow in USD", + "type": "number" + } + }, + "required": [ + "date", + "inflow_usd", + "outflow_usd" + ], + "type": "object" + }, + "type": "array" + }, + "inflow_usd": { + "description": "Total bridge inflows in USD over the last 7 days", + "type": "number" + }, + "net_flow_usd": { + "description": "Net flow (inflow - outflow) in USD", + "type": "number" + }, + "outflow_usd": { + "description": "Total bridge outflows in USD over the last 7 days", + "type": "number" + } + }, + "required": [ + "inflow_usd", + "outflow_usd", + "net_flow_usd", + "daily" + ], + "type": "object" +}
- Changed
get_deployer_reputation1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "address": { + "description": "Deployer address", + "type": "string" + }, + "reputation_score": { + "description": "Reputation score (0-100)", + "type": "number" + }, + "rug_pattern": { + "description": "Whether a rug pull pattern is detected", + "type": "boolean" + }, + "tokens_dead": { + "description": "Number of tokens that died or were rugged", + "type": "number" + }, + "tokens_deployed": { + "description": "Total number of tokens deployed", + "type": "number" + } + }, + "required": [ + "address", + "reputation_score", + "tokens_deployed", + "tokens_dead", + "rug_pattern" + ], + "type": "object" +}
- Changed
get_funding_tree1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "address": { + "description": "Root wallet address", + "type": "string" + }, + "depth": { + "description": "Trace depth level", + "type": "number" + }, + "funding_sources": { + "description": "Array of funding sources", + "items": { + "additionalProperties": {}, + "properties": { + "amount_usd": { + "description": "Funded amount in USD", + "type": "number" + }, + "source_address": { + "description": "Funding source address", + "type": "string" + }, + "source_type": { + "description": "Source type: wallet, bridge, dex, contract", + "type": "string" + }, + "timestamp": { + "description": "Transaction timestamp in ISO format", + "type": "string" + }, + "tx_hash": { + "description": "Transaction hash", + "type": "string" + } + }, + "required": [ + "source_address", + "source_type", + "amount_usd", + "tx_hash", + "timestamp" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "address", + "depth", + "funding_sources" + ], + "type": "object" +}
- Changed
get_holder_leagues1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "symbol": { + "description": "Token symbol", + "type": "string" + }, + "tiers": { + "description": "Array of holder tiers", + "items": { + "additionalProperties": {}, + "properties": { + "holder_count": { + "description": "Number of holders in this tier", + "type": "number" + }, + "min_balance_usd": { + "description": "Minimum balance in USD for this tier", + "type": "number" + }, + "tier": { + "description": "Tier name: poseidon, whale, shark, dolphin, squid, turtle", + "type": "string" + }, + "total_value_usd": { + "description": "Total value held by this tier in USD", + "type": "number" + } + }, + "required": [ + "tier", + "holder_count", + "min_balance_usd", + "total_value_usd" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "symbol", + "tiers" + ], + "type": "object" +}
- Changed
get_holder_rank1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "address": { + "description": "Wallet address", + "type": "string" + }, + "ranks": { + "description": "Array of holder rankings per token", + "items": { + "additionalProperties": {}, + "properties": { + "balance_usd": { + "description": "Balance value in USD", + "type": "number" + }, + "rank": { + "description": "Holder rank position", + "type": "number" + }, + "tier": { + "description": "Tier: poseidon, whale, shark, dolphin, squid, turtle", + "type": "string" + }, + "token_symbol": { + "description": "Token symbol", + "type": "string" + } + }, + "required": [ + "token_symbol", + "rank", + "tier", + "balance_usd" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "address", + "ranks" + ], + "type": "object" +}
- Changed
get_honeypots1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "honeypots": { + "description": "Array of detected honeypot tokens", + "items": { + "additionalProperties": {}, + "properties": { + "address": { + "description": "Honeypot token address", + "type": "string" + }, + "buy_tax": { + "description": "Buy tax percentage", + "type": "number" + }, + "detected_at": { + "description": "Detection timestamp in ISO format", + "type": "string" + }, + "name": { + "description": "Token name", + "type": "string" + }, + "sell_tax": { + "description": "Sell tax percentage (often 100% for honeypots)", + "type": "number" + }, + "symbol": { + "description": "Token symbol", + "type": "string" + } + }, + "required": [ + "address", + "name", + "symbol", + "detected_at", + "buy_tax", + "sell_tax" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "honeypots" + ], + "type": "object" +}
- Changed
get_market_overview2 fields changed- removed
Input schema / $schemaRemoved value: -"http://json-schema.org/draft-07/schema#" - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "active_tokens": { + "description": "Number of actively traded tokens", + "type": "number" + }, + "top_gainers": { + "description": "Tokens with largest 24h gains", + "items": { + "additionalProperties": {}, + "properties": { + "price_change_24h": { + "description": "24-hour price change percentage", + "type": "number" + }, + "symbol": { + "description": "Token symbol", + "type": "string" + } + }, + "required": [ + "symbol", + "price_change_24h" + ], + "type": "object" + }, + "type": "array" + }, + "top_losers": { + "description": "Tokens with largest 24h losses", + "items": { + "additionalProperties": {}, + "properties": { + "price_change_24h": { + "description": "24-hour price change percentage", + "type": "number" + }, + "symbol": { + "description": "Token symbol", + "type": "string" + } + }, + "required": [ + "symbol", + "price_change_24h" + ], + "type": "object" + }, + "type": "array" + }, + "tvl_usd": { + "description": "Total value locked in USD", + "type": "number" + }, + "volume_24h": { + "description": "Total 24-hour volume in USD", + "type": "number" + } + }, + "required": [ + "tvl_usd", + "volume_24h", + "active_tokens", + "top_gainers", + "top_losers" + ], + "type": "object" +}
- Changed
get_recent_swaps1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "swaps": { + "description": "Array of recent swaps", + "items": { + "additionalProperties": {}, + "properties": { + "amount_usd": { + "description": "Swap value in USD", + "type": "number" + }, + "timestamp": { + "description": "Swap timestamp in ISO format", + "type": "string" + }, + "token_in": { + "description": "Input token symbol", + "type": "string" + }, + "token_out": { + "description": "Output token symbol", + "type": "string" + }, + "tx_hash": { + "description": "Transaction hash", + "type": "string" + }, + "wallet": { + "description": "Swapper wallet address", + "type": "string" + } + }, + "required": [ + "tx_hash", + "wallet", + "token_in", + "token_out", + "amount_usd", + "timestamp" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "swaps" + ], + "type": "object" +}
- Changed
get_scam_alerts1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "alerts": { + "description": "Array of scam alerts", + "items": { + "additionalProperties": {}, + "properties": { + "alert_type": { + "description": "Type of alert: honeypot, lp_removal, whale_dump", + "type": "string" + }, + "details": { + "description": "Additional alert context", + "type": "string" + }, + "severity": { + "description": "Alert severity: low, medium, high, critical", + "type": "string" + }, + "timestamp": { + "description": "Alert timestamp in ISO format", + "type": "string" + }, + "token_address": { + "description": "Affected token address", + "type": "string" + }, + "token_symbol": { + "description": "Affected token symbol", + "type": "string" + } + }, + "required": [ + "alert_type", + "token_address", + "token_symbol", + "severity", + "timestamp" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "alerts" + ], + "type": "object" +}
- Changed
get_smart_money_feed1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "movements": { + "description": "Array of smart money movements", + "items": { + "additionalProperties": {}, + "properties": { + "action": { + "description": "Action type: buy, sell, transfer", + "type": "string" + }, + "amount_usd": { + "description": "Transaction value in USD", + "type": "number" + }, + "timestamp": { + "description": "Transaction timestamp in ISO format", + "type": "string" + }, + "token_symbol": { + "description": "Token symbol", + "type": "string" + }, + "wallet": { + "description": "Smart money wallet address", + "type": "string" + } + }, + "required": [ + "wallet", + "action", + "token_symbol", + "amount_usd", + "timestamp" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "movements" + ], + "type": "object" +}
- Changed
get_token_history1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "address": { + "description": "Token contract address", + "type": "string" + }, + "days": { + "description": "Number of days returned", + "type": "number" + }, + "history": { + "description": "Array of OHLCV candles", + "items": { + "additionalProperties": {}, + "properties": { + "close": { + "description": "Closing price in USD", + "type": "number" + }, + "date": { + "description": "Date in ISO format", + "type": "string" + }, + "high": { + "description": "Highest price in USD", + "type": "number" + }, + "low": { + "description": "Lowest price in USD", + "type": "number" + }, + "open": { + "description": "Opening price in USD", + "type": "number" + }, + "volume": { + "description": "Trading volume in USD", + "type": "number" + } + }, + "required": [ + "date", + "open", + "high", + "low", + "close", + "volume" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "address", + "days", + "history" + ], + "type": "object" +}
- Changed
get_token_info1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "address": { + "description": "Token contract address", + "type": "string" + }, + "decimals": { + "description": "Token decimal places", + "type": "number" + }, + "holder_count": { + "description": "Number of token holders", + "type": "number" + }, + "name": { + "description": "Token name", + "type": "string" + }, + "symbol": { + "description": "Token ticker symbol", + "type": "string" + }, + "total_liquidity_usd": { + "description": "Total liquidity in USD", + "type": "number" + }, + "volume_24h": { + "description": "24-hour trading volume in USD", + "type": "number" + } + }, + "required": [ + "address", + "name", + "symbol", + "decimals", + "total_liquidity_usd", + "volume_24h", + "holder_count" + ], + "type": "object" +}
- Changed
get_token_liquidity1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "address": { + "description": "Token contract address", + "type": "string" + }, + "pairs": { + "description": "Array of liquidity pairs", + "items": { + "additionalProperties": {}, + "properties": { + "dex": { + "description": "DEX name (e.g. PulseX)", + "type": "string" + }, + "liquidity_usd": { + "description": "Pair liquidity in USD", + "type": "number" + }, + "pair_address": { + "description": "DEX pair contract address", + "type": "string" + }, + "token0_symbol": { + "description": "First token symbol", + "type": "string" + }, + "token1_symbol": { + "description": "Second token symbol", + "type": "string" + }, + "volume_24h": { + "description": "24-hour volume in USD", + "type": "number" + } + }, + "required": [ + "pair_address", + "dex", + "token0_symbol", + "token1_symbol", + "liquidity_usd", + "volume_24h" + ], + "type": "object" + }, + "type": "array" + }, + "total_liquidity_usd": { + "description": "Total liquidity across all pairs in USD", + "type": "number" + } + }, + "required": [ + "address", + "total_liquidity_usd", + "pairs" + ], + "type": "object" +}
- Changed
get_token_price1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "address": { + "description": "Token contract address", + "type": "string" + }, + "market_cap": { + "description": "Market capitalization in USD", + "type": "number" + }, + "price_change_24h": { + "description": "24-hour price change percentage", + "type": "number" + }, + "price_usd": { + "description": "Current price in USD", + "type": "number" + }, + "volume_24h": { + "description": "24-hour trading volume in USD", + "type": "number" + } + }, + "required": [ + "address", + "price_usd", + "price_change_24h", + "volume_24h", + "market_cap" + ], + "type": "object" +}
- Changed
get_token_safety1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "address": { + "description": "Token contract address", + "type": "string" + }, + "buy_tax": { + "description": "Buy tax percentage", + "type": "number" + }, + "grade": { + "description": "Letter grade: A (safest) through F (dangerous)", + "type": "string" + }, + "is_honeypot": { + "description": "Whether the token is detected as a honeypot", + "type": "boolean" + }, + "ownership_renounced": { + "description": "Whether contract ownership has been renounced", + "type": "boolean" + }, + "score": { + "description": "Safety score from 0 (dangerous) to 100 (safe)", + "type": "number" + }, + "sell_tax": { + "description": "Sell tax percentage", + "type": "number" + } + }, + "required": [ + "address", + "score", + "grade", + "is_honeypot", + "buy_tax", + "sell_tax", + "ownership_renounced" + ], + "type": "object" +}
- Changed
get_top_pairs1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "pairs": { + "description": "Array of top trading pairs", + "items": { + "additionalProperties": {}, + "properties": { + "liquidity_usd": { + "description": "Total pair liquidity in USD", + "type": "number" + }, + "pair_address": { + "description": "DEX pair contract address", + "type": "string" + }, + "token0_symbol": { + "description": "First token symbol", + "type": "string" + }, + "token1_symbol": { + "description": "Second token symbol", + "type": "string" + }, + "volume_24h": { + "description": "24-hour volume in USD", + "type": "number" + } + }, + "required": [ + "pair_address", + "token0_symbol", + "token1_symbol", + "volume_24h", + "liquidity_usd" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "pairs" + ], + "type": "object" +}
- Changed
get_top_tokens1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "tokens": { + "description": "Array of top tokens", + "items": { + "additionalProperties": {}, + "properties": { + "address": { + "description": "Token contract address", + "type": "string" + }, + "liquidity_usd": { + "description": "Total liquidity in USD", + "type": "number" + }, + "name": { + "description": "Token name", + "type": "string" + }, + "price_usd": { + "description": "Current price in USD", + "type": "number" + }, + "symbol": { + "description": "Token ticker symbol", + "type": "string" + }, + "volume_24h": { + "description": "24-hour volume in USD", + "type": "number" + } + }, + "required": [ + "address", + "name", + "symbol", + "price_usd", + "volume_24h", + "liquidity_usd" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "tokens" + ], + "type": "object" +}
- Changed
get_wallet_balances1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "address": { + "description": "Wallet address", + "type": "string" + }, + "balances": { + "description": "Array of token balances", + "items": { + "additionalProperties": {}, + "properties": { + "balance": { + "description": "Raw token balance", + "type": "string" + }, + "token_address": { + "description": "Token contract address", + "type": "string" + }, + "token_symbol": { + "description": "Token symbol", + "type": "string" + }, + "value_usd": { + "description": "Balance value in USD", + "type": "number" + } + }, + "required": [ + "token_address", + "token_symbol", + "balance", + "value_usd" + ], + "type": "object" + }, + "type": "array" + }, + "total_value_usd": { + "description": "Total portfolio value in USD", + "type": "number" + } + }, + "required": [ + "address", + "total_value_usd", + "balances" + ], + "type": "object" +}
- Changed
get_wallet_swaps1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "address": { + "description": "Wallet address", + "type": "string" + }, + "swaps": { + "description": "Array of wallet swaps", + "items": { + "additionalProperties": {}, + "properties": { + "amount_usd": { + "description": "Swap value in USD", + "type": "number" + }, + "timestamp": { + "description": "Swap timestamp in ISO format", + "type": "string" + }, + "token_in": { + "description": "Input token symbol", + "type": "string" + }, + "token_out": { + "description": "Output token symbol", + "type": "string" + }, + "tx_hash": { + "description": "Transaction hash", + "type": "string" + } + }, + "required": [ + "tx_hash", + "token_in", + "token_out", + "amount_usd", + "timestamp" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "address", + "swaps" + ], + "type": "object" +}
20 tool updates
v0.1.1- Added
check_address_risk - Added
get_bridge_stats - Added
get_deployer_reputation - Added
get_funding_tree - Added
get_holder_leagues - Added
get_holder_rank - Added
get_honeypots - Added
get_market_overview - Added
get_recent_swaps - Added
get_scam_alerts - Added
get_smart_money_feed - Added
get_token_history - Added
get_token_info - Added
get_token_liquidity - Added
get_token_price - Added
get_token_safety - Added
get_top_pairs - Added
get_top_tokens - Added
get_wallet_balances - Added
get_wallet_swaps
20 tool updates
v0.1.0- Removed
check_address_risk - Removed
get_bridge_stats - Removed
get_deployer_reputation - Removed
get_funding_tree - Removed
get_holder_leagues - Removed
get_holder_rank - Removed
get_honeypots - Removed
get_market_overview - Removed
get_recent_swaps - Removed
get_scam_alerts - Removed
get_smart_money_feed - Removed
get_token_history - Removed
get_token_info - Removed
get_token_liquidity - Removed
get_token_price - Removed
get_token_safety - Removed
get_top_pairs - Removed
get_top_tokens - Removed
get_wallet_balances - Removed
get_wallet_swaps
17 tool updates
- Added
check_address_risk - Added
get_bridge_stats - Added
get_deployer_reputation - Added
get_funding_tree - Added
get_holder_leagues - Added
get_holder_rank - Added
get_honeypots - Added
get_market_overview - Added
get_recent_swaps - Added
get_scam_alerts - Added
get_smart_money_feed - Added
get_token_liquidity - Added
get_token_safety - Added
get_top_pairs - Added
get_top_tokens - Added
get_wallet_balances - Added
get_wallet_swaps
3 tool updates
- First observed
get_token_history - First observed
get_token_info - First observed
get_token_price
TDQS
Tools are generally distinct but a few have overlapping purposes, e.g., get-token-price and get-token-info both provide price data, and get-market-overview overlaps with get-top-tokens and get-top-pairs. However, most tools target unique aspects such as risk, reputation, or specific analytics.
All tools follow a consistent verb_noun pattern with snake_case (e.g., get-token-info, check-address-risk, get-bridge-stats). The naming is predictable and clear, making it easy for agents to understand the action and target.
20 tools is well-scoped for a blockchain analytics MCP server. Each tool covers a specific analytical need without redundancy, making the set comprehensive yet manageable.
The server covers a wide range of analytics: token details, prices, history, liquidity, safety, scams, market overview, wallet balances, swaps, holder data, and advanced features like smart money and funding trees. Minor gaps exist, such as missing raw transaction or block data, but core analytics are well represented.
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
Blockchain analytics API for AI agents. Smart Money signals, wallet profiling, token analytics.
Blockchain analytics API for AI agents. Smart Money signals, wallet profiling, token analytics.
AI price forecasts, whale flows, market sentiment and prediction signals. 18 tools free, no account.
DeFi safety layer for AI agents: wallet safety, token risk, tx decode/simulate. 20 tools.
Related MCP Servers
- AlicenseAqualityCmaintenanceDescription: EVM blockchain intelligence toolkit for AI agents. 20 tools for token prices, gas comparison, swap quotes, yield rates, honeypot detection, and transaction simulation across 5 EVM chains. Zero config, no API keys required.26583MIT
- AlicenseNot gradedqualityCmaintenanceAI-powered crypto signal intelligence for 20 assets (BTC, ETH, SOL, etc). 6 scoring dimensions: whale activity, technical analysis, derivatives flow, narrative strength, sentiment, market structure. Market regime detection (TRENDING/RANGING), portfolio optimization, and accuracy tracking. 9 read-only MCP tools. Free via MCP, $0.001 USDC via x402 on Base for REST API.3MIT
- AlicenseNot gradedqualityCmaintenanceToken safety oracle for AI agents. Honeypot detection, 17 scam pattern checks, LP lock verification across 6 EVM chains. Score 0-100 with risk flags. ERC Token Safety Score standard.1MIT
- AlicenseNot gradedqualityCmaintenanceMCP server that provides AI agents with crypto token safety checks (honeypot, liquidity, rug risk) and alpha signals (smart money buys, fresh rug radar) across PulseChain, Monad, Base, and BSC.61MIT
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/openpulsechain/public'
If you have feedback or need assistance with the MCP directory API, please join our Discord server