crypto-quant-signal-mcp
The server is an MCP quant-signal provider that returns composite, read-only crypto/market verdicts (direction, confidence, regime) for AI agents, backed by a verifiable on-chain track record.
get_trade_call (alias
get_trade_signal): BUY/SELL/HOLD verdict with confidence, price, indicators, market regime, and reasoning for any coin/equity on a chosen venue and timeframe (1m–1d).scan_trade_calls: Scan the top perps by open interest on a venue and get ranked actionable calls in one request; supports filters like min confidence, liquidity floor, ranking lenses (OI, volume, funding, volatility), and HOLD inclusion.
scan_funding_arb: Rank cross-venue funding-rate spreads across 15+ crypto perpetual venues to spot funding arbitrage opportunities.
get_market_regime: Classify the market as TRENDING_UP, TRENDING_DOWN, RANGING, or VOLATILE with confidence and a strategy hint.
search_knowledge / chat_knowledge: Fast BM25 search or grounded Q&A over the project's docs, tool schemas, and integration code examples.
get_track_record: Retrieve the aggregated, Merkle-verified PFE win-rate track record, optionally broken down by asset, venue, or recent signals.
Works with any MCP HTTP client (Claude, Cursor, Cline, Codex, etc.) and integrates with agent frameworks (LangChain, LlamaIndex, CrewAI, Microsoft Agent Framework) and crypto exchange trade kits (read-only analytics only — no order placement).
Provides cross-venue funding rate analysis and arbitrage detection by integrating with Binance's derivatives market data alongside Hyperliquid and Bybit for composite quant signals.
Provides on-chain verification of trade signals via Base L2 (Ethereum layer-2), anchoring call hashes in daily Merkle batches for tamper-proof track record verification.
Supports remote performance tracking infrastructure with automated outcome backfill for trade signal verification and historical analysis.
Provides local performance tracking database for trade signal outcomes and historical analysis in standalone deployments.
Quick start (30 seconds)
No code. No API key. No install. The server speaks Streamable HTTP at https://api.algovault.com/mcp — any Model Context Protocol client connects directly.
1. Add the connector. In Claude → Settings → Connectors → Add custom connector:
Field | Value |
Name |
|
URL |
|

2. Ask for a call. In plain language:
"Get me a trade call for ETH on the 4h timeframe"

Your Claude now has a quant analyst built in. Prefer local? Run npx -y crypto-quant-signal-mcp.
Running locally on npm 12+? npm v12 disables dependency install scripts by default. AlgoVault's optional local SQLite mode uses the native
better-sqlite3module — if you install it into a project, runnpm approve-scripts(ornpm install --allow-scripts) to build it. The hosted HTTP transport (api.algovault.com/mcp) needs no local build.
Related MCP server: Web3 Signals — Crypto Signal Intelligence
What one call returns
One API call. One verdict. Not 8 raw indicators. get_trade_call returns a directional BUY / SELL / HOLD with a confidence score and the detected market regime — a composite verdict, not a data dump for your agent to interpret.
Under the hood, a self-tuning model fuses momentum, trend structure, derivatives positioning, open interest, and volume into one weighted call. Every call reports market regime — trending, ranging, or volatile — alongside direction and confidence. Directional calls fire only when conviction clears the threshold; roughly 99% of evaluations return HOLD.
{
"call": "BUY",
"confidence": 78,
"price": 84250.50,
"indicators": {
"funding_rate": 0.0001,
"funding_24h_avg": 0.00008,
"funding_state": "NORMAL",
"oi_change_pct": 2.4,
"volume_24h": 2381602633,
"trend_persistence": "HIGH",
"breakout_pending": "INACTIVE"
},
"regime": "TRENDING_UP",
"reasoning": "Trending regime, upward bias. Funding pressure mild. Volatility neither expanding nor compressed. Trend persistence elevated; momentum structure. Strong conviction from aligned signals.",
"timestamp": 1712764800,
"coin": "BTC",
"timeframe": "1h",
"also_see": [
{ "coin": "ETH", "timeframe": "1h", "confidence": 82 },
{ "coin": "SOL", "timeframe": "15m", "confidence": 73 }
],
"_algovault": {
"version": "1.30.0",
"tool": "get_trade_call",
"compatible_with": []
}
}The _algovault block is the envelope every tool response carries: the server version, the tool that answered, your quota, and compatible_with — the companion packages that accept this object directly. It projects from a machine-verified registry, so it lists a package only once that package is published and runnable. It is [] today, and that is the truthful answer: there is no companion package yet.
Live, verifiable track record
The full record is public and on-chain — no cherry-picking, no survivorship bias:
Live dashboard — algovault.com/track-record
Merkle batch verifier — algovault.com/verify
Anchor contract on Base L2 —
0x6485…0f81All batches (raw JSON) — api.algovault.com/api/merkle-batches
AlgoVault is also a verified agent on the ERC-8004 Identity Registry (Base L2), agentId 44544 — a portable, on-chain handle AI orchestrators can resolve.
Works with your stack
AlgoVault is drop-in for every MCP-spec client, every major agent framework, and every official exchange Agent Trade Kit — no SDK, no wrapper. It serves Streamable HTTP at https://api.algovault.com/mcp; tools/list + resources/list is the API surface.
MCP clients.
Client | Config |
Claude Desktop | Settings → Connectors → Add custom connector → |
Claude Code (CLI) |
|
Cursor |
|
Cline | VS Code Cline extension → MCP server settings → add Streamable HTTP server |
Codex (OpenAI CLI) |
|
Windsurf |
|
Continue.dev |
|
Any other MCP-spec-compliant client | Configure the Streamable HTTP transport with URL |
Agent frameworks. First-party tutorials pair AlgoVault with each framework's canonical MCP adapter — copy-pasteable demo code, no SDK.
Framework | Tutorial | Runnable demo | Mirror |
LangChain | |||
LlamaIndex | |||
Microsoft Agent Framework | |||
CrewAI |
Each demo is runnable as python examples/<framework>/demo.py BTC 4h — gets a real BUY/SELL/HOLD verdict from api.algovault.com/mcp, prints it. ≤5 minutes to first call.
Exchange Agent Trade Kits. AlgoVault returns the analytics; your agent's risk policy decides what to execute. All demos run testnet/demo only. For Binance, the Agent OS path is the recommended default for new integrations — OAuth at connect time, no API keys on the machine; the key-based kit remains right for custom order types.
# | Exchange | Tutorial | Demo | Mirror |
01 | Binance | |||
02 | OKX | |||
03 | Bybit | |||
04 | Bitget | |||
05 | Hyperliquid | |||
06 | Aster | |||
07 | BingX | |||
08 | KuCoin | |||
09 | Gemini | |||
10 | Kraken | |||
11 | Alpaca | |||
12 | Gate.io | |||
13 | Binance Agent OS | — |
Tools & resources
The MCP tools live at https://api.algovault.com/mcp. Every asset works across the full supported timeframe range, on major crypto perpetual venues.
get_trade_call(aliasget_trade_signal) — composite BUY/SELL/HOLD verdict with confidence + regime, any asset, any timeframe.scan_trade_calls— scans the top-N perps by open interest on a venue; returns every actionable call in one shot.scan_funding_arb— cross-venue funding-rate spreads across 7 venues (Hyperliquid, Binance, Bybit, Gate, KuCoin, Aster, OKX), ranked. The only MCP server doing multi-exchange derivatives arbitrage.get_market_regime— classifies TRENDING_UP / TRENDING_DOWN / RANGING / VOLATILE for strategy selection.search_knowledge+chat_knowledge— free BM25 search and grounded Q&A over the full knowledge bundle.get_track_record— the published track record as a tool call, for clients that bridge tools but not resources.includeopens the per-asset, per-venue and recent-call sections.
Performance is exposed as a read-only MCP resource: performance://signal-performance (aggregated PFE win rate, never raw outcomes). Full parameter reference at algovault.com/docs.
Skills (20 ready-to-use Anthropic Agent Skills)
Single-prompt wrappers over 1–3 tool calls — regime gating, multi-timeframe consensus, funding-arb monitoring, and more. Install with claude plugin install AlgoVaultLabs/algovault-skills; browse at algovault.com/skills.
# | Slug | Name | Difficulty | Tools |
01 | Quick BTC Check | Beginner |
| |
02 | Portfolio Scanner | Intermediate |
| |
03 | Regime-Aware Trading | Intermediate |
| |
04 | Funding Arb Monitor | Intermediate |
| |
05 | Full 3-Tool Pipeline | Advanced |
| |
06 | Multi-Timeframe Confirmation | Advanced |
| |
07 | TradFi Rotation | Advanced |
| |
08 | Risk-Gated Entry | Advanced |
| |
09 | Funding Sentiment Dashboard | Advanced |
| |
10 | Contrarian Meme Scanner | Advanced |
| |
11 | Divergence Detector | Advanced |
| |
12 | Hourly Digest Bot | Advanced |
| |
13 | Hedging Advisor | Advanced |
| |
14 | Volatility Breakout Watch | Advanced |
| |
15 | Cross-Asset Correlation | Advanced |
| |
16 | Funding Cash-and-Carry | Advanced |
| |
17 | Weekend vs Weekday Patterns | Research |
| |
18 | Agent Portfolio Rebalance | Advanced |
| |
19 | Smart DCA Bot | Advanced |
| |
20 | Multi-Agent War Room | Expert |
|
Pricing
Quota-only tiers. Every tier gets all venues, all assets, all timeframes — you pay for call volume, nothing else.
Two meters per paid tier, monthly and daily, enforced independently: a call is refused when either is exhausted, and the daily window is a UTC calendar day resetting at 00:00 UTC. Quota is counted per call, regardless of verdict.
Feature | Free | Starter ($9.99/mo · $39.90/6mo) | Pro ($49/mo · $129/6mo) | Enterprise (contact us) | x402 (per call) |
Exchanges | All 15 | All 15 | All 15 | All 15 | All 15 |
Assets | All 740+ | All 740+ | All 740+ | All 740+ | All 740+ |
Asset classes | Crypto + TradFi | Crypto + TradFi | Crypto + TradFi | Crypto + TradFi | Crypto + TradFi |
Timeframes | All 11 | All 11 | All 11 | All 11 | All 11 |
Funding arb results | Top 5 | Unlimited | Unlimited | Unlimited | Unlimited |
Track record | Full access | Full access | Full access | Full access | Full access |
Monthly calls | 200/mo | 10,000/mo | 100,000/mo | Custom volume — contact us | Unlimited |
Daily calls | 100/day | 1,000/day | 10,000/day | Custom volume — contact us | Unlimited |
Price | $0 | $9.99/mo or $39.90/6mo | $49/mo or $129/6mo | Contact us | $0.01–0.05/call |
Subscriptions: Sign up at api.algovault.com/signup. Starter unlocks 10,000 calls/mo (up to 1,000/day) for $9.99/mo, or $39.90 for six months prepaid — add ?interval=6month to pick the prepay term. API key delivered instantly after checkout.
Pro 6-month is currently $129 — limited-time pricing; subscribe now and renewals keep your price.
x402 micropayments: AI agents pay per HTTP call with USDC on Base — no signup, no API key, no billing. The payment receipt is the credential. See x402.org.
What's new in v1.30.0
🔑 Your key, one click away. Every tool response that carries an auth block now returns
claim_urlandclaim_hintin the_algovaultenvelope — a direct link to keep the key you are already using, and a heads-up before you reach the cap.💵 Six-month pricing is machine-readable.
GET /api/plans/publicgainsprice_usd_6monthon every tier, so a client can render prepay pricing instead of hardcoding it.🤝 Enterprise is quoted, not published. The plans endpoint now returns
nullfor Enterprise price and limits rather than a fixed figure. No key was removed — the values are null.
Upgrading from v1.29.x — nothing breaking, but one value changed: if you rendered an Enterprise price from GET /api/plans/public, it is now null and Enterprise is quoted directly. Every tier key is still present. Two response fields were added, no tool was added or renamed.
v1.29.x highlights (recap)
📊 The track record is a tool, not only a resource.
get_track_recordreturns the same verified aggregate asperformance://signal-performance, so a harness that bridges tools but not resources can read it.✋ HOLD means HOLD. When a book is not currently trading, the call returns HOLD instead of a direction, and the reasoning says so and says when it resumes.
🔓 Allowances are machine-readable.
GET /api/plans/publicreturns the current free and paid call limits, unauthenticated.
v1.28.x highlights (recap)
🔐 Authentication tells you what happened. Every response carries
_algovault.auth. A well-formed but unrecognised key is refused instead of being quietly served free-tier data, and "malformed", "unknown" and "we couldn't verify" are three distinct outcomes.📘 Two parameters that were always there, now documented.
assetClasson the trade-call tools andminLiquidityUsdonscan_trade_calls, both projected from the live schema so the docs cannot drift from the server.🤝 Pair with Binance Agent OS. One MCP client, two servers: AlgoVault returns the verdict, Binance Agent OS executes it. OAuth at connect time — no API keys on your machine, and trading confined to a sub-account you fund yourself.
Refresh your MCP client to pick up this release. MCP clients cache
tools/listat session start — Claude.ai/Desktop: toggle the connector off+on; Cursor/Cline: restart the MCP server connection.
Privacy
Local mode: zero telemetry — call history stays on your machine. Remote mode: request metadata logged for analytics (IP hashed, never stored raw). See the privacy policy.
License
MIT
Disclaimer: AlgoVault provides directional entry interpretation for AI agents. Exit timing is determined by your agent or strategy. This is not financial advice. Past performance does not guarantee future results.
Available Tools
8 toolschat_knowledgeARead-onlyInspect
Returns a synthesized natural-language answer with citations, grounded in the AlgoVault knowledge bundle (every MCP tool description, response shape, integration tutorial, and code example). Use when you need an explanation, code pattern, or how-to; for raw ranked snippets without LLM synthesis use search_knowledge (faster, no quota cost). Read-only: calls an LLM, no other side effects. Quota: Free 10/month, Starter 50, Pro 200, Enterprise 2000.
| Name | Required | Description | Default |
|---|---|---|---|
| model | No | Optional model override (default claude-haiku-4-5-20251001). | |
| question | Yes | Natural-language question (5-500 chars). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite annotations already declaring read-only, the description adds valuable operational context beyond them: it calls an LLM (implying cost/latency), has no other side effects, and lists specific quota limits per plan (Free 10, Starter 50, Pro 200, Enterprise 2000). This exceeds the annotation baseline.
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 with a distinct purpose: what it does, when to use it (and when not), and operational constraints (read-only, quota). No redundant or filler content.
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 description, combined with a fully documented schema and annotations, covers the tool's return type, use cases, alternatives, quota, and safety profile. Since there is no output schema, the explicit mention of 'synthesized natural-language answer with citations' sufficiently communicates the expected response.
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 provides 100% coverage for both parameters (question with length constraints, model with enum options). The description adds no additional parameter semantics, which is the expected baseline when schema coverage is high.
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 uses a specific verb ('Returns'), identifies the resource ('AlgoVault knowledge bundle'), and specifies the output ('synthesized natural-language answer with citations'). It also explicitly distinguishes the tool from the sibling search_knowledge by contrasting LLM synthesis vs. raw ranked snippets.
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?
Clear usage guidance is provided: 'Use when you need an explanation, code pattern, or how-to', and an explicit alternative is named ('for raw ranked snippets without LLM synthesis use search_knowledge'), including the trade-off that it is faster and has no quota cost.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_market_regimeARead-onlyInspect
Returns the market regime — TRENDING_UP TRENDING_DOWN RANGING VOLATILE — with confidence and a strategy hint, for one crypto perpetual futures. Composite verdict: trend ranging + cross-venue funding rate. Read-only, live exchange APIs. Verified track record: get_track_record or performance://signal-performance; on-chain verified merkle anchor.
| Name | Required | Description | Default |
|---|---|---|---|
| coin | Yes | Base asset crypto signal, e.g. BTC ETH SOL signal. Crypto quant regime. | |
| exchange | No | Crypto venue, e.g. Binance Bybit OKX Bitget Hyperliquid. Multi-exchange. | HL |
| timeframe | No | Candle timeframe, e.g. 1h 4h 1d. Buy sell hold AI trading signal context. | 4h |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, and the description reinforces this with 'Read-only, live exchange APIs.' It adds useful behavioral context beyond the annotations: the verdict is composite of trend/ranging and cross-venue funding rate, and the output includes confidence and a strategy hint. It does not cover rate limits or failure modes, but with annotations present the safety profile is sufficiently disclosed.
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 and front-loads the key deliverable: the market regime values, confidence, and strategy hint. The verification sentence is dense but not bloated, and there is no redundant padding.
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 read-only retrieval tool with three well-documented parameters and no output schema, the description supplies the return values, confidence, strategy hint, and composite methodology. It lacks explicit sibling routing and exact response structure, but those gaps are minor given the schema enum coverage and annotations.
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 description coverage is 100%, so the baseline is 3. The description adds little about the exact parameters beyond limiting the tool to a single crypto perpetual futures asset. It does not add syntax, default semantics, or parameter-specific guidance beyond what the schema already provides.
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 names a specific verb ('Returns'), the resource ('market regime'), the possible output values, and the asset scope ('crypto perpetual futures'). It does not explicitly differentiate itself from siblings like get_trade_signal or get_trade_call, but the regime-value list makes the core purpose clear.
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 context 'for one crypto perpetual futures' implies when the tool is relevant, and 'Read-only, live exchange APIs' clarifies the nature of the call. However, there is no explicit guidance about when to use this tool versus alternatives, and the get_track_record mention is about validating track record rather than choosing between tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_track_recordARead-onlyInspect
Returns the AlgoVault track record — aggregated PFE win rates by call type, timeframe and asset tier, plus the evaluation methodology and window. The same verified aggregate the performance://signal-performance resource serves, callable from harnesses that bridge tools only. Defaults to the compact aggregate; use include for the per-asset, per-venue or recent-signal breakdowns. Read-only, no side effects.
| Name | Required | Description | Default |
|---|---|---|---|
| include | No | Optional extra sections: byAsset, byExchange, recentSignals. Omit for compact. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false; the description reinforces this with 'Read-only, no side effects.' It adds useful behavior beyond annotations: compact-by-default output, optional breakdown sections, and the fact that the same aggregate is served by performance://signal-performance. No contradiction.
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, each earning its place: purpose/content, alternative-resource context, and parameter/default behavior. The key return content is front-loaded before the include guidance, and there is no 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 read-only aggregate tool with no output schema, the description tells the agent what data is returned (PFE win rates, methodology, window), how to control detail with include, and that it is safe to call. The annotations cover the safety profile, and no essential call-time behavior is missing.
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 schema already documents the single include parameter with enum values and the 'Omit for compact' guidance, so description coverage is 100% and the bar is lower. The description adds mild semantic color by calling byExchange 'per-venue' and framing the values as breakdown sections, but it does not substantially extend the 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?
Description opens with a specific verb and resource ('Returns the AlgoVault track record') and specifies the exact contents: aggregated PFE win rates by call type, timeframe, and asset tier, plus methodology and window. This clearly distinguishes it from sibling tools like get_trade_call and get_trade_signal, which return individual calls/signals rather than an aggregate record.
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?
It states when the compact default is appropriate and when to use the include parameter for per-asset, per-venue, or recent-signal breakdowns. It also notes the performance://signal-performance equivalence and harness-only callability. It does not explicitly name exclusion cases or sibling alternatives, but the usage context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_trade_callARead-onlyInspect
Returns a composite verdict — BUY SELL HOLD trade call with confidence and market regime — for one crypto or tokenized-stock perpetual futures. One asset only; whole-market scan: scan_trade_calls. Read-only: live exchange APIs, no orders. Verified track record: get_track_record or performance://signal-performance; on-chain verified merkle anchor.
| Name | Required | Description | Default |
|---|---|---|---|
| coin | Yes | Base asset, e.g. BTC ETH SOL signal, or a US stock/ETF ticker (no USDT). | |
| exchange | No | Crypto venue (default Binance), e.g. Binance Bybit OKX Bitget Hyperliquid. | |
| timeframe | No | Candle timeframe, 1m to 1d. Default 15m. Crypto quant intraday horizon. | |
| assetClass | No | Force engine: 'perp' or 'equity'. Cross-venue multi-exchange AI trading signal. | |
| includeReasoning | No | Include reasoning: trend ranging crypto signal and market regime drivers. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool read-only and non-destructive; the description reinforces this with 'live exchange APIs, no orders,' which adds operational context beyond the hints. It also discloses the verified-provenance angle with get_track_record and the on-chain merkle anchor. No contradiction with annotations.
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 compact sentences front-load the core behavior and scope before routing to alternatives. The track-record sentence is marginally tangential but still informative, and there is no real padding.
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 simple read-only lookup with rich schema coverage, the description covers purpose, scope, alternative, and safety in a compact way. Without an output schema, it gives the main elements of the return (verdict, confidence, market regime) but not a complete response shape; still sufficient to call correctly with just the coin parameter.
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% and each parameter already has descriptive text with defaults and examples. The description adds only the one-asset constraint and the composite-verdict framing, not new parameter-level semantics, so the schema carries the weight.
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 first sentence names a specific verb and resource: returns a composite BUY/SELL/HOLD verdict with confidence and market regime for a single perpetual-futures asset. It also explicitly contrasts with the whole-market scan sibling scan_trade_calls, so an agent can distinguish the tool without opening the schema.
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 'One asset only; whole-market scan: scan_trade_calls' sentence gives an explicit alternative and the condition that selects it. However, it does not explain how to choose between get_trade_call and the similarly named get_trade_signal, leaving that distinction implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_trade_signalARead-onlyInspect
Returns a composite verdict — BUY SELL HOLD trade call with confidence and market regime — for one crypto or tokenized-stock perpetual futures. One asset only; whole-market scan: scan_trade_calls. Read-only: live exchange APIs, no orders. Verified track record: get_track_record or performance://signal-performance; on-chain verified merkle anchor. [ALIAS] This tool is an alias of get_trade_call — same behavior, kept for backward compatibility. Prefer get_trade_call for new integrations.
| Name | Required | Description | Default |
|---|---|---|---|
| coin | Yes | Base asset, e.g. BTC ETH SOL signal, or a US stock/ETF ticker (no USDT). | |
| exchange | No | Crypto venue (default Binance), e.g. Binance Bybit OKX Bitget Hyperliquid. | |
| timeframe | No | Candle timeframe, 1m to 1d. Default 15m. Crypto quant intraday horizon. | |
| assetClass | No | Force engine: 'perp' or 'equity'. Cross-venue multi-exchange AI trading signal. | |
| includeReasoning | No | Include reasoning: trend ranging crypto signal and market regime drivers. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false; the description adds that it queries 'live exchange APIs, no orders', discloses alias equivalence with get_trade_call, and mentions a verified track record. This adds useful behavioral context beyond annotations, though it could detail latency or failure modes.
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 main output is front-loaded in the first sentence. Subsequent sentences each serve a purpose: scope, whole-market alternative, read-only safety, verification, and alias. It is dense but not bloated; the 'performance://signal-performance' reference is slightly cryptic but still earns 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 tool with five parameters, no output schema, and informative annotations, the description covers the return shape (BUY/SELL/HOLD, confidence, market regime), single-asset input, read-only behavior, and alias relationship. It could add default exchange/timeframe behavior or response structure details, but the current context is sufficient for correct 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?
Input schema coverage is 100%, so the baseline is already satisfied. The description adds meaning by clarifying 'One asset only' and 'crypto or tokenized-stock perpetual futures', which usefully constrains the coin and assetClass parameters beyond the schema examples.
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 opens with a specific verb and resource: 'Returns a composite verdict — BUY SELL HOLD trade call with confidence and market regime — for one crypto or tokenized-stock perpetual futures.' It explicitly distinguishes itself from scan_trade_calls ('One asset only; whole-market scan') and identifies the alias get_trade_call, so sibling confusion is minimized.
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 states single-asset scope and routes whole-market scans to scan_trade_calls. It also points to get_track_record/performance://signal-performance for verification and advises preferring get_trade_call for new integrations, giving clear when-to-use and alternative guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scan_funding_arbARead-onlyInspect
Ranked cross-venue funding arbitrage across major crypto perpetual futures venues — funding rate spreads, long one venue short another, as a BUY SELL HOLD composite verdict per pair. AI trading signal for crypto quant and Claude trading agents. Trade call via get_trade_call, market regime via get_market_regime. On-chain verified merkle anchor.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max ranked results, e.g. 5 (free tier cap). Crypto quant AI trading signal. | |
| minSpreadBps | No | Minimum funding rate spread in bps. Cross-venue multi-exchange crypto signal. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds meaningful context: outputs are ranked, include a composite verdict, and are 'on-chain verified merkle anchor' – enriching the behavioral picture beyond the annotations without contradiction.
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 only three sentences with the core purpose front-loaded. The second sentence ('AI trading signal...') is somewhat promotional, but the overall structure is efficient and no essential details are buried.
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 output schema, the description gives a reasonable sense of what is returned (ranked pairs, spread, separate verdict, merkle anchor). It could be more explicit about output fields, but given the simple params and annotations, it is sufficiently complete.
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 descriptions cover both parameters (limit, minSpreadBps) with defaults and ranges (100% coverage). The description does not add further parameter-level meaning, 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 the tool scans cross-venue funding arbitrage and returns ranked per-pair spreads and BUY/SELL/HOLD verdicts. The specific verb 'scan' and resource 'funding arbitrage' distinguish it from siblings like scan_trade_calls and get_trade_call.
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 names related tools (get_trade_call, get_market_regime) providing useful alternatives for specific needs. However, it does not explicitly contrast with scan_trade_calls or mention when not to use this tool, falling just short of full guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scan_trade_callsARead-onlyInspect
Returns ranked BUY SELL HOLD trade calls across the top crypto perpetual futures by open interest — one scan for whole-market coverage, each with confidence and market regime. Use this for breadth; use get_trade_call for per-coin depth and reasoning. Read-only: reads live exchange APIs, places no orders.
| Name | Required | Description | Default |
|---|---|---|---|
| topN | No | How many top perps by open interest to scan, 1 to 100 (default 20). | |
| limit | No | Max ranked calls to return, 1 to 100 (default 10). Non-HOLD ranked first. | |
| rankBy | No | Universe lens: oi (default) volume gainers losers movers funding_positive funding_negative volatility oi_change (aliases vol gain lose move pfr nfr atr oid). funding_*/volatility/oi_change rank among the most-liquid perps; oi_change = real 24h open-interest %Δ. | oi |
| oiBasis | No | OI-delta basis for rankBy=oi_change: notional (default, USD) or contracts (base-coin, price-independent). Ignored by other lenses. | notional |
| exchange | No | Crypto venue (default Binance), e.g. Binance Bybit OKX Bitget Hyperliquid. | BINANCE |
| timeframe | No | Candle timeframe, 1m to 1d for the scan. Default 15m intraday. | 15m |
| includeHolds | No | Include HOLD calls after non-HOLD (default false). | |
| minConfidence | No | Optional confidence floor, 0 to 100, applied to non-HOLD trade calls. | |
| oiChangeWindow | No | OI-delta window for rankBy=oi_change: 1h, 4h, or 24h (default 24h). Ignored by other lenses. | 24h |
| minLiquidityUsd | No | Optional USD liquidity floor applied to the scan universe: notional open interest, or 24h volume on venues that expose no bulk OI. Omitted means no floor. | |
| includeReasoning | No | Enrich each non-HOLD call with price, the top 2-3 drivers, and one-line reasoning (default false → bare verdict cells). HOLDs stay bare. Same per-call detail as get_trade_call. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark readOnlyHint=true and destructiveHint=false. The description adds context beyond that by stating it 'reads live exchange APIs' and 'places no orders,' and it discloses output characteristics: ranked calls, confidence, and market regime. There is no contradiction with annotations.
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 carry all essential information: what it returns, when to use it, and its safety profile. The main purpose is front-loaded, usage guidance comes second, and safety is concise. No filler or redundant restating of the name.
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 an 11-parameter, read-only market scanner with no output schema, the description covers purpose, breadth-versus-depth routing, safety, and the shape of the result. The remaining operational details (parameter meanings, defaults, constraints) are fully covered by the rich input schema.
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 description coverage is 100%, and the schema already thoroughly documents every parameter with defaults, ranges, enums, and condition-specific meanings. The description adds high-level context about whole-market scanning but does not need to repeat parameter details. 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 opens with a specific verb and resource: 'Returns ranked BUY SELL HOLD trade calls across the top crypto perpetual futures by open interest.' It clearly distinguishes itself from the sibling get_trade_call by framing this as whole-market breadth versus per-coin depth, so an agent can select it without inspecting schemas.
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 explicitly says 'Use this for breadth; use get_trade_call for per-coin depth and reasoning.' This provides a direct when-to-use rule and names the alternative, making the selection decision unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_knowledgeARead-onlyInspect
Returns ranked snippets from the AlgoVault knowledge bundle answering a question about its MCP tools, response shapes, integration patterns (LangChain, LlamaIndex, MAF, CrewAI), or code examples. Call this BEFORE other tool calls to confirm parameter usage and avoid hallucinating tool shapes. Fast: BM25 lexical search, no LLM call, no quota cost. For a synthesized natural-language answer use chat_knowledge. Read-only, no side effects.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max ranked results (1-50, default 10). | |
| query | Yes | Natural-language search query (3-500 chars). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover read-only and non-destructive hints. The description adds valuable context: fast BM25 lexical search, no LLM call, no quota cost, and explicitly 'Read-only, no side effects.' This goes beyond the annotation basics, though it doesn't detail result structure or pagination, which is acceptable given the tool's simplicity.
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, each earning its place: functionality, usage timing, and alternative. Front-loaded with the core purpose, then key behavioral notes. No fluff or repetition of schema fields.
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 read-only, two-parameter tool with no output schema, the description covers purpose, when to use, performance characteristics, safety, and alternative tool. It is sufficiently 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.
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 meaning by explaining the query is a natural-language question about specific topics (MCP tools, response shapes, etc.), and reinforces the limit as controlling 'ranked results'. This is more than the schema alone provides.
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 uses a specific verb ('Returns') and resource ('AlgoVault knowledge bundle') with clear scope: ranked snippets answering questions about MCP tools, response shapes, integration patterns, or code examples. It also explicitly distinguishes itself from sibling chat_knowledge by noting that chat_knowledge provides synthesized natural-language answers.
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?
Provides explicit when-to-use guidance: 'Call this BEFORE other tool calls to confirm parameter usage and avoid hallucinating tool shapes.' Also names the alternative: 'For a synthesized natural-language answer use chat_knowledge.' This gives clear context and exclusions.
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.
5 tool updates
v1.30.0- Changed
get_market_regime1 field changed- changed
Input schema / properties / exchange / enumPrevious value: -[ - "HL", - "BINANCE", - "BYBIT", - "OKX", - "BITGET", - "ASTER", - "BINGX", - "GATE", - "HTX", - "KUCOIN", - "MEXC", - "PHEMEX", - "WHITEBIT", - "BITMART", - "XT" -]New value: +[ + "HL", + "BINANCE", + "BYBIT", + "OKX", + "BITGET", + "ASTER", + "BINGX", + "GATE", + "HTX", + "KUCOIN", + "MEXC", + "PHEMEX", + "WHITEBIT", + "XT", + "WEEX" +]
- Added
get_track_record - Changed
get_trade_call1 field changed- changed
Input schema / properties / exchange / enumPrevious value: -[ - "HL", - "BINANCE", - "BYBIT", - "OKX", - "BITGET", - "ASTER", - "BINGX", - "GATE", - "HTX", - "KUCOIN", - "MEXC", - "PHEMEX", - "WHITEBIT", - "BITMART", - "XT" -]New value: +[ + "HL", + "BINANCE", + "BYBIT", + "OKX", + "BITGET", + "ASTER", + "BINGX", + "GATE", + "HTX", + "KUCOIN", + "MEXC", + "PHEMEX", + "WHITEBIT", + "XT", + "WEEX" +]
- Changed
get_trade_signal1 field changed- changed
Input schema / properties / exchange / enumPrevious value: -[ - "HL", - "BINANCE", - "BYBIT", - "OKX", - "BITGET", - "ASTER", - "BINGX", - "GATE", - "HTX", - "KUCOIN", - "MEXC", - "PHEMEX", - "WHITEBIT", - "BITMART", - "XT" -]New value: +[ + "HL", + "BINANCE", + "BYBIT", + "OKX", + "BITGET", + "ASTER", + "BINGX", + "GATE", + "HTX", + "KUCOIN", + "MEXC", + "PHEMEX", + "WHITEBIT", + "XT", + "WEEX" +]
- Changed
scan_trade_calls1 field changed- changed
Input schema / properties / exchange / enumPrevious value: -[ - "HL", - "BINANCE", - "BYBIT", - "OKX", - "BITGET", - "ASTER", - "BINGX", - "GATE", - "HTX", - "KUCOIN", - "MEXC", - "PHEMEX", - "WHITEBIT", - "BITMART", - "XT" -]New value: +[ + "HL", + "BINANCE", + "BYBIT", + "OKX", + "BITGET", + "ASTER", + "BINGX", + "GATE", + "HTX", + "KUCOIN", + "MEXC", + "PHEMEX", + "WHITEBIT", + "XT", + "WEEX" +]
1 tool update
v1.28.2- Changed
scan_trade_calls1 field changed- changed
Input schema / properties / exchange / descriptionPrevious value: -"Venue: BINANCE (default) HL BYBIT OKX BITGET."New value: +"Crypto venue (default Binance), e.g. Binance Bybit OKX Bitget Hyperliquid."
3 tool updates
v1.28.0- Changed
get_market_regime1 field changed- changed
Input schema / properties / exchange / enumPrevious value: -[ - "HL", - "BINANCE", - "BYBIT", - "OKX", - "BITGET", - "ASTER", - "EDGEX", - "GATE", - "MEXC", - "KUCOIN", - "PHEMEX", - "BINGX", - "HTX", - "WEEX", - "BITMART", - "XT", - "WHITEBIT" -]New value: +[ + "HL", + "BINANCE", + "BYBIT", + "OKX", + "BITGET", + "ASTER", + "BINGX", + "GATE", + "HTX", + "KUCOIN", + "MEXC", + "PHEMEX", + "WHITEBIT", + "BITMART", + "XT" +]
- Changed
get_trade_call1 field changed- changed
Input schema / properties / exchange / enumPrevious value: -[ - "HL", - "BINANCE", - "BYBIT", - "OKX", - "BITGET", - "ASTER", - "EDGEX", - "GATE", - "MEXC", - "KUCOIN", - "PHEMEX", - "BINGX", - "HTX", - "WEEX", - "BITMART", - "XT", - "WHITEBIT" -]New value: +[ + "HL", + "BINANCE", + "BYBIT", + "OKX", + "BITGET", + "ASTER", + "BINGX", + "GATE", + "HTX", + "KUCOIN", + "MEXC", + "PHEMEX", + "WHITEBIT", + "BITMART", + "XT" +]
- Changed
get_trade_signal1 field changed- changed
Input schema / properties / exchange / enumPrevious value: -[ - "HL", - "BINANCE", - "BYBIT", - "OKX", - "BITGET", - "ASTER", - "EDGEX", - "GATE", - "MEXC", - "KUCOIN", - "PHEMEX", - "BINGX", - "HTX", - "WEEX", - "BITMART", - "XT", - "WHITEBIT" -]New value: +[ + "HL", + "BINANCE", + "BYBIT", + "OKX", + "BITGET", + "ASTER", + "BINGX", + "GATE", + "HTX", + "KUCOIN", + "MEXC", + "PHEMEX", + "WHITEBIT", + "BITMART", + "XT" +]
1 tool update
v1.26.0- Changed
scan_trade_calls1 field changed- changed
Input schema / properties / includeHolds / descriptionPrevious value: -"Include HOLD calls after non-HOLD (default false). HOLDs never cost quota."New value: +"Include HOLD calls after non-HOLD (default false)."
7 tool updates
v1.25.0- First observed
chat_knowledge - First observed
get_market_regime - First observed
get_trade_call - First observed
get_trade_signal - First observed
scan_funding_arb - First observed
scan_trade_calls - First observed
search_knowledge
TDQS
Scored across 8 tools
Most tools are clearly separated by scope (market-wide scan vs single-asset call, funding arb vs regime), but get_trade_call and get_trade_signal are exact duplicates -- one is explicitly an alias -- which will cause agent confusion. chat_knowledge and search_knowledge also both serve knowledge retrieval, though their descriptions distinguish synthesis from snippets.
Tool names consistently use snake_case imperative verb + noun (scan_, get_, chat_, search_). Minor inconsistency exists between trade_call and trade_signal for the same concept, and 'arb' is abbreviated in scan_funding_arb, but the overall pattern is predictable.
Eight tools is a well-scoped set for a crypto quant signal server: broad scan, per-asset verdict, regime, arbitrage, track record, and knowledge access. None feel extraneous, and the count matches the stated domain.
The main signal lifecycle is covered: market-wide scan, single-asset calls, regime, funding arbitrage, and verified track record. Minor gaps exist, such as no direct tool for raw market data or per-asset listing, but agents can accomplish the core workflow with this surface.
Maintenance
Related MCP Connectors
Live crypto market signals for AI agents: perp liquidations, funding, OI positioning, yield, FX.
Crypto market intelligence: regime detection, funding rates, liquidations, prices, signals.
Market intelligence for AI agents. Real-time data, cross-market analysis, and regime detection.
AI crypto signals, whale positions, 19 technical indicators, derivatives, screener and backtests
Related MCP Servers
AlicenseAqualityAmaintenanceProvides comprehensive crypto intelligence for the Hyperliquid exchange, allowing users to query trader profiles, behavioral cohorts, and live market data. It enables AI agents to analyze over 1.8 billion trades, track whale positions, and access real-time liquidation heatmaps.10351 npm6MIT- AlicenseNot gradedqualityCmaintenanceAI-powered crypto signal intelligence for 20 assets (BTC, ETH, SOL, etc). 6 scoring dimensions: whale activity, technical analysis, derivatives flow, narrative strength, sentiment, market structure. Market regime detection (TRENDING/RANGING), portfolio optimization, and accuracy tracking. 9 read-only MCP tools. Free via MCP, $0.001 USDC via x402 on Base for REST API.3MIT
- AlicenseAqualityDmaintenanceFinancial intelligence for AI agents. 31 tools across 8 data sources — regime, derivatives, stablecoin flows, momentum, volatility, macro, DeFi, weather patterns, political cycles, seasonality. The context layer between your agent and a bad trade.316 npm9MIT
- AlicenseAqualityCmaintenanceReal-time crypto intelligence for AI agents. Technical analysis, liquidation heatmaps, sentiment, and funding rates for 50+ Hyperliquid perpetuals via x402 micropayments.1551 PyPI1MIT