Skip to main content
Glama
zerouter

zerouter

Official
by zerouter

zerouter MCP

MCP (Model Context Protocol) server for zerouter, the swap router on Robinhood Chain (chain id 4663).

It lets any MCP client (Claude, Cursor, and others) quote swaps with equity-aware guardrails: routing across on-chain Uniswap v3 and v4 plus Odos, with a Chainlink fair-price check and market-hours warnings for tokenized stocks.

The server is read-only. It quotes and returns calldata for the caller to sign; it never holds keys and never executes transactions.

Tools

  • get_quote: best swap quote for a pair. Accepts human decimal amounts (e.g. "1.5"), converts to base units using the token decimals, and returns the winning source, all source prices, and the guardrail block for stock-token swaps (oracle fair price, deviation in bps, market session, warnings). Pass taker to get firm calldata (to, data, value) ready to sign, and optionally recipient to route proceeds elsewhere.

  • get_token: symbol and decimals for an ERC-20 address on the chain.

  • health: API reachability and configured quote sources.

  • chain_info: static chain reference and usage notes.

Related MCP server: @getplexa/mcp

Install

npm install
npm run build

Use with Claude Code

claude mcp add zerouter -- node /path/to/mcp/dist/index.js

Use with Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "zerouter": {
      "command": "node",
      "args": ["/path/to/mcp/dist/index.js"]
    }
  }
}

Configuration

  • ZEROUTER_API_URL (optional): override the API base. Defaults to https://api.zerouter.app.

No API keys are needed. Quote requests go only to the zerouter API, which routes against on-chain quoters over RPC, so no third party sees trade intent.

Example

Ask your client: "quote swapping 0.5 ETH to AAPL on Robinhood Chain". The get_quote result includes a guardrail like:

{
  "deviationBps": -34,
  "market": { "open": false, "reason": "weekend" },
  "warnings": [
    "us stock market is closed (weekend) - on-chain price can drift from the last real market price"
  ]
}

Negative deviationBps means the quote pays less than the oracle-fair amount.

License

MIT

Available Tools

4 tools
chain_infoChain infoA

Static reference: chain id, native token pseudo-address, and how token amounts and guardrails work on zerouter.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The phrase 'static reference' discloses that the tool has no side effects and is read-only, which is useful. However, with no annotations provided, the description carries the burden, and it does not mention return format, pagination, or any potential limits. The disclosure is minimal but not misleading.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence that names the tool's purpose and content. No waste or repetition. The most important information ('static reference') is first.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless reference tool, the description names the key pieces of data (chain id, token address, guardrails). It does not specify output structure, but with no output schema, a bit more detail on return format could help. Still, the coverage is adequate for an informational tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the schema already trivially covers all parameter semantics. The description adds no parameter-specific information, but none is needed. Baseline 4 applies per the rubric.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it is a static reference covering chain id, native token pseudo-address, and token amount/guardrail behavior. This is distinct from sibling tools like get_quote and get_token, which are action-oriented. No ambiguity about what the tool provides.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use it (when you need reference data about chain configuration) but does not explicitly contrast with siblings or state when not to use it. For a reference tool, the context is fairly clear, but there is no guidance on alternative tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_quoteGet swap quoteA

Get the best swap quote on Robinhood Chain (chain id 4663). Routes across on-chain Uniswap v3 and v4 plus Odos and returns the winning price. For swaps involving tokenized stocks it also returns a fair-price guardrail: the Chainlink oracle price, the deviation of the quote from it in bps, whether the US stock market is open, and plain-language warnings. Omit taker for an indicative price. Provide taker (the address that will send the transaction) to get firm calldata (to, data, value) ready to sign. This tool never executes anything, it only quotes.

ParametersJSON Schema
NameRequiredDescriptionDefault
takerNoAddress that will execute the swap. Include it to receive firm calldata.
buyTokenYesToken to buy: an ERC-20 address on chain 4663, or "native" for ETH
recipientNoOptional address to receive the proceeds instead of the taker. Requires taker.
sellTokenYesToken to sell: an ERC-20 address on chain 4663, or "native" for ETH
sellAmountYesAmount to sell as a human decimal string, e.g. "1.5" for 1.5 tokens. Converted to base units automatically using the token decimals.
slippageBpsNoMax slippage in basis points, 1 to 5000. Default 100 (1%).

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden and does so well: it states the tool never executes anything, only quotes; it names the fair-price guardrail for tokenized stocks; and it distinguishes indicative vs firm calldata results. This gives an agent what it needs to safely invoke the tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four sentences, no fluff: purpose, route behavior, guardrail, taker semantics, safety. The most important facts are front-loaded and every sentence adds information an agent needs.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is strong for a read-only quote tool with no output schema: it explains return concepts (price, guardrail, calldata) and execution safety. It could be slightly more explicit about the exact quote response shape, but all critical invocation context is present.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds real value beyond the schema by explaining the taker omission/presence semantics and the calldata fields returned, and by clarifying that sellAmount is converted automatically. That lifts it above baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: 'Get the best swap quote on Robinhood Chain (chain id 4663)' and details routing across Uniswap v3/v4 and Odos. This clearly distinguishes get_quote from its siblings (get_token, health, chain_info), which serve token metadata, health, and chain info respectively.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives clear usage context: omit taker for an indicative price, provide taker for firm signable calldata. It does not explicitly name alternative tools or exclusion conditions, but the sibling set is unrelated and the instructions make the quote/execution boundary obvious.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_tokenGet token metadataA

Look up an ERC-20 token on Robinhood Chain by address. Returns its symbol and decimals. Errors if the address is not an ERC-20 token on this chain.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesERC-20 token address (0x...)

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations at all, the description carries the full burden of behavioral disclosure. It states that it errors if the address is not an ERC-20 token, which is useful error behavior. However, it doesn't disclose potential rate limits, network latency, or any side effects, and the operation is read-only but the description doesn't explicitly state that. Adequate but not exhaustive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences long, front-loaded with the purpose and followed by an error condition. No unnecessary words, and every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one well-documented parameter and no output schema, the description is sufficient: it explains what it does, what it returns, and a key error condition. It misses details like return format specifics, but given the minimal complexity, the description is complete enough for an agent to use correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, with the only parameter being the address with a description. The tool description adds little beyond rephrase of the parameter's purpose, just stating it looks up by address. Since the schema covers the parameter well, the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool looks up an ERC-20 token by address on Robinhood Chain and returns symbol and decimals. It distinguishes itself from siblings by focusing on token metadata rather than quotes or health. However, it doesn't explicitly name the siblings that it is not, so it falls short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool should be used when you need token symbol and decimals given an address. It provides no explicit guidance on when to use alternatives like get_quote, but the context of looking up metadata versus quotes is clear. No exclusions are provided, earning a 3.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

healthCheck router healthA

Check that the zerouter quote API is reachable and list its configured quote sources.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It only states what will be done ('check' and 'list') without disclosing whether this is read-only, whether it may throw specific errors, or what side conditions affect the agent's expectations. An agent must infer that this is a non-mutating health probe.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short clauses deliver the complete meaning with no filler. The action ('Check') and the additional output ('list its configured quote sources') are both front-loaded, so an agent gets the key facts immediately.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter tool with no output schema, the description covers the functional scope well: it names the connectivity target and the `list` semantic hints at a useful return. It doesn't specify the exact return shape (e.g., boolean or addition of a quote source list), but the low complexity and the natural conclusion from 'check' and 'list' make this sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema is empty with zero parameters, giving 0-param baseline of 4. The description correctly implies the tool takes no inputs, and the phrase 'zerouter quote API' clarifies exactly what the health check covers. With no parameters to describe, this is sufficient.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses explicit verbs 'check' and 'list' and specifically names the resource (zerouter quote API) and the focused output (its configured quote sources). This clearly distinguishes it from siblings like get_quote, get_token, and chain_info, which would retrieve data or metadata rather than probe reachability.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no context for when to use this tool versus siblings, no prerequisites, and no exclusion conditions. The agent must guess that this is the right tool for a connectivity probe; there is no explicit mention of scenarios such as "before calling get_quote".

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updatesv0.1.0
    • First observedchain_info
    • First observedget_quote
    • First observedget_token
    • First observedhealth

TDQS

A4/5.0

Scored across 4 tools

Disambiguation5/5

Each tool has a distinct purpose: get_quote retrieves swap quotes, get_token fetches token metadata, health checks API status, and chain_info provides static chain reference. No overlap or ambiguity between them.

Naming Consistency4/5

Most tools follow verb_noun pattern (get_quote, get_token), while health and chain_info use noun-style names. The pattern is readable and predictable, with minor deviation in non-get tools, but still clear.

Tool Count5/5

Four tools is well-scoped for a specialized quoting API. Each tool earns its place: core quote operation, token helper, health check, and reference info. No redundancy or missing essential functions.

Completeness4/5

The surface covers the primary lifecycle of a quoting service: getting quotes, token lookup, health monitoring, and chain reference. A minor gap is lack of token list/search, but not required for the core purpose.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    A Model Context Protocol server that gives any MCP client two economic-safety tools: realizable quote and pretrade check, paid per call in USDC with no accounts.
    2
    49 npm
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Provides access to live swap quotes and routing on the Base network via the o1.exchange DEX aggregator. Read-only and safe by default, it returns routing data and unsigned calldata for you to sign in your own wallet.
    3
    MIT