Skip to main content
Glama

Server Details

Chainlink tools over MCP: CCIP cross-chain, data feeds, data streams, VRF, proof of reserve.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 3.9/5 across 21 of 21 tools scored. Lowest: 3.2/5.

Server CoherenceA
Disambiguation5/5

All tools are grouped by service prefix (ccip_, chainlink_, ds_, por_, vrf_) and each has a unique purpose. For example, ccip_get_fee and ccip_send_message are clearly distinct, and even within similar functions like chainlink_get_price and ds_get_report, the descriptions clarify they target different data sources (on-chain feeds vs. low-latency streams). No overlap.

Naming Consistency5/5

Tool names follow a consistent pattern of service prefix + verb_noun (e.g., ccip_get_fee, ds_list_feeds, vrf_request_random). Even longer names like chainlink_broadcast_signed_tx adhere to the pattern. There is no mixing of cases or inconsistent verb forms.

Tool Count5/5

21 tools covering multiple Chainlink products (CCIP, Data Feeds, Data Streams, VRF, Functions, Automation, Proof of Reserve) is well-scoped. Each tool serves a distinct needed capability without bloat, and the count is within the ideal range for a focused integrated server.

Completeness4/5

The tool set covers core read and write operations for most services (e.g., full CCIP workflow from fee estimation to message sending and tracking). However, there are minor gaps: no tool to create or manage subscriptions (only get), and no direct Functions request execution (only cost estimation and subscription query). These are workable but not fully complete.

Available Tools

21 tools
ccip_get_feeAInspect

Estimate CCIP cross-chain messaging fee via Router.getFee() eth_call. Returns the native fee required to send a CCIP message from the source chain to the destination chain. Supports Ethereum, Base, and Arbitrum as source chains.

ParametersJSON Schema
NameRequiredDescriptionDefault
data_hexNoHex-encoded data payload to send (with or without 0x prefix). Use '0x' or '' for empty
receiverYesHex-encoded receiver address on the destination chain (with or without 0x prefix)
fee_tokenNoFee token address. Use zero address (0x0000...0000) for native gas token payment
src_chain_idYesSource chain identifier: 'ethereum', 'base', 'arbitrum', or a chain ID number
token_amountsNoToken amounts to transfer as JSON array of {token, amount} objects. Empty array for message-only
dst_chain_selectorYesDestination CCIP chain selector (uint64). E.g. 4949039107694359620 for Arbitrum

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYesUnderlying response payload verbatim.
Behavior4/5

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

With no annotations provided, the description carries full burden. It discloses that the call is an eth_call (simulated, no state change) and returns the required native fee, but could further clarify that it does not send the message or explain any side effects. No contradictions found.

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 extremely concise with two sentences: the first defines the tool's primary action and method, the second adds supported source chains. Every sentence is informative and there is no redundancy.

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

Completeness4/5

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

Given the 6 parameters (3 required) and the presence of an output schema (which handles return value documentation), the description is largely complete. It could briefly note that the fee estimate depends on parameters like data length or token amounts, but this is not essential.

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

Parameters3/5

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

Schema description coverage is 100%, so baseline is 3. The description does not add additional parameter details beyond what is already in the schema. It mentions supported source chains, but this is already covered in the src_chain_id description.

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 explicitly states the tool estimates a CCIP cross-chain messaging fee via Router.getFee() eth_call, clearly specifying the verb, resource, and method. It also lists supported source chains (Ethereum, Base, Arbitrum), distinguishing it from sibling tools that handle other CCIP operations like lanes, rate limits, or sending messages.

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

Usage Guidelines4/5

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

The description implies usage for fee estimation before sending a CCIP message, but does not explicitly state when to use this tool versus alternatives like ccip_send_message. It provides clear context but lacks exclusions or references to related tools.

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

ccip_get_lanesBInspect

Get available CCIP lanes (source-destination chain pairs) from the Chainlink REST API. Optionally filter by source or destination chain selector.

ParametersJSON Schema
NameRequiredDescriptionDefault
environmentNoEnvironment: 'mainnet' or 'testnet'. Defaults to 'mainnet'
dest_chain_selectorNoOptional destination chain selector to filter lanes
source_chain_selectorNoOptional source chain selector to filter lanes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYesUnderlying response payload verbatim.
Behavior2/5

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

No annotations are provided, so the description must carry the full burden. It only states 'Get', implying a read-only operation, but fails to disclose request limitations, error potential, pagination, or authorization requirements. A simple listing tool could benefit from stating it's non-destructive and safe.

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

Conciseness4/5

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

Very concise single sentence that front-loads the main action and resource. Efficient but could be improved with a short second sentence on usage context without significant bloat.

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

Completeness3/5

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

Output schema exists, compensating for return value description. However, missing usage guidance and behavioral transparency make it less complete for an agent to select and invoke confidently.

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

Parameters3/5

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

Schema coverage is 100%, thus baseline is 3. The description adds no extra meaning beyond 'optionally filter', not explaining what a chain selector is or required format. No additional value over schema.

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?

Clearly states the verb 'Get' and resource 'available CCIP lanes', and explicitly mentions filtering by source or destination chain selector. Distinguishes from sibling tools like ccip_get_fee or ccip_get_supported_chains.

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?

Implies usage for fetching lane data with optional filters, but does not provide explicit guidance on when to use this tool versus alternatives (e.g., when to use ccip_get_supported_chains instead). No prerequisites or exclusions mentioned.

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

ccip_get_rate_limitsAInspect

Get CCIP Token Pool rate limiter configuration for a specific remote chain. Returns inbound and outbound rate limits (tokens per second, capacity) that control the maximum cross-chain transfer throughput. Part of CCIP v1.6+ security model.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain the pool is deployed on: 'ethereum', 'base', 'arbitrum'. Defaults to 'ethereum'
pool_addressYesToken pool contract address (hex with 0x prefix)
remote_chain_selectorYesRemote chain selector (uint64) to query rate limits for

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYesUnderlying response payload verbatim.
Behavior2/5

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

No annotations provided, so description carries full burden. Describes return data but lacks disclosure about permissions needed, side effects (none expected), error cases, or caching behavior. Minimal behavioral context beyond the return schema.

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 sentences, no redundant words. Front-loaded with verb and resource. 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?

Given simple 3-param tool with output schema and no annotations, description covers purpose and returns. Missing usage guidelines and error context, but otherwise adequate for a read operation.

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

Parameters3/5

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

Schema coverage is 100% with descriptions for all parameters. Description adds no significant meaning beyond the schema; it echoes 'remote chain' concept already captured in schema. Baseline 3 appropriate.

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

Purpose5/5

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

Description clearly states the verb 'Get', resource 'CCIP Token Pool rate limiter configuration', and scope 'for a specific remote chain'. It also specifies return data: inbound and outbound rate limits. Distinguishes from sibling CCIP tools as a read operation for rate limits.

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?

Mentions 'Part of CCIP v1.6+ security model' implying version relevance, but does not explicitly state when to use this tool versus alternatives like ccip_send_message or ccip_get_fee. No 'when to use' or '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.

ccip_get_supported_chainsAInspect

Get supported chains for Chainlink CCIP from the Chainlink REST API. Returns chain names, selectors, and network details.

ParametersJSON Schema
NameRequiredDescriptionDefault
environmentNoEnvironment: 'mainnet' or 'testnet'. Defaults to 'mainnet'

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYesUnderlying response payload verbatim.
Behavior4/5

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

No annotations exist, so the description carries the transparency burden. It accurately describes a read-only operation (get) from an external API, with no mention of destructive actions. It could explicitly state 'does not modify state' for more clarity.

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 a single, front-loaded sentence with no wasted words. It effectively conveys purpose and output in an efficient manner.

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 tool has an output schema, so return values do not need elaboration. The description lists the key output fields (chain names, selectors, network details) and covers the single optional parameter. It is adequate but could mention the environment parameter's role in filtering.

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 only parameter 'environment' is fully described in the schema (default 'mainnet'). The description does not add extra meaning beyond the schema, but with 100% schema coverage, a baseline of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the tool retrieves supported chains for Chainlink CCIP, specifying the source (REST API) and output (chain names, selectors, network details). It is distinct from sibling tools that deal with fees, lanes, or tokens.

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 provides clear context but lacks explicit guidance on when to use this tool versus alternatives like ccip_get_lanes or ccip_get_supported_tokens. No when-not or alternative naming is given.

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

ccip_get_supported_tokensBInspect

Get supported tokens for Chainlink CCIP from the Chainlink REST API. Returns token addresses, symbols, and supported lanes.

ParametersJSON Schema
NameRequiredDescriptionDefault
environmentNoEnvironment: 'mainnet' or 'testnet'. Defaults to 'mainnet'

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYesUnderlying response payload verbatim.
Behavior2/5

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

No annotations are provided, and the description lacks details about side effects, authentication, or rate limits. The description implies a read operation but does not confirm idempotency or safety.

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

Conciseness4/5

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

The description is a single concise sentence that front-loads the action and outcome. No wasted words, but could be slightly more structured (e.g., separate lines for input/output).

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

Completeness3/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 optional parameter and an output schema, the description covers the basics. However, it does not mention data freshness, pagination, or any constraints, leaving some gaps.

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

Parameters3/5

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

Schema coverage is 100% with clear parameter descriptions. The tool description adds no additional meaning beyond the schema, which is adequate but does not enhance understanding.

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

Purpose5/5

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

The description clearly states the tool retrieves supported tokens for Chainlink CCIP and specifies the return fields (addresses, symbols, lanes). It distinguishes from siblings like ccip_get_fee and ccip_get_lanes.

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 does not explicitly state when to use this tool versus alternatives. While the purpose is clear, there is no guidance on exclusions or when not to use it, such as for fee queries.

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

ccip_get_token_poolBInspect

Get information about a CCIP Token Pool contract. Returns the pool type (Lock/Release or Burn/Mint), the token address, supported remote chains, and rate limiter config. Token Pools are part of the Cross-Chain Token (CCT) standard in CCIP v1.6+.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain: 'ethereum', 'base', 'arbitrum'. Defaults to 'ethereum'
pool_addressYesToken pool contract address (hex with 0x prefix)

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYesUnderlying response payload verbatim.
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 burden. It only states what data is returned but does not disclose any side effects (e.g., network calls), authentication needs, error conditions, or rate limits. For a read-only tool, safety is implied but not explicit.

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

Conciseness4/5

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

The description is concise (two sentences) and front-loaded with the purpose and key returns. It earns its place without fluff, though it could be slightly more structured with bullet points for readability.

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

Completeness3/5

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

The description lists the return fields, and an output schema exists, limiting the need to detail return structure. However, it lacks behavioral context (e.g., error handling, performance implications) and usage guidance, making it minimally adequate for a simple read tool.

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

Parameters3/5

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

Schema coverage is 100%, so the input schema already documents both parameters (chain and pool_address) with descriptions. The tool description adds no additional meaning or usage hints about the parameters beyond what the schema provides. Baseline 3 is appropriate.

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

Purpose5/5

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

The description clearly states the tool retrieves information about a CCIP Token Pool contract, specifying the returned fields (pool type, token address, supported remote chains, rate limiter config) and context (CCT standard in CCIP v1.6+). This is specific and distinguishes it from sibling tools like ccip_get_fee or ccip_get_lanes.

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 explicit guidance on when to use this tool versus alternatives, no prerequisites, and no exclusions. It lacks any usage context such as required permissions or scenarios where another tool would be more appropriate.

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

ccip_send_messageBInspect

Send a CCIP cross-chain message via Router.ccipSend(). Submits a signed transaction to the source chain's CCIP Router to send a message and/or tokens to the destination chain. Returns the transaction hash.

ParametersJSON Schema
NameRequiredDescriptionDefault
data_hexNoHex-encoded data payload
receiverYesHex-encoded receiver address on the destination chain
fee_tokenNoFee token address (zero address for native). Defaults to native
gas_limitNoGas limit for execution on destination chain (default: 200000)
sender_keyYesHex-encoded sender private key for signing the transaction
src_chain_idYesSource chain: 'ethereum', 'base', 'arbitrum', or chain ID
token_amountsNoToken amounts to transfer as JSON array of {token, amount} objects
dst_chain_selectorYesDestination CCIP chain selector (uint64)

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYesUnderlying response payload verbatim.
Behavior2/5

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

Despite no annotations, the description only mentions submitting a signed transaction and returning a hash. It omits critical behavioral details like state mutation, gas costs, potential reverts, and that it requires a private key.

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 very concise, with two sentences that front-load the purpose and provide immediate clarity. No redundant information.

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

Completeness3/5

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

For a complex cross-chain operation with 8 parameters, the description covers only the essential action. While output schema exists, more context about chain selectors, key management, and error handling would improve completeness.

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

Parameters3/5

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

Schema coverage is 100%, so all parameters are described in the schema. The description adds minimal new meaning beyond what the schema already provides.

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 sends a CCIP cross-chain message via Router.ccipSend(), specifying the action, mechanism, and return value. It distinguishes itself from sibling read-only tools.

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?

No explicit guidance on when to use this tool versus alternatives (e.g., ccip_get_fee for fee estimation). No prerequisites or caveats mentioned.

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

ccip_track_messageAInspect

Track the execution status of a CCIP cross-chain message on the destination chain. Calls OffRamp.getExecutionState() to check message delivery status. States: 0=UNTOUCHED (not yet processed), 1=IN_PROGRESS (being executed), 2=SUCCESS (delivered), 3=FAILURE (execution failed).

ParametersJSON Schema
NameRequiredDescriptionDefault
message_idYesCCIP message ID (64-byte hex, with or without 0x prefix)
dst_chain_idYesDestination chain: 'ethereum', 'base', 'arbitrum', or chain ID
offramp_addressYesOffRamp contract address on the destination chain (hex with 0x prefix)

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYesUnderlying response payload verbatim.
Behavior4/5

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

The description discloses the method (OffRamp.getExecutionState()) and the possible return states (0-3 with meanings), providing behavioral context beyond the input schema. However, it does not explicitly state that the operation is read-only or mention any auth or rate limits, though the context suggests non-destructive behavior.

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 three concise sentences that front-load the purpose, then add the method detail, and finally list the states. No unnecessary words or repetition.

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

Completeness4/5

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

Given the tool's simplicity and the presence of an output schema, the description covers the purpose, method, and output states comprehensively. It lacks guidance on when to invoke (tied to usage guidelines) but is otherwise complete.

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

Parameters3/5

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

Schema description coverage is 100%, and the description does not add additional semantic information about the parameters beyond what the schema provides. It focuses on the overall behavior rather than parameter details, which is acceptable given full schema coverage.

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

Purpose5/5

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

The description clearly states the tool tracks execution status of a CCIP cross-chain message on the destination chain, specifying the resource and action. It mentions the internal call to OffRamp.getExecutionState(), and the purpose distinguishes it from siblings like ccip_send_message or ccip_get_fee.

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 usage after sending a message to check status, but it does not explicitly state when to use this tool versus alternatives, nor does it provide exclusion conditions or prerequisites.

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

ds_get_reportAInspect

Get a Data Streams report for a specific feed ID. Data Streams provide sub-second, low-latency market data for crypto, forex, equities, and commodities. Returns benchmarkPrice, bid, ask, timestamps, and fee info. Common feed IDs: ETH/USD = 0x000359843a543ee2fe414dc14c7e7920ef10f4372990b79d6361cdc0dd1ba782, BTC/USD = 0x00037da06d56d083fe599397a4769a042d63aa73dc4ef57709d31e9971a5b439.

ParametersJSON Schema
NameRequiredDescriptionDefault
feed_idYesData Streams feed ID (hex string, e.g. '0x000359843a543ee2fe414dc14c7e7920ef10f4372990b79d6361cdc0dd1ba782' for ETH/USD)
timestampNoUnix timestamp to query (optional — latest if omitted)

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYesUnderlying response payload verbatim.
Behavior3/5

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

No annotations are provided. The description implies a read-only data retrieval operation but does not explicitly state safety aspects, side effects, or authentication needs. For a simple read tool, the lack of contradiction is acceptable but doesn't add extra transparency.

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

Conciseness4/5

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

Three sentences: purpose, context, and return data + examples. Efficient and front-loaded, though the second sentence on Data Streams is slightly extraneous but not wasteful.

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

Completeness4/5

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

Given the simple tool (2 params) and presence of an output schema, the description covers the need: what it does, what it returns, and example feed IDs. It lacks error handling guidance but is otherwise complete.

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

Parameters3/5

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

Schema description coverage is 100%, so baseline is 3. The description adds value by providing common feed ID examples, but does not elaborate on the timestamp parameter beyond what the schema already states.

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 'Get a Data Streams report for a specific feed ID', which is a specific verb+resource combination. It distinguishes itself from sibling tools like ds_list_feeds by focusing on a single feed ID.

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 does not explicitly state when to use this tool over alternatives (e.g., ds_list_feeds). Usage is implied by the purpose, but no direct guidance on context or exclusions.

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

ds_list_feedsAInspect

List available Chainlink Data Streams feeds. Returns feed IDs, pairs, and asset classes (crypto, forex, equities, commodities). Data Streams provide sub-second latency market data — distinct from the slower on-chain Data Feeds.

ParametersJSON Schema
NameRequiredDescriptionDefault
asset_classNoFilter by asset class: 'crypto', 'forex', 'equities', 'commodities' (optional)

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYesUnderlying response payload verbatim.
Behavior4/5

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

With no annotations, the description implies a read-only, non-destructive operation ('List'), mentions sub-second latency, and describes return contents. It does not detail authentication or rate limits, but for a simple list tool, the behavioral insight is adequate and does not contradict any annotations.

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 concise sentences with the main action upfront. The first sentence states the purpose, and the second adds useful context (distinction from Data Feeds, latency). No wasted words.

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?

Given the tool's simplicity (one optional parameter, output schema exists), the description sufficiently covers what the tool does, what it returns, and how it differs from a key sibling. No critical gaps identified.

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

Parameters3/5

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

Schema coverage is 100%, and the description's mention of asset classes (crypto, forex, equities, commodities) echoes the schema's parameter description without adding new meaning. Thus, it meets the baseline but does not significantly enhance parameter understanding beyond the schema.

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 the specific verb 'List' and resource 'Chainlink Data Streams feeds', clearly states what is returned (feed IDs, pairs, asset classes), and distinguishes from 'slower on-chain Data Feeds', which differentiates it from the sibling tool 'chainlink_list_feeds'.

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

Usage Guidelines4/5

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

The description explicitly contrasts Data Streams with slower on-chain Data Feeds, guiding the agent to choose this tool over chainlink_list_feeds for sub-second latency data. However, it does not provide explicit when-not-to-use scenarios or alternatives for other related tools like ds_get_report.

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

por_get_reserveAInspect

Read a Chainlink Proof of Reserve feed to verify asset reserves onchain. Uses the same AggregatorV3Interface as price feeds but returns reserve amounts instead of prices. Well-known PoR feeds on Ethereum: WBTC = 0xa81FE04086865e63E12dD3776978E49DEEa2ea4e, USDC = 0x9a177Bb065A0636C7972C6D27Abcd4B1e5EDb65c, TUSD = 0x478f4c42b877c697C4b19E396865D5437Ef4E08B.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain: 'ethereum'. Defaults to 'ethereum'
feed_addressYesProof of Reserve feed contract address (hex). Well-known: WBTC=0xa81FE04086865e63E12dD3776978E49DEEa2ea4e, USDC=0x9a177Bb065A0636C7972C6D27Abcd4B1e5EDb65c

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYesUnderlying response payload verbatim.
Behavior4/5

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

No annotations are provided, so the description must cover behavior. It describes a read-only operation using AggregatorV3Interface without side effects. The behavior is straightforward; however, it could mention potential reverts or output format.

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

Conciseness5/5

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

The description consists of three efficient sentences: purpose, differentiation, and examples. No redundant information, and the most important info is first.

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

Completeness5/5

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

For a simple read-only tool with two parameters, the description covers what it does, how it differs from similar tools, and provides concrete input examples. The presence of an output schema further reduces the need to describe return values.

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 already describes both parameters (chain, feed_address) with 100% coverage. The description adds value by listing well-known addresses for feed_address, going beyond the schema's description.

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

Purpose5/5

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

The description clearly states the tool reads a Chainlink Proof of Reserve feed to verify asset reserves onchain, and distinguishes itself from price feeds by noting it returns reserve amounts. The examples of well-known feeds add specificity.

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

Usage Guidelines4/5

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

The description implies when to use the tool (to get reserve amounts) vs. using price feeds (e.g., chainlink_get_price) for prices. It provides concrete examples but does not explicitly state when not to use or list alternatives.

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

por_list_feedsAInspect

List well-known Chainlink Proof of Reserve feeds. Returns feed addresses, asset names, and descriptions for verifying reserve backing of wrapped/synthetic assets.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYesUnderlying response payload verbatim.
Behavior3/5

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

No annotations are provided, so the description carries full burden. It discloses that the tool returns feed metadata but does not mention idempotency, side effects, rate limits, or authentication requirements. The description is adequate but lacks extra behavioral context.

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 a single sentence that is front-loaded with the verb and resource, containing no fluff or redundant information. Every word 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 listing tool with no parameters and an output schema, the description is nearly complete. It explains the purpose and return values. Minor gap: does not mention any limitations like pagination or number of feeds, but this is not critical.

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?

There are 0 parameters, and schema coverage is 100%. Per the rule, baseline is 4. The description adds no parameter information, which is acceptable given no parameters exist.

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

Purpose5/5

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

The description clearly states the verb 'List', the resource 'well-known Chainlink Proof of Reserve feeds', and specifies the returned data (addresses, names, descriptions). It distinguishes from sibling tools like 'chainlink_list_feeds' by focusing on Proof of Reserve feeds.

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 usage for verifying reserve backing but does not explicitly state when to use or not use this tool versus alternatives such as 'por_get_reserve' or 'chainlink_list_feeds'. No exclusions or comparisons are provided.

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

vrf_get_subscriptionAInspect

Get VRF v2.5 subscription details from the VRFCoordinatorV2_5 contract. Returns balance, owner, authorized consumers, and pending requests. Supports Ethereum, Arbitrum, and Base.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain: 'ethereum', 'arbitrum', 'base'. Defaults to 'ethereum'
subscription_idYesVRF subscription ID (uint256 as decimal string)

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYesUnderlying response payload verbatim.
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It mentions the contract and returned fields but does not explicitly state it is read-only or disclose potential side effects, authentication needs, or rate limits. Adequate but could be more transparent.

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 sentences: first delivers the core purpose and output, second specifies supported chains. No filler, efficient, and front-loaded.

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

Completeness4/5

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

Given that an output schema exists and parameters are fully described in the schema, the description covers the essential use case. It omits error conditions or prerequisites but is sufficient for a straightforward getter.

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% with both parameters described. The description adds the list of supported chains (though schema also lists them in the 'chain' param description) and highlights the output content, providing added context beyond the schema.

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

Purpose5/5

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

The description clearly states the tool retrieves VRF v2.5 subscription details from the VRFCoordinatorV2_5 contract, specifying the returned data (balance, owner, consumers, pending requests). It effectively distinguishes from siblings like chainlink_get_subscription by focusing on VRF v2.5.

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

Usage Guidelines4/5

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

The description lists supported chains (Ethereum, Arbitrum, Base), providing context for when to use. However, it lacks explicit guidance on when not to use or comparisons to similar tools, though the name and VRF v2.5 specificity imply its niche.

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

vrf_request_randomAInspect

Build transaction calldata for a VRF v2.5 random words request. Returns the hex-encoded calldata for VRFCoordinatorV2_5.requestRandomWords(). The caller must sign and submit the transaction from a consumer contract. VRF v2.5 supports payment in LINK or native token.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain: 'ethereum', 'arbitrum', 'base'. Defaults to 'ethereum'
key_hashYesVRF key hash for the gas lane (hex, 32 bytes)
num_wordsNoNumber of random words to request (default: 1, max: 500)
native_paymentNoPay in native token instead of LINK (default: false)
subscription_idYesVRF subscription ID (uint256 as decimal string)
callback_gas_limitNoCallback gas limit (default: 100000)
request_confirmationsNoNumber of block confirmations before fulfillment (default: 3)

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYesUnderlying response payload verbatim.
Behavior5/5

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

With no annotations provided, the description fully compensates by disclosing the tool's behavior: it builds calldata (no state mutation), returns hex-encoded data, and requires manual signing/submission. 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.

Conciseness5/5

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

Three brief sentences front-load the purpose, return value, and key context. No filler or redundancy.

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?

Given the parameter count and existence of an output schema, the description covers all necessary aspects: what the tool does, what it returns, the underlying contract, and payment flexibility. No gaps.

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 baseline is 3. The description adds value by explaining VRF version and the native_payment option context beyond schema descriptions.

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

Purpose5/5

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

The description uses a specific verb 'Build transaction calldata' and identifies the resource 'VRF v2.5 random words request'. It further specifies the underlying function and distinguishes this tool from siblings like vrf_get_subscription, which queries subscription info.

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

Usage Guidelines4/5

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

The description states the required caller action ('must sign and submit the transaction from a consumer contract') and mentions payment options. It implicitly guides usage for requesting randomness, but does not explicitly list when not to use or provide alternatives.

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

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources