Skip to main content
Glama

get_price

USD price of one whole token on one chain, priced from the pools LCX Liberty DEX indexes itself (real depth, not a mid-market feed). Use it for a token's value; use get_quote for what a specific amount would swap for, and search_tokens first to turn a ticker into an address. Read-only. Returns usd, change24h (a ratio: 0.0123 is +1.23%), source, and the age of the pool state behind the price (asOfBlock, ageSeconds, stale). When there is no honest price, usd is null and reason says why (for example token_not_indexed or below_depth_floor) instead of an error.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "chainId": "<chainId>",
      "token": "<token>"
    },
    "name": "get_price"
  }
}

Input Schema

NameRequiredDescriptionDefault
tokenYesToken address on that chain. Use the zero address for the chain's native coin; on Arc, whose native coin is USDC, use its contract 0x3600000000000000000000000000000000000000.
chainIdYes1 Ethereum, 8453 Base, 42161 Arbitrum One, 10 OP Mainnet, 4663 Robinhood Chain, 56 BNB Chain, 137 Polygon, 43114 Avalanche, 130 Unichain, 143 Monad, 5042 Arc, 999 HyperEVM, 9745 Plasma, 59144 Linea, 4326 MegaETH, 57073 Ink, 480 World Chain, 1868 Soneium, 100 Gnosis, 25 Cronos, 146 Sonic

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / chainId / description
      Previous value: -"1 Ethereum, 8453 Base, 42161 Arbitrum One, 10 OP Mainnet, 4663 Robinhood Chain, 56 BNB Chain, 137 Polygon, 43114 Avalanche, 130 Unichain, 143 Monad, 5042 Arc, 999 HyperEVM, 59144 Linea, 57073 Ink, 480 World Chain, 1868 Soneium, 25 Cronos"New value: +"1 Ethereum, 8453 Base, 42161 Arbitrum One, 10 OP Mainnet, 4663 Robinhood Chain, 56 BNB Chain, 137 Polygon, 43114 Avalanche, 130 Unichain, 143 Monad, 5042 Arc, 999 HyperEVM, 9745 Plasma, 59144 Linea, 4326 MegaETH, 57073 Ink, 480 World Chain, 1868 Soneium, 100 Gnosis, 25 Cronos, 146 Sonic"
    • changedInput schema / properties / chainId / enum
      Previous value: -[
      -  1,
      -  8453,
      -  42161,
      -  10,
      -  4663,
      -  56,
      -  137,
      -  43114,
      -  130,
      -  143,
      -  5042,
      -  999,
      -  59144,
      -  57073,
      -  480,
      -  1868,
      -  25
      -]New value: +[
      +  1,
      +  8453,
      +  42161,
      +  10,
      +  4663,
      +  56,
      +  137,
      +  43114,
      +  130,
      +  143,
      +  5042,
      +  999,
      +  9745,
      +  59144,
      +  4326,
      +  57073,
      +  480,
      +  1868,
      +  100,
      +  25,
      +  146
      +]
  2. Changed2 schema fields changed
    • changedInput schema / properties / chainId / description
      Previous value: -"1 Ethereum, 8453 Base, 42161 Arbitrum One, 10 OP Mainnet, 4663 Robinhood Chain, 56 BNB Chain, 137 Polygon, 43114 Avalanche, 130 Unichain, 143 Monad, 5042 Arc, 999 HyperEVM, 9745 Plasma, 59144 Linea, 4326 MegaETH, 57073 Ink, 480 World Chain, 1868 Soneium, 100 Gnosis, 25 Cronos, 146 Sonic"New value: +"1 Ethereum, 8453 Base, 42161 Arbitrum One, 10 OP Mainnet, 4663 Robinhood Chain, 56 BNB Chain, 137 Polygon, 43114 Avalanche, 130 Unichain, 143 Monad, 5042 Arc, 999 HyperEVM, 59144 Linea, 57073 Ink, 480 World Chain, 1868 Soneium, 25 Cronos"
    • changedInput schema / properties / chainId / enum
      Previous value: -[
      -  1,
      -  8453,
      -  42161,
      -  10,
      -  4663,
      -  56,
      -  137,
      -  43114,
      -  130,
      -  143,
      -  5042,
      -  999,
      -  9745,
      -  59144,
      -  4326,
      -  57073,
      -  480,
      -  1868,
      -  100,
      -  25,
      -  146
      -]New value: +[
      +  1,
      +  8453,
      +  42161,
      +  10,
      +  4663,
      +  56,
      +  137,
      +  43114,
      +  130,
      +  143,
      +  5042,
      +  999,
      +  59144,
      +  57073,
      +  480,
      +  1868,
      +  25
      +]
  3. Changed2 schema fields changed
    • changedInput schema / properties / chainId / description
      Previous value: -"1 Ethereum, 8453 Base, 42161 Arbitrum One, 10 OP Mainnet, 4663 Robinhood Chain, 56 BNB Chain, 137 Polygon, 43114 Avalanche, 130 Unichain, 143 Monad, 5042 Arc, 999 HyperEVM, 59144 Linea, 57073 Ink, 480 World Chain, 1868 Soneium, 25 Cronos"New value: +"1 Ethereum, 8453 Base, 42161 Arbitrum One, 10 OP Mainnet, 4663 Robinhood Chain, 56 BNB Chain, 137 Polygon, 43114 Avalanche, 130 Unichain, 143 Monad, 5042 Arc, 999 HyperEVM, 9745 Plasma, 59144 Linea, 4326 MegaETH, 57073 Ink, 480 World Chain, 1868 Soneium, 100 Gnosis, 25 Cronos, 146 Sonic"
    • changedInput schema / properties / chainId / enum
      Previous value: -[
      -  1,
      -  8453,
      -  42161,
      -  10,
      -  4663,
      -  56,
      -  137,
      -  43114,
      -  130,
      -  143,
      -  5042,
      -  999,
      -  59144,
      -  57073,
      -  480,
      -  1868,
      -  25
      -]New value: +[
      +  1,
      +  8453,
      +  42161,
      +  10,
      +  4663,
      +  56,
      +  137,
      +  43114,
      +  130,
      +  143,
      +  5042,
      +  999,
      +  9745,
      +  59144,
      +  4326,
      +  57073,
      +  480,
      +  1868,
      +  100,
      +  25,
      +  146
      +]
  4. Changed2 schema fields changed
    • changedInput schema / properties / chainId / description
      Previous value: -"1 Ethereum, 8453 Base, 42161 Arbitrum One, 10 OP Mainnet, 4663 Robinhood Chain, 56 BNB Chain, 137 Polygon, 43114 Avalanche, 130 Unichain, 143 Monad, 5042 Arc, 999 HyperEVM, 480 World Chain, 25 Cronos"New value: +"1 Ethereum, 8453 Base, 42161 Arbitrum One, 10 OP Mainnet, 4663 Robinhood Chain, 56 BNB Chain, 137 Polygon, 43114 Avalanche, 130 Unichain, 143 Monad, 5042 Arc, 999 HyperEVM, 59144 Linea, 57073 Ink, 480 World Chain, 1868 Soneium, 25 Cronos"
    • changedInput schema / properties / chainId / enum
      Previous value: -[
      -  1,
      -  8453,
      -  42161,
      -  10,
      -  4663,
      -  56,
      -  137,
      -  43114,
      -  130,
      -  143,
      -  5042,
      -  999,
      -  480,
      -  25
      -]New value: +[
      +  1,
      +  8453,
      +  42161,
      +  10,
      +  4663,
      +  56,
      +  137,
      +  43114,
      +  130,
      +  143,
      +  5042,
      +  999,
      +  59144,
      +  57073,
      +  480,
      +  1868,
      +  25
      +]
  5. Changed2 schema fields changed
    • changedInput schema / properties / chainId / description
      Previous value: -"1 Ethereum, 8453 Base, 42161 Arbitrum One, 10 OP Mainnet, 4663 Robinhood Chain, 56 BNB Chain, 137 Polygon, 43114 Avalanche, 130 Unichain, 143 Monad, 5042 Arc, 999 HyperEVM, 480 World Chain"New value: +"1 Ethereum, 8453 Base, 42161 Arbitrum One, 10 OP Mainnet, 4663 Robinhood Chain, 56 BNB Chain, 137 Polygon, 43114 Avalanche, 130 Unichain, 143 Monad, 5042 Arc, 999 HyperEVM, 480 World Chain, 25 Cronos"
    • changedInput schema / properties / chainId / enum
      Previous value: -[
      -  1,
      -  8453,
      -  42161,
      -  10,
      -  4663,
      -  56,
      -  137,
      -  43114,
      -  130,
      -  143,
      -  5042,
      -  999,
      -  480
      -]New value: +[
      +  1,
      +  8453,
      +  42161,
      +  10,
      +  4663,
      +  56,
      +  137,
      +  43114,
      +  130,
      +  143,
      +  5042,
      +  999,
      +  480,
      +  25
      +]
  6. Changed2 schema fields changed
    • changedInput schema / properties / chainId / description
      Previous value: -"1 Ethereum, 8453 Base, 42161 Arbitrum One, 10 OP Mainnet, 4663 Robinhood Chain, 56 BNB Chain, 137 Polygon, 43114 Avalanche, 130 Unichain, 143 Monad, 5042 Arc, 999 HyperEVM"New value: +"1 Ethereum, 8453 Base, 42161 Arbitrum One, 10 OP Mainnet, 4663 Robinhood Chain, 56 BNB Chain, 137 Polygon, 43114 Avalanche, 130 Unichain, 143 Monad, 5042 Arc, 999 HyperEVM, 480 World Chain"
    • changedInput schema / properties / chainId / enum
      Previous value: -[
      -  1,
      -  8453,
      -  42161,
      -  10,
      -  4663,
      -  56,
      -  137,
      -  43114,
      -  130,
      -  143,
      -  5042,
      -  999
      -]New value: +[
      +  1,
      +  8453,
      +  42161,
      +  10,
      +  4663,
      +  56,
      +  137,
      +  43114,
      +  130,
      +  143,
      +  5042,
      +  999,
      +  480
      +]
  7. Changed2 schema fields changed
    • addedInput schema / properties / chainId / description
      Added value: +"1 Ethereum, 8453 Base, 42161 Arbitrum One, 10 OP Mainnet, 4663 Robinhood Chain, 56 BNB Chain, 137 Polygon, 43114 Avalanche, 130 Unichain, 143 Monad, 5042 Arc, 999 HyperEVM"
    • addedInput schema / properties / token / description
      Added value: +"Token address on that chain. Use the zero address for the chain's native coin; on Arc, whose native coin is USDC, use its contract 0x3600000000000000000000000000000000000000."
  8. First observed

TDQS

A4.7/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does most of it: it declares 'Read-only', enumerates the return fields, explains the change24h ratio encoding, and discloses staleness signals (asOfBlock, ageSeconds, stale). It also specifies non-error failure semantics (usd null plus a reason such as token_not_indexed or below_depth_floor). Auth requirements and rate limits are not mentioned, which keeps it from a 5.

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

Conciseness5/5

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

Front-loaded with the core definition, then routing guidance, then return shape, then failure semantics — a logical order where the most decision-relevant information comes first. Every sentence adds information; none restates the title or name.

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

Completeness5/5

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

There is no output schema, yet the description documents the returned fields, their units, the staleness metadata, and the null/reason failure path. Combined with a fully described two-parameter schema, an agent has everything needed to call it and interpret the result.

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 coverage is 100%, so the enum mapping and address pattern are already documented; the baseline would be 3. The description adds interpretive value by framing the unit as 'one whole token' (i.e., not an amount-based quote) and by pointing to search_tokens for resolving a ticker to the address parameter, which shapes how the token input should be sourced.

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

Purpose5/5

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

States a specific verb and resource ('USD price of one whole token on one chain') and immediately qualifies the pricing source ('pools LCX Liberty DEX indexes itself ... not a mid-market feed'). This is clearly distinguishable from get_quote, which prices a specific amount.

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

Usage Guidelines5/5

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

Explicitly routes the agent: use this for a token's value, use get_quote for what a specific amount would swap for, and call search_tokens first to convert a ticker into an address. Both the when-to-use and the alternatives are named with conditions.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources