valorem-mev-mcp
OfficialAllows ChatGPT to access real-time MEV and DeFi data through Valorem's API, including tools for liquidation watchlists, decoded hints, builder stats, token safety, and more.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@valorem-mev-mcpshow me arbitrage opportunities on Base pools"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
valorem-mev-mcp
Model Context Protocol (MCP) server for Valorem MEV Intelligence.
Gives any MCP-compatible LLM agent (Claude Desktop, ChatGPT, Cursor, etc.) direct access to real-time MEV and DeFi data via Valorem's x402-paid API endpoints. Payments are made in USDC on Base mainnet.
Tools
Tool | Endpoint | Cost | Description |
|
| Free | Full service catalog with all endpoints and prices |
|
| $0.50 | Aave V3 near-liquidation positions — health factors, collateral, debt |
|
| $0.10 | Last 50 decoded MEV-Share hints — swap direction, pool, token pair |
|
| $0.25 | Per-builder acceptance rates for Flashbots, Titan, Beaver, BuilderNet, Quasar |
|
| $1.00 | Agent wallet tracking — active wallets, x402 spend patterns, top providers |
|
| $0.05 | L2 arb opportunities across 125+ Base + Arbitrum pools |
|
| $0.02 | Token tax/rebase/reflect classification by contract address |
|
| $0.01 | RPC provider health — latency, error rates, uptime |
|
| $0.001 | Premium Reth L1 RPC proxy (~6 ms latency) — any JSON-RPC method |
Related MCP server: Omni Service Node
Payment Modes
Free Mode (default)
No private key required. When an API call returns HTTP 402, the server surfaces the payment requirements to the agent as a formatted message. The agent or user can then pay externally and retry.
npx valorem-mev-mcpPaid Mode (auto-pay)
Set the PRIVATE_KEY environment variable to an EVM private key with USDC on Base mainnet. The server uses @x402/fetch + @x402/evm to automatically sign and submit payments, then retries the request transparently.
PRIVATE_KEY=0xYourPrivateKeyHere npx valorem-mev-mcpSecurity: Never commit your private key. Use a dedicated spending wallet with only the USDC you intend to spend. The key never leaves your machine.
Installation
Global install
npm install -g valorem-mev-mcp
valorem-mev-mcpnpx (no install)
npx valorem-mev-mcpLocal development
git clone https://github.com/advalorem/valorem-mev-mcp
cd valorem-mev-mcp
npm install
node src/index.jsConnecting to Claude Desktop
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
Free mode
{
"mcpServers": {
"valorem-mev": {
"command": "npx",
"args": ["valorem-mev-mcp"]
}
}
}Paid mode
{
"mcpServers": {
"valorem-mev": {
"command": "npx",
"args": ["valorem-mev-mcp"],
"env": {
"PRIVATE_KEY": "0xYourPrivateKeyHere"
}
}
}
}Restart Claude Desktop after editing. The tools will appear in the tool selector.
Connecting to ChatGPT (Actions / Plugins)
ChatGPT plugins and Actions use an HTTP-based transport. To bridge this MCP server to HTTP, use mcp-proxy or the OpenAI MCP adapter:
# Install the bridge
npm install -g @modelcontextprotocol/proxy
# Run valorem-mev-mcp behind an HTTP proxy on port 3000
mcp-proxy --port 3000 -- npx valorem-mev-mcpThen point your ChatGPT Action or plugin manifest at http://localhost:3000.
Connecting to Cursor / Windsurf / Other Clients
Most IDE-based MCP clients accept a command + args configuration identical to Claude Desktop. Add this to your client's MCP server list:
{
"command": "npx",
"args": ["valorem-mev-mcp"],
"env": {
"PRIVATE_KEY": "0xOptionalForAutoPay"
}
}Tool Usage Examples
Get service catalog (free)
Use the catalog tool to show me what MEV data is available.Check near-liquidation positions
Call liquidation_watchlist and tell me which Aave V3 positions are closest to liquidation.Classify a token
Use token_safety to check if 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48 is a tax token.Proxy an eth_call
Use rpc_proxy to call eth_blockNumber with params [].Architecture
Claude / ChatGPT / Cursor
│
│ MCP stdio transport (JSON-RPC 2.0)
▼
valorem-mev-mcp (this server)
│
│ HTTPS + optional x402 payment header
▼
https://18-220-76-66.nip.io/engine-api/x402
│
▼
Valorem MEV Intelligence API (Base mainnet USDC payments)x402 Payment Flow
1. Server calls API endpoint (no payment header)
2. API returns HTTP 402 with X-PAYMENT-REQUIRED header
3a. FREE mode: 402 details returned to agent as text
3b. PAID mode: @x402/fetch parses requirements, signs USDC EIP-712 permit
with viem private key account, retries with X-PAYMENT header
4. API verifies payment, returns 200 with dataEnvironment Variables
Variable | Required | Description |
| No | EVM private key (hex, |
Requirements
Node.js ≥ 18
npm ≥ 8
License
MIT — see LICENSE
Links
Valorem: https://advalorem.io
x402 Protocol: https://x402.org
MCP Specification: https://modelcontextprotocol.io
@modelcontextprotocol/sdk: https://www.npmjs.com/package/@modelcontextprotocol/sdk
Available Tools
9 toolsagent_intelligenceA
Provides intelligence on agent wallets interacting with the Valorem x402 ecosystem. Returns active wallet addresses, x402 USDC spending patterns, top data providers, and behavioral signals. Cost: $1.00 USDC per call.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and discloses the important cost per call ($1.00 USDC) plus a clear list of returned data. It doesn't mention other details like rate limits or side effects, but as a read-only data tool, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences with front-loaded purpose, a clear output list, and cost. Every sentence provides distinct value without redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 0-param tool with no output schema, the description covers the primary purpose and returned data categories. It doesn't specify the exact structure of 'behavioral signals', but is otherwise complete for selecting and invoking the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has zero parameters, so the baseline is 4. The description adds meaning by explaining what the tool returns, even though no parameter details are needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool 'Provides intelligence on agent wallets interacting with the Valorem x402 ecosystem' and lists specific return data types (wallet addresses, spending patterns, top providers, behavioral signals). This clearly distinguishes it from sibling tools like catalog or builder_stats.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is implied through the description: when you need intelligence on agent wallets in the ecosystem. However, it offers no explicit guidance on when to choose this tool over siblings, nor any exclusions or alternative references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
builder_statsA
Returns per-builder block-inclusion statistics for major Ethereum block builders: Flashbots, Titan, Beaver, BuilderNet, and Quasar. Includes acceptance rates, block counts, and health status. Cost: $0.25 USDC per call.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries the full transparency burden. It discloses the cost ($0.25 USDC per call), which is a key behavioral trait, and lists what data is returned (acceptance rates, block counts, health status). It does not mention data freshness or rate limits, but the cost and content disclosure is solid.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three concise sentences, each earning its place: the first states the core purpose and builders, the second details the metrics, and the third notes the cost. It is front-loaded and free of fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-parameter, no-output-schema tool, the description is complete. It tells the agent exactly what data will be returned and informs about the required payment. No additional context is needed for selection or invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema is empty. According to the rubric, 0 params earns a baseline of 4. The description adds meaningful context about the output without needing to describe parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description specifies the exact resource (builder statistics) and action (returns), names the specific Ethereum block builders (Flashbots, Titan, Beaver, BuilderNet, and Quasar), and lists the metrics (acceptance rates, block counts, health status). This clearly distinguishes it from sibling tools like liquidation_watchlist or agent_intelligence.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies that the tool should be used when builder statistics are needed, but it does not provide explicit when-to-use guidance or mention alternatives. Since the purpose is narrow and distinct from siblings, the usage context is somewhat acknowledged but not formally stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
catalogA
Returns the full Valorem MEV Intelligence service catalog — all available endpoints, their prices (USDC), and brief descriptions. This tool is free and requires no payment.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of transparency. It explicitly states the tool is free and requires no payment, and it describes the returned content. It does not mention rate limits or read-only status, but for a simple catalog tool, this is sufficient disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, front-loaded with the main action, and contains no unnecessary words. It efficiently conveys the purpose and key cost information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with no parameters and no output schema. The description covers the purpose, the specific contents of the return value, and the cost structure. This is complete for the tool's low complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline is 4. The description adds no parameter details because none exist, and the empty schema is adequate. No further explanation is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: returning the full Valorem MEV Intelligence service catalog with endpoints, prices, and descriptions. This specific verb+resource combination distinguishes it from the sibling tools, which are individual services rather than an overview.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool should be used to discover available endpoints and pricing. It clearly provides context for when to use it, though it does not explicitly compare it to alternatives or state when not to use it. The free/no-payment note adds practical guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
decoded_hintsA
Returns the last 50 decoded MEV-Share hints from the Flashbots hint stream. Each hint includes swap direction (buy/sell), pool address, and token pair. Useful for front-running detection and MEV opportunity scanning. Cost: $0.10 USDC per call.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden and discloses important behavioral traits: call limit (last 50), output structure (swap direction, pool address, token pair), and cost ($0.10 USDC per call). It does not mention authentication or rate limits, but the disclosed cost and data details provide significant transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loaded with the main action, then provides useful detail and cost. Every sentence earns its place with no fluff or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description adequately describes what the tool returns and what each hint contains, plus cost and use cases. This is sufficient for an agent to understand the tool's functionality and justify invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and schema coverage is 100%, so the description does not need to explain parameters. It instead describes the output, which is appropriate given the empty input schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns the last 50 decoded MEV-Share hints, with a specific action (returns), resource (hints from Flashbots stream), and detail (last 50). It distinguishes itself from sibling tools by mentioning MEV-Share hints, which no other sibling tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear use case: 'Useful for front-running detection and MEV opportunity scanning.' This gives context for when the tool would be relevant, though it does not explicitly mention when not to use it or name alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
liquidation_watchlistA
Fetches Aave V3 near-liquidation positions from Valorem's real-time monitor. Returns wallet addresses, health factors (close to 1.0 are at risk), collateral assets, debt assets, and liquidation thresholds. Cost: $0.50 USDC per call.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It clearly indicates a read-only operation ('Fetches'), discloses the cost ($0.50 USDC per call), and explains return fields along with the meaning of health factors. It lacks details on authentication or error behavior, but for a simple parameterless fetch, this is adequate transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the primary action, followed by a concise list of return fields and cost. Every word earns its place, with no fluff or repetition of schema information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no parameters and no output schema, the description covers the essential aspects: what it fetches, the source, the key data fields, the interpretation of risk, and the cost. It is not overly verbose but leaves minor gaps such as network specificity and response format, which are acceptable for a simple data fetch.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, and the description correctly avoids extraneous parameter explanations. The baseline for no parameters is 4, and the description adds value by detailing the output fields, which helps the agent interpret the result.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the function: 'Fetches Aave V3 near-liquidation positions from Valorem's real-time monitor.' It uses a specific verb ('Fetches'), names the resource ('Aave V3 positions'), and adds a source ('Valorem's real-time monitor'). It also details the returned data (wallet addresses, health factors, etc.), which clearly distinguishes it from sibling tools focused on other data types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for monitoring liquidation risks by explaining health factors near 1.0 are risky, but it does not explicitly state when to use this tool versus alternatives. No exclusions or comparisons to sibling tools (e.g., pool_spreads, rpc_health) are provided, leaving the agent to infer applicability.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pool_spreadsA
Detects arbitrage spread opportunities across 125+ liquidity pools on Base and Arbitrum L2 networks. Returns pool addresses, spread percentages, token pairs, and estimated profit windows. Cost: $0.05 USDC per call.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full responsibility. It discloses the return data (pool addresses, spread percentages, token pairs, profit windows) and the per-call cost ($0.05 USDC), which is sufficient for a read-only detection tool. It does not describe error handling or rate limits, but these are not critical for this simple use case.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three short sentences with no fluff. It front-loads the core function, then lists return values and cost, making every sentence earn its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only tool with no output schema, the description covers the purpose, target networks, and return values. It is complete enough for an agent to decide when to invoke it, though it could optionally mention any time window or rate limit constraints.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema reflects this (100% coverage). The description does not need to add parameter semantics, so the baseline of 4 applies per the guidelines.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('detects') and resource ('arbitrage spread opportunities'), and adds distinguishing details (125+ pools, Base and Arbitrum L2 networks). This effectively differentiates it from sibling tools like liquidation_watchlist or token_safety.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when arbitrage spread detection is needed, and the network scope further clarifies context. However, it does not explicitly mention when not to use it or name alternative tools, so it lacks explicit exclusions but provides clear context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rpc_healthA
Returns real-time health metrics for multiple RPC providers: latency (ms), success rate, error rate, and uptime. Useful for routing decisions in high-frequency MEV strategies. Cost: $0.01 USDC per call.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses a key behavioral trait by noting the cost ($0.01 USDC per call) and states data is real-time. However, it does not mention rate limits, data source freshness, authentication, or error behavior, leaving some important operational context unstated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences, each providing necessary information: what the tool returns and when it is useful, plus the cost. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (no parameters), and the description enumerates the returned metrics, which largely compensates for the lack of an output schema. However, it could be slightly more complete by specifying how metrics are returned (e.g., per-provider object) or which providers are included, but the current level is adequate for agent use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema is trivially covered. The description adds no parameter-specific meaning, but none is needed. Baseline 4 is appropriate because the empty schema cannot be supplemented further.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses a specific verb ('Returns') with a clear resource ('real-time health metrics for multiple RPC providers') and specifies the exact metrics (latency, success rate, error rate, uptime). This clearly distinguishes it from siblings like rpc_proxy, which likely handles actual RPC calls, and other data tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear use case: 'Useful for routing decisions in high-frequency MEV strategies.' This gives context for when to invoke the tool, though it does not explicitly mention when not to use it or name alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rpc_proxyA
Proxies a JSON-RPC call through Valorem's premium Reth L1 node (~6 ms latency). Supports any standard Ethereum JSON-RPC method. Cost: $0.001 USDC per call.
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | Request ID — any integer or string. | |
| method | Yes | Ethereum JSON-RPC method (e.g. eth_blockNumber, eth_call, eth_getBalance, eth_sendRawTransaction) | |
| params | No | Method parameters array. Pass [] for methods that take no params. | |
| jsonrpc | No | JSON-RPC version string. Always use "2.0". | 2.0 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses latency (~6 ms), cost ($0.001 USDC per call), and the node provider (Valorem's Reth L1 node), which is useful context. However, it does not disclose whether the proxy is read-only or can broadcast state-changing methods (e.g., eth_sendRawTransaction), nor error handling, rate limits, or authentication. This is a moderate gap for a generic proxy.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core function, then adds latency and cost. Every sentence earns its place with no fluff. It is appropriately concise for a tool with a well-defined schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that this is a generic JSON-RPC proxy and the schema fully documents parameters, the description is relatively complete. It covers what the tool does, performance characteristics, and pricing. However, the lack of any output schema or mention of the standard JSON-RPC response format leaves a small gap. Also, the absence of annotations means the description must fully disclose safety/behavioral aspects, which it only partially does (e.g., no explicit statement about write support). Still, for a proxy, the description is strong.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with each parameter having a clear description. The tool description adds method examples (eth_blockNumber, eth_call) and notes 'Pass [] for methods that take no params', which slightly complements the schema. However, the description does not add novel parameter context beyond what the schema already provides, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action: 'Proxies a JSON-RPC call through Valorem's premium Reth L1 node'. It also specifies the scope ('Supports any standard Ethereum JSON-RPC method'), which distinguishes it from the sibling data-lookup tools (catalog, builder_stats, etc.). The verb 'proxies' + resource 'JSON-RPC call' is precise.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for use: it is a generic proxy for any standard JSON-RPC method, and the cost implies it is a paid service. However, it does not explicitly state when NOT to use it or mention alternatives. Given the sibling list, this tool is clearly the only raw RPC proxy, but explicit exclusionary guidance is absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
token_safetyA
Classifies an ERC-20 token as taxed, rebasing, or reflective — three patterns that cause unexpected losses in MEV and arb strategies. Cost: $0.02 USDC per call.
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ERC-20 token contract address with 0x prefix (e.g. 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the cost ($0.02 USDC per call) and the three classification outputs (taxed, rebasing, reflective), which are behavioral traits beyond a mere read operation. It doesn't explicitly state read-only status, but 'classifies' implies it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, front-loaded with the primary action and resource, and includes only essential information (classification categories and cost). No redundant or vague wording.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with a single well-documented parameter. The description covers its purpose and cost, which is sufficient for an agent to select and invoke it. It doesn't describe return format, but no output schema exists and the classification categories are already given in the description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a detailed description of the `token` parameter, including format and example. The tool description adds no new semantic information about the parameter, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Classifies an ERC-20 token as taxed, rebasing, or reflective' — a specific verb and resource. It also provides the output categories, which fully distinguishes it from the sibling tools (e.g., catalog, pool_spreads) that have different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the use case by mentioning 'MEV and arb strategies', providing clear context for when to use the tool. It doesn't explicitly list exclusions or alternative tools, but no sibling tool overlaps with this functionality, so the implicit guidance is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
9 tool updates
v1.0.0- First observed
agent_intelligence - First observed
builder_stats - First observed
catalog - First observed
decoded_hints - First observed
liquidation_watchlist - First observed
pool_spreads - First observed
rpc_health - First observed
rpc_proxy - First observed
token_safety
TDQS
Each tool serves a distinctly different purpose: catalog lists endpoints, liquidation_watchlist monitors Aave positions, decoded_hints scans MEV hints, builder_stats shows block builder health, agent_intelligence tracks wallet behavior, pool_spreads detects arbitrage, token_safety classifies token types, and rpc_health/rpc_proxy handle RPC monitoring and proxying. There is no overlap or ambiguity between any two tools.
All tool names follow a consistent snake_case noun-phrase pattern (e.g., liquidation_watchlist, builder_stats, rpc_health). The naming is uniform and predictable, making it easy for an agent to infer the tool's domain from its name alone.
With 9 tools, the server is well-scoped for a MEV intelligence and RPC service. Each tool covers a distinct data or action category without redundancy or bloat, fitting comfortably within the ideal 3-15 tool range.
The tool set covers the full lifecycle of the service: a catalog for discovery, data endpoints for MEV-related insights (liquidations, hints, builder stats, agent intel, spreads, token safety), and infrastructure tools (RPC health, proxy). The catalog tool explicitly lists all available endpoints, confirming no obvious gaps in the exposed surface.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Market data and web intelligence for AI agents, paid per call in USDC on Base via x402.
Pay-per-call crypto market intelligence for AI agents. USDC on Base via x402.
Pay-per-call data APIs for AI agents. USDC on Base via x402. 33 tools, no signup.
Pay-per-call tools for autonomous agents, settled in USDC on Base via x402.
161
Related MCP Servers
- AlicenseAqualityDmaintenanceMCP server for pay-per-call DeFi and crypto data via x402 micropayments on Base. 8 endpoints: token prices, TVL, funding rates, token security, gas tracker, whale monitoring, wallet profiling, and yield scanning.851MIT
- FlicenseNot gradedqualityDmaintenance56 pay-per-call MCP endpoints for AI agents. Market signals, macro economics, crypto/DeFi, geopolitical intelligence, SEC filings, GitHub velocity, sanctions screening. USDC on Base Mainnet via x402.-

hyperd-mcpofficial
AlicenseAqualityCmaintenancePre-trade DeFi intelligence for AI agents. 20 paid x402 endpoints, USDC on Base.23581MIT- AlicenseAqualityBmaintenanceProvides 16 crypto market data tools for MCP-compatible AI clients with x402/USDC micropayments on Base Mainnet.160MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ValoremFoundation/valorem-mev-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server