research-mcp
Provides market data and on-chain source-of-truth reads for tokenized stocks on Robinhood Chain, including token supply, holders, contract verification, and TVL.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@research-mcpwhat's the current price and 24h change for TSLA?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
research-mcp
MCP server that exposes ATLAS research capability to other agents: live tokenized stock data on Robinhood Chain, on-chain source-of-truth reads, and the research atlases published by the autonomous ATLAS agent. Any MCP capable client (Claude Code, Claude Desktop, custom agents) connects over stdio.
Works out of the box against the public Robinhood Chain testnet endpoints, no API keys needed.
Tools
Market data:
list_markets: the tokenized stocks on the chain, discovered by merging the Blockscout ERC-20 index (ranked by holders) with GeckoTerminal's trading pools (ranked by liquidity), each classified as equity or notget_token_market: price, 1h/24h change, market cap, liquidity, and volume for a ticker or contract address, via GeckoTerminalchain_tvl: the chain's TVL landscape from DefiLlama, with DEX venues and the RWA category called out
On-chain source of truth:
get_token_supply: ERC-20 total supply read directly from chain JSON-RPC at the current blockverify_token_contract: bytecode, on-chain name/symbol/decimals, block, and chain id for an addressget_token_holders: holder count and top-10 concentration from the Blockscout index
Published research (set ATLAS_API_URL to a running ATLAS deployment):
list_research_atlases: the agent's published research atlases, newest firstget_observation_history: the agent's recorded time series for a ticker,chain-tvl, or a contract addressget_agent_status: model, chain config, publish interval, and memory stats
Tickers resolve through discovery, so TSLA finds the tokenized Tesla contract without a hand written registry. Classification is a heuristic over symbol and name (issuer suffixes, tokenized-equity wording, and company-name corroboration for plain names like "Tesla"), so anything surprising can be verified on chain with verify_token_contract.
Related MCP server: ibkr-mcp
Setup
npm install
npm run buildConfiguration
All optional, via environment variables:
Variable | Default | Purpose |
|
| Display name used in tool output |
|
| GeckoTerminal network slug |
|
| DefiLlama chain name |
| public testnet RPC | EVM JSON-RPC endpoint for on-chain reads |
| public testnet explorer | Blockscout instance for token index and holders |
| unset | Base URL of an ATLAS deployment, enables research feed tools |
Connect a client
Claude Code:
claude mcp add atlas-research -- node /path/to/research-mcp/dist/index.jsOr in any MCP client config:
{
"mcpServers": {
"atlas-research": {
"command": "node",
"args": ["/path/to/research-mcp/dist/index.js"],
"env": {
"ATLAS_API_URL": "https://your-atlas-deployment"
}
}
}
}Available Tools
9 toolschain_tvlA
Where capital sits on Robinhood Chain, from DefiLlama: total TVL, the largest protocols with 1d/7d change, the DEX venues where tokenized stocks actually trade, and the RWA-category subset. Use for market structure, venue depth, and trend analysis.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden for behavioral disclosure. It adds useful context (data source DefiLlama, categories like DEX venues and RWA subset), but it does not explicitly state whether this is a read-only operation, nor does it mention return format, latency, or other behavioral traits. This is adequate for a simple data-retrieval tool but not comprehensive.
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 that pack in the data source, the specific output components, and the intended use cases. Every clause adds value, with no fluff or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description should explain what the tool returns. It does list the output components (TVL, protocols, DEX venues, RWA subset) and provides use-case guidance. It could be more explicit about whether the data is a snapshot or includes historical trends, but the 1d/7d change hints at time-lapse. Overall, it is complete enough for a zero-parameter 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?
There are zero parameters, so the schema coverage is 100% by default. The description correctly avoids inventing parameter details. Per calibration, a baseline of 4 applies to zero-parameter tools, and the description adds no unnecessary parameter information.
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 what the tool provides: total TVL, largest protocols with 1d/7d change, DEX venues, and RWA subset on Robinhood Chain. It lacks an explicit verb like 'get' or 'list', but the resource and scope are unambiguous, distinguishing it from sibling tools that cover markets, tokens, and agents.
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 explicitly says 'Use for market structure, venue depth, and trend analysis,' providing clear contexts for use. However, it doesn't mention when not to use it or name specific alternatives, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_agent_statusA
Status of the ATLAS research agent: model, chain configuration, publish interval, atlas count, and memory stats. Requires ATLAS_API_URL.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It implies a read-only status check and lists the returned data, but it does not explicitly state that there are no side effects or describe error/edge-case behavior. The ATLAS_API_URL requirement is a useful context, but safety is only implied.
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 states the purpose first and then lists key details. There is no filler; every phrase contributes meaningful 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?
Since there is no output schema, the description takes on the job of explaining return values by naming five categories of status data. It does not fully describe the response structure or possible error conditions, but for a simple status tool it is reasonably 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 schema has zero parameters, so there are no property descriptions to rely on. The description adds value by mentioning a non-parameter configuration requirement (ATLAS_API_URL) and describing the content of the status report. This meets the baseline for zero-parameter tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description starts with 'Status of the ATLAS research agent' which clearly identifies both the resource and the action. It enumerates specific fields (model, chain configuration, publish interval, atlas count, memory stats) making it distinct from all sibling tools that focus on markets or 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?
The description provides a prerequisite ('Requires ATLAS_API_URL') but no explicit guidance on when to use this tool versus alternatives. The context is implied by the tool name and the fact it is the only agent-status tool among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_observation_historyA
The ATLAS agent's recorded observation time series, for trend detection and day-over-day comparison. Keys: a ticker like 'TSLA' (price snapshots), 'chain-tvl' (TVL), or a contract address (on-chain supply and holders). Requires ATLAS_API_URL.
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | Ticker, 'chain-tvl', or contract address | |
| limit | No | Max snapshots, default 50. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears the burden. It discloses a prerequisite ('Requires ATLAS_API_URL') and explains key types. However, it does not explicitly state the operation is read-only, describe error behavior, or mention rate limits or pagination beyond the limit parameter.
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 three sentences long, with no redundant information. The first sentence states purpose, the second explains key types, and the third gives the environment requirement. Every sentence 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?
With no output schema, the description could specify the response structure, but 'time series' implies a sequence of snapshots. The tool has few parameters and no annotations, and the description covers purpose, key semantics, and environment needs, making it reasonably 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 schema already covers both parameters, but the description adds valuable examples ('TSLA' for price snapshots, 'chain-tvl', contract address for supply/holders), enriching the key parameter semantics beyond the schema's brief description.
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 identifies the tool as providing 'The ATLAS agent's recorded observation time series' with a specific use case ('trend detection and day-over-day comparison'). This distinguishes it from sibling tools that focus on current market data, token supply, holders, and TVL.
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 states the tool is for 'trend detection and day-over-day comparison', giving clear context for when to use it. It does not explicitly name alternatives or exclusions, but the purpose statement implicitly differentiates it from sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_token_holdersA
Holder count and top-10 holder concentration for an ERC-20 on Robinhood Chain, from the Blockscout index. Use to analyze how concentrated ownership of a tokenized asset is. Accepts a ticker or contract address.
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | Ticker or ERC-20 contract address (0x...) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the data source (Blockscout index) and input flexibility (ticker or contract address), but does not explicitly mention safety profile, side effects, or error behavior. For a simple read-only query, this is adequate but not rich.
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 sentences, immediately states what the tool returns, and avoids any filler. It is front-loaded and every sentence 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 the tool's low complexity (one parameter, no output schema), the description is nearly complete. It specifies the key outputs (holder count and top-10 concentration), data source, and input. It omits potential limitations or error cases, but for a simple query 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?
The schema already provides 100% coverage of the single parameter 'token' with a clear description ('Ticker or ERC-20 contract address (0x...)'). The description reinforces this but adds no new meaning beyond what the schema offers, so the 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 states the tool's function: it returns holder count and top-10 holder concentration for an ERC-20 on Robinhood Chain. This specific verb-resource pairing distinguishes it from sibling tools like get_token_supply or get_token_market, which focus on different data 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 explicitly says to use it for analyzing how concentrated ownership of a tokenized asset is, which provides clear context. It does not name alternative tools or state when not to use it, but the intended use case is well implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_token_marketA
Market view of a tokenized stock on Robinhood Chain: price, 1h/24h price change, market cap, pool liquidity, and 24h volume, via GeckoTerminal. Accepts a ticker (TSLA finds TSLAx) or an ERC-20 contract address.
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | Ticker (e.g. 'TSLA') or 0x contract address |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It reveals the data source (GeckoTerminal) and implicitly frames this as a read-only 'view', but does not explicitly state safety, error behavior, rate limits, or permissions. This is moderate transparency for a simple market lookup.
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 sentences long, front-loaded with the core purpose and output list, followed by input guidance. Every sentence contributes relevant information 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?
For a single-parameter tool with no output schema, the description provides the key return fields and input formats. It omits explicit response formatting and failure cases, but still gives an agent enough context to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Although the schema already covers the 'token' parameter with 100% completeness, the description adds valuable nuance by explaining that a ticker like 'TSLA' resolves to 'TSLAx', a behavior not mentioned in the schema. It also confirms both accepted input types.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: retrieving a market view of a tokenized stock with specific data fields (price, 1h/24h change, market cap, pool liquidity, 24h volume) via GeckoTerminal. This distinguishes it from siblings like list_markets and get_token_supply by focusing on a single token's market 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 implies when to use this tool (for market data of a specific token) and explains acceptable inputs (ticker or contract address), but it does not explicitly contrast with sibling tools or state when not to use it. No alternatives or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_token_supplyA
Source of truth: read an ERC-20's total supply directly from Robinhood Chain JSON-RPC at the current block. Use to verify issuance and redemption of a tokenized stock. Accepts a ticker or contract address.
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | Ticker or ERC-20 contract address (0x...) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden and does well by noting the tool reads 'directly from Robinhood Chain JSON-RPC at the current block,' implying a live, authoritative read rather than a cached value. It also labels itself as 'Source of truth,' setting expectations for accuracy.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three succinct sentences each serve a purpose: the first states the core function and data source, the second gives a concrete use case, and the third clarifies the accepted input. 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?
For a simple single-parameter read tool, the description covers what it does, when to use it, and what input is expected. It does not explicitly describe the return format or error behavior, but given the simplicity and absence of an output schema, this is adequate.
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% since the token property is described as 'Ticker or ERC-20 contract address (0x...)' and the description repeats this nearly verbatim. It adds minimal extra meaning beyond the schema, so baseline 3 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?
Clearly states the tool reads an ERC-20's total supply directly from Robinhood Chain JSON-RPC at the current block. This specific verb-resource combination differentiates it from siblings like get_token_holders or get_token_market.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly provides a use case: 'Use to verify issuance and redemption of a tokenized stock.' However, it does not explicitly mention when not to use it or name alternative tools for similar tasks, so it stops short of a full 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_marketsA
The tokenized stocks that exist on Robinhood Chain, discovered from the chain's trading pools rather than a hand written list. Returns ticker, contract address, liquidity, and why each was classified as an equity or not. Call this first to learn what is available to research.
| Name | Required | Description | Default |
|---|---|---|---|
| refresh | No | Re-run discovery instead of using the cached universe (slower). Default false. | |
| includeNonEquity | No | Also return tokens classified as stablecoins, wrapped assets or pool tokens. Default false. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It reveals the data source (chain trading pools), return fields, and classification methodology. However, it does not mention caching behavior, potential latency, or explicitly state that it is a read-only operation, though these are somewhat implied and partially covered by the schema's refresh parameter.
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 sentences, front-loaded with the core purpose, and every sentence adds value: source, return fields, and usage priority. 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?
For a low-complexity list tool with 2 well-described parameters and no output schema, the description adequately covers return values and purpose. It could mention result limits or pagination, but given the simple nature and schema coverage, it is sufficiently 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 with both parameters (refresh and includeNonEquity) fully described. The description adds no parameter-specific meaning but also does not need to, as the schema already provides clear semantics. This aligns with the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states what the tool does: lists tokenized stocks on Robinhood Chain, discovered from trading pools. It specifies the returned fields (ticker, contract address, liquidity, and equity classification logic), and positions itself as the entry point for research. This distinguishes it from sibling tools that focus on individual token 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 explicitly says 'Call this first to learn what is available to research', providing clear when-to-use guidance. It does not explicitly name alternatives or when not to use, but the 'first' instruction strongly implies a discovery role before using more specific token tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_research_atlasesA
The ATLAS agent's published research atlases: autonomous analyses of tokenized stocks and the RWA ecosystem, one per cycle, newest first. Each records the current conclusion, what changed since the previous atlas, and the evidence behind it. Requires ATLAS_API_URL.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max atlases to return, default 10. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden. It discloses ordering (newest first), frequency (one per cycle), content structure (conclusion, changes, evidence), and a setup requirement (ATLAS_API_URL). It doesn't explicitly state read-only nature or rate limits, but for a listing operation this is reasonably transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two well-structured sentences: first defines the tool's output and ordering, second details item contents and requirement. No filler or repetition.
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?
Despite no output schema, the description explains what each atlas contains and the ordering. Combined with the optional limit parameter in the schema, it fully covers the tool's behavior for an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter, 'limit', is fully described in the schema with default and range. The description adds no additional parameter semantics, so baseline 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 identifies the resource (research atlases), defines their nature (autonomous analyses of tokenized stocks and RWA ecosystem), and differentiates from sibling market/token tools by focusing on research outputs. The verb is implicit but obvious from the name and context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description establishes clear context for when to use it: to retrieve ATLAS agent's published research atlases. It doesn't explicitly name alternatives or exclusions, but the niche is unambiguous given sibling tools are market data, so clear context without exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_token_contractA
Source of truth: verify an ERC-20 contract on Robinhood Chain: whether bytecode is deployed at the address, its on-chain name/symbol/decimals, the current block, and the chain id the RPC reports. Use before trusting a market quote.
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | Ticker or ERC-20 contract address (0x...) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It clearly discloses what the tool checks and returns (bytecode presence, name/symbol/decimals, block, chain ID), implying a read-only non-destructive operation. It doesn't mention error cases or response format, but for a verification tool this is reasonable disclosure.
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 sentences, front-loaded with purpose and output details, followed by a clear usage directive. Every sentence earns its place 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 single-parameter read-only verification tool, the description covers the essential aspects: what the tool does, the inputs it accepts, the outputs it reports, and when to use it. It doesn't specify the return format, which could be inferred from the listed items, and there is no output schema. Given the tool's simplicity, this is sufficiently 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 schema already provides a complete parameter description ('Ticker or ERC-20 contract address (0x...)'), so schema coverage is 100%. The description adds context about verification but offers no additional parameter-specific semantics beyond what the schema states, aligning with 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 the tool's function: verifying an ERC-20 contract on Robinhood Chain. It lists the specific checks performed (bytecode deployment, on-chain name/symbol/decimals, current block, chain ID), which distinguishes it from sibling tools focused on market data, supply, holders, and TVL.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'Use before trusting a market quote' provides explicit guidance on when this tool should be invoked. It doesn't explicitly state when not to use it or name alternatives, but the context is clear and actionable.
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.
9 tool updates
v0.2.0- First observed
chain_tvl - First observed
get_agent_status - First observed
get_observation_history - First observed
get_token_holders - First observed
get_token_market - First observed
get_token_supply - First observed
list_markets - First observed
list_research_atlases - First observed
verify_token_contract
TDQS
Each tool targets a distinct resource: market listings, token market data, supply, contract verification, holders, chain-level TVL, research atlases, observation history, and agent status. Even tools that share a resource (e.g., supply vs. verify) return non-overlapping information, and descriptions make their purposes clear.
Most tools follow verb_noun pattern with get_ and list_ prefixes, e.g., list_markets, get_token_market, get_observation_history. The exception is chain_tvl, which uses a bare noun phrase, deviating slightly from the otherwise consistent convention.
Nine tools is well within the ideal range for a focused research MCP. Each tool covers a specific aspect of the domain—market discovery, token analytics, chain metrics, and agent research—without redundancy or unnecessary bloat.
The tool set covers the full research lifecycle: discovering available markets, getting current and historical data, verifying on-chain facts, analyzing holders and liquidity, and accessing agent-generated research. No obvious missing operations for the stated purpose of researching tokenized stocks on Robinhood Chain.
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
Live prices, perps, prediction markets and a paper trading desk over one MCP.
MCP server for OpenMM — exposes market data, account, trading, and strategy tools to AI agents
MCP server for querying Forkast documentation
Read-only MCP server for Robinhood Chain token discovery, research, and due diligence via GMGN.
Related MCP Servers
- AlicenseBqualityCmaintenanceAn MCP server that gives an LLM agent a typed, audited tool surface over quant crypto-options desk analytics: gamma exposure, vanna, skew, vol surface, options flow, technicals, portfolio greeks, scenario analysis, and live positions.221MIT
- AlicenseAqualityDmaintenanceA read-only MCP server that connects to Interactive Brokers Gateway or TWS to expose account, contract, execution, and historical-data queries over stdio.919MIT

atpar-mcp-serverofficial
AlicenseAqualityDmaintenanceMCP server for the At Par Trading API — trade crypto, manage portfolios, and access market data from any MCP-compatible AI agent.16MIT
AgentPump MCP serverofficial
AlicenseNot gradedqualityBmaintenanceMCP server for the AgentPump agent economy, enabling live market data reads and autonomous agent operations on Solana.58MIT
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/atlas-rwa/research-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server