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.
Behavior3/5

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

No annotations provided, so description carries full burden. It mentions eth_call (implying read-only) and returns native fee, but does not disclose error behavior, gas costs, or idempotency. Additional details would improve transparency.

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 front-loaded sentences with zero waste. Key information is presented immediately and efficiently.

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 output schema exists, description need not detail return values. It covers purpose, supported chains, and method. Lacks mention of prerequisites or failure modes, but overall adequate for this complexity.

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 schema already documents all parameters. Description adds 'Supports Ethereum, Base, and Arbitrum' which duplicates schema's src_chain_id description. No significant extra meaning beyond 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?

Description states 'Estimate CCIP cross-chain messaging fee via Router.getFee() eth_call' – specific verb+resource. It clearly distinguishes from sibling tools like ccip_send_message or ccip_get_lanes by focusing on fee estimation.

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?

No explicit guidance on when to use this vs alternatives. While it implies usage before sending a message, it does not direct users to ccip_send_message or mention when not to use it. Usage context is implied but not explicit.

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

ccip_get_lanesAInspect

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.
Behavior3/5

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

No annotations provided, so description must disclose behavioral traits. It states the tool retrieves data from a REST API, implying a read operation, but does not explicitly confirm no side effects, permissions needed, or rate limits. Adequate but not thorough.

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?

Single concise sentence that immediately states the primary function and then optional filtering. No unnecessary words; front-loaded with key purpose.

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 presence of an output schema and full parameter coverage, the description is fairly complete for a simple list tool. It could mention pagination or return format, but overall sufficient.

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%, meaning the input schema already documents each parameter's purpose and default. The description adds no additional semantics beyond what the schema provides, so baseline 3 is appropriate.

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

Purpose5/5

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

Description clearly states verb 'Get' and resource 'available CCIP lanes (source-destination chain pairs)' and mentions source via 'Chainlink REST API'. It distinguishes from sibling tools like ccip_get_fee or ccip_get_supported_chains by focusing on 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?

Description implies usage for retrieving lanes with optional filters but does not provide when-to-use or when-not-to-use guidance. No explicit alternatives are mentioned despite siblings like ccip_get_supported_chains being related.

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.
Behavior3/5

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

No annotations provided, so description carries the burden. It discloses return type (inbound/outbound rate limits with tokens per second and capacity) and that it's for a specific remote chain. However, it doesn't state it's a read-only operation, potential failure modes, or prerequisites like valid pool address.

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?

Description is three sentences, front-loaded with the main action, and contains no redundant words. Efficient and well-structured.

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 adequately covers purpose, returned data, and its role in the security model. Could mention the optional chain parameter, but that is in the schema.

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 all three parameters documented. The description adds context that the tool queries rate limits for a specific remote chain, but does not add additional meaning beyond the schema. Baseline 3 applies since schema is complete.

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 CCIP Token Pool rate limiter configuration, specifying verb 'Get', resource 'Token Pool rate limiter configuration', and scope for a specific remote chain. It differentiates from siblings like ccip_get_fee by focusing on rate limits and mentions it's part of CCIP v1.6+ security model.

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 or when not to use it. The description only mentions it's part of the security model, but does not clarify scenarios where other tools 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_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.
Behavior3/5

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 mentions the data source (REST API) and that it returns certain fields, but does not disclose whether authentication is required, rate limits, or if the operation is purely read-only (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.

Conciseness5/5

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

The description is a single, well-structured sentence that conveys the action, source, and output. It is front-loaded and contains no extraneous information.

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 (one optional parameter, output schema present), the description covers the essential aspects: what the tool does, its input, and its output. The presence of an output schema reduces the need to detail return values, so the description is adequately 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?

The input schema has 100% description coverage for its single parameter, including its type, default, and allowed values. The tool description adds no additional meaning beyond the schema, so a baseline score of 3 is appropriate.

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

Purpose5/5

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

The description clearly states it retrieves supported chains for Chainlink CCIP, specifying the data source (REST API) and the returned fields (chain names, selectors, network details). This verb-resource pair is distinct from sibling tools like ccip_get_fee or ccip_get_supported_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 does not explicitly indicate when to use this tool versus alternatives. While the purpose is clear, there is no guidance on prerequisites, context, or situations 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_get_supported_tokensAInspect

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, so the description must cover behavioral traits. It mentions 'from the Chainlink REST API' but does not disclose whether the call is read-only, rate limits, side effects, authentication requirements, or response size. Basic safety profile is missing.

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 no wasted words. Front-loads the core purpose and immediately states return values.

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 optional parameter and an existing output schema, the description covers the essential behavior. However, the lack of behavioral transparency slightly reduces 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?

The input schema has 1 optional parameter with 100% description coverage, so the schema already provides the meaning. The description does not add additional context about the parameter beyond what the schema 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 the verb 'Get' and resource 'supported tokens for Chainlink CCIP', distinguishing it from sibling tools like ccip_get_fee or ccip_get_lanes. It also specifies return values (addresses, symbols, 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 implies usage context (getting CCIP-supported tokens) but offers no guidance on when to use this tool versus alternatives, nor any when-not or prerequisite conditions.

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

ccip_get_token_poolAInspect

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.
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 discloses the return fields and mentions CCIP v1.6+ standard, but does not mention side effects, prerequisites, error conditions, or data freshness. For a read-only getter, this is adequate but not exemplary.

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, front-loaded with purpose and output summary, no fluff. Efficient and to the point.

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 existence of an output schema and complete parameter schema, the description adds useful context about the CCT standard and version. All necessary information is covered without redundancy.

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 baseline is 3. The description does not add extra meaning beyond the schema; it only repeats that the pool address is needed. The schema already documents both parameters clearly, so no additional value from 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 verb 'Get' and the resource 'CCIP Token Pool contract', and lists the specific information returned (pool type, token address, supported chains, rate limiter). It distinguishes from sibling CCIP tools like ccip_get_fee or ccip_send_message.

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 use when token pool info is needed, but no explicit guidance on when to use vs alternatives or when not to use. Sibling tools exist for other CCIP operations, but no differentiation is provided.

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

ccip_send_messageAInspect

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.
Behavior3/5

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

No annotations are provided, so the description bears full responsibility. It discloses that a signed transaction is submitted and a hash is returned, indicating on-chain activity. However, it omits details about fees, reverts, permissions, or side effects like token transfers.

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 primary action, and contains no unnecessary words. It efficiently conveys the essential information.

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 complexity (8 parameters, nested objects) and the presence of a detailed input schema with 100% coverage, the description is sufficient to understand the tool's purpose and output. It is not overly detailed but covers the key behavioral aspects.

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 baseline is 3. The description does not add parameter-specific information; it relies entirely on the schema's property 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 clearly states the action ('send a CCIP cross-chain message'), the method ('via Router.ccipSend()'), and the return value ('Returns the transaction hash'). It distinguishes from sibling tools like ccip_get_fee and ccip_get_lanes which are read-only or informational.

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 does not provide any guidance on when to use this tool versus alternatives, nor does it mention conditions for use (e.g., prerequisites, when not to use). While the purpose is clear, there is no explicit usage context.

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.
Behavior3/5

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

With no annotations, the description carries full burden. It mentions the underlying call (OffRamp.getExecutionState()) and lists possible states, providing useful insight but not covering error conditions or side effects.

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?

Two sentences plus a concise list of states; front-loaded with verb and resource, minimal waste.

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 an existing output schema (not shown), the description covers execution states adequately, though it omits prerequisites or error explanations.

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 each parameter described; the description adds context on the tool's purpose but no additional parameter details 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?

Clearly states the tool tracks execution status of a CCIP cross-chain message on the destination chain, distinguishing it from sibling tools 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?

Implicitly suggests use after sending a message to check status, but lacks explicit guidance on when to use vs. alternatives 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?

With no annotations, the description discloses return fields (benchmarkPrice, bid, ask, timestamps, fee info) and mentions low-latency. However, it omits behavioral traits like error handling, rate limits, or authorization requirements. Additional context on data freshness and valid timestamps would improve transparency.

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 concise (two sentences plus examples), front-loads the key action, and avoids redundancy. Every sentence contributes meaningful information without wasted words.

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, the description's summary of returned fields is complementary. However, it lacks details on optional parameters' interaction (e.g., timestamp vs latest) and does not mention potential errors. Still, it is largely complete for a simple data retrieval 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 input schema provides full descriptions for both parameters, meeting the 100% coverage baseline. The description adds value by listing concrete example feed IDs, which helps the agent construct valid queries. This extra context justifies a score 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 clearly states the verb 'Get', the resource 'Data Streams report', and the required parameter 'feed ID'. It distinguishes itself from siblings like ds_list_feeds by focusing on report retrieval. Examples of feed IDs add specificity and prevent confusion.

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 context about Data Streams but does not explicitly guide when to use this tool versus alternatives like ds_list_feeds or chainlink_get_price. It implies that a feed ID is needed but offers no direction on how to obtain it, leaving room for confusion.

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?

No annotations are provided, so the description bears the full burden. It discloses the tool is a read-only list operation (implied by 'List available'), mentions the return fields, and adds behavioral context about sub-second latency. It does not cover auth needs or rate limits, but these are less critical for a list 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?

Two sentences, front-loaded with purpose and output, followed by a sentence adding context and differentiation. No redundant or unnecessary 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?

For a simple list tool with one optional parameter and an available output schema, the description covers what it does, what it returns, and how it differs from a related tool. No critical gaps remain.

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 a single optional parameter. The description restates the parameter's allowed values and purpose but adds no extra meaning beyond the schema. 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 lists Chainlink Data Streams feeds, specifying it returns feed IDs, pairs, and asset classes. It explicitly distinguishes from the on-chain Data Feeds sibling tool by mentioning sub-second latency, making the purpose specific and differentiated.

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 provides context for when to use this tool by distinguishing it from on-chain Data Feeds, but it does not explicitly state when not to use it or provide alternative tool names beyond the implicit differentiation.

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?

With no annotations provided, the description carries the full burden. It accurately describes the read-only nature via AggregatorV3Interface and the return of reserve amounts, which is sufficient for a simple read tool. It could mention error handling or network dependencies but is still 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?

The description is concise with three front-loaded sentences: purpose, technical comparison, and examples. 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 presence of an output schema (covering return values) and the simple read operation, the description is complete. It explains what the tool does, how it differs from related tools, and provides helpful examples.

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 baseline is 3. The description adds value by listing well-known feed addresses and noting the default chain, providing context beyond the schema definitions.

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 'Read' and the resource 'Chainlink Proof of Reserve feed', explicitly distinguishes it from price feeds by noting it returns reserve amounts instead of prices, and provides specific examples of well-known 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 explains the tool's purpose for verifying asset reserves onchain and contrasts it with price feeds, giving clear usage context. However, it does not explicitly state when not to use it or suggest alternatives like por_list_feeds.

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.
Behavior4/5

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

No annotations provided, so description carries full burden. It accurately describes the operation (list) and return values (addresses, asset names, descriptions). For a read-only tool with zero parameters, this is sufficient for an agent to understand safe invocation.

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. First states the action, second details returns. No filler; every word earns its place.

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?

Tool is simple with no parameters and has an output schema. Description fully covers purpose and return content. No missing information 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.

Parameters4/5

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

Zero parameters and 100% schema coverage. Description does not need to add parameter info. Baseline of 4 applies; no room for improvement.

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 it lists Chainlink Proof of Reserve feeds with specific return fields (addresses, asset names, descriptions). Distinguishes from siblings like chainlink_list_feeds (generic) and ds_list_feeds (data streams).

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?

Implicitly clear from name and description that this tool is for PoR feed listing. Siblings like por_get_reserve and chainlink_list_feeds provide context, but no explicit when-to-use vs alternatives is stated. Still, purpose is self-evident.

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.
Behavior4/5

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

No annotations are provided, so the description bears full burden. It clearly indicates a read operation ('Get') and lists returned data. It does not mention side effects or permissions, but for a read-only query this is mostly sufficient. Could add 'no state changes' for completeness.

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, front-loaded with verb and resource. Every sentence contributes: first sentence states action and purpose, second details returns and supported networks. 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?

With only 2 parameters and an output schema present, the description covers purpose, return values, chain support, and implied safety (read-only). It is complete for an agent to select and invoke correctly.

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

Parameters4/5

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

Schema coverage is 100%, so parameters have descriptions. The description adds value by summarizing return fields and listing supported chains (matching chain parameter). It goes beyond schema by providing context on what the tool returns.

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 gets VRF v2.5 subscription details from the VRFCoordinatorV2_5 contract, lists returned fields (balance, owner, etc.), and specifies supported chains. This is specific and distinguishes from siblings like chainlink_get_subscription (likely v2).

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 vs alternatives. Siblings include chainlink_get_subscription and vrf_request_random, but no guidance is provided for choosing. Usage is implied but not clarified.

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.
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 tool builds calldata (not sending it), requires the caller to sign and submit, and supports two payment methods. It does not mention potential side effects or prerequisites beyond the subscription ID, but for a calldata builder, this is adequate.

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 sentences, front-loaded with the main purpose, no superfluous information. Every sentence contributes to understanding the tool's function and requirements.

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 that an output schema exists (not shown but mentioned), the description need not detail return values. It covers the tool's purpose, caller action, and payment support. With 7 parameters, the description is comprehensive enough for an agent to use the tool 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?

Schema coverage is 100%, so baseline is 3. The description adds value by explaining the return format (hex-encoded calldata) and payment options, but does not provide additional semantics beyond what is already in the schema for the parameters.

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 ('Build transaction calldata') and the resource ('VRF v2.5 random words request'). It differentiates from sibling tools by focusing on VRF random words, as opposed to other CCIP or chainlink functions.

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 explains that the caller must sign and submit the transaction from a consumer contract, providing clear context for when to use this tool. It does not explicitly state when not to use it or list alternatives, but it is sufficient given the tool's specificity.

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!

Related MCP Servers

  • F
    license
    -
    quality
    D
    maintenance
    Enables interaction with Chainlink's decentralized oracle network, providing access to real-time price feeds, serverless functions, smart contract automation, verifiable randomness, cross-chain messaging, and proof of reserve across multiple blockchain networks.
    Last updated
  • F
    license
    -
    quality
    D
    maintenance
    MCP server providing agent-ready access to Chainlink's API for DeFi and crypto tools.
    Last updated

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources