curistat-mcp
Integrates with CrewAI agents as volatility analysis tools, allowing AI analysts to access market forecasts, regime detection, rare signals, and research capabilities for futures trading intelligence.
Provides LangChain agents with volatility analytics tools for futures markets, including forecast generation, signal scanning, directional bias analysis, and historical market research capabilities.
Curistat MCP Server
Futures-specific volatility intelligence for AI agents via the Model Context Protocol.
The first MCP server dedicated to futures volatility analytics. Provides forecasts, regime detection, rare signals, directional bias, and research tools for ES, NQ, and related products.
Quick Start
1. Install
pip install curistat-mcp2. Get a Curistat API key
Sign up at curistat.com/developer and generate an API key.
3. Configure Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"curistat": {
"command": "python",
"args": ["-m", "curistat_mcp"],
"env": {
"CURISTAT_API_KEY": "cst_agent_your_key_here"
}
}
}
}Restart Claude Desktop. You can now ask Claude questions like:
"What's the volatility forecast for ES today?"
"Are there any rare signals firing for NQ?"
"Show me the economic calendar for next week"
"Find historical days similar to today for ES"
Related MCP server: BotSpot
Available Tools
Core Intelligence
Tool | Description |
| Daily volatility forecast (1-10 rating) with expected move ranges |
| 5-day forward volatility forecast |
| Scan all 24 rare volatility signals |
| Directional bias (17-component aggregate) |
| Full session planner with trade setups |
Regime
Tool | Description |
| CRC composite (0-100, 5 bands) |
| Market conditions snapshot |
Research
Tool | Description |
| Economic calendar with vol impact estimates |
| Historical vol analysis around specific events |
| Historical analog day lookup |
Supported Products
ES, NQ, MES, MNQ, SPX, SPY, QQQ
Agent Framework Integration
CrewAI
from crewai import Agent
from crewai_tools import MCPTool
curistat_tools = MCPTool(
server_command="python",
server_args=["-m", "curistat_mcp"],
server_env={"CURISTAT_API_KEY": "cst_agent_..."},
)
analyst = Agent(
role="Futures Volatility Analyst",
tools=[curistat_tools],
goal="Analyze market conditions and provide trading intelligence",
)LangChain
from langchain_mcp import MCPToolkit
toolkit = MCPToolkit(
server_command="python",
server_args=["-m", "curistat_mcp"],
server_env={"CURISTAT_API_KEY": "cst_agent_..."},
)
tools = toolkit.get_tools()Direct stdio (any MCP client)
CURISTAT_API_KEY=cst_agent_... python -m curistat_mcpThe server communicates via stdio using the MCP protocol.
Environment Variables
Variable | Required | Default | Description |
| Yes | -- | Your Curistat Developer API key |
| No |
| API base URL |
Rate Limits
Rate limits are enforced by your API key tier, not by the MCP server. The server is a thin client that proxies requests to the Curistat API.
Tier | Requests/min | Requests/day |
Free | 10 | 100 |
Pro | 60 | 5,000 |
Agent | 120 | 50,000 |
License
Available Tools
10 toolsget_calendarA
Get the economic calendar for the next N days (1-30).
Returns upcoming events with historical volatility impact estimates so agents can anticipate high-impact sessions.
| Name | Required | Description | Default |
|---|---|---|---|
| days | No |
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 return content but lacks details on behavioral traits such as idempotency, data freshness, or rate limits. For a tool without annotations, more transparency is needed.
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?
Two concise sentences: first defines purpose and range, second adds value by describing return contents. Every sentence earns its place with no waste.
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 the simplicity (1 param, no output schema, no annotations) and siblings, the description covers the key aspects. It could mention read-only nature or format, but overall it's 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 only parameter 'days' has no min/max in the schema. The description adds the constraint '1-30' and clarifies default behavior ('next N days'), adding value beyond the schema. Schema coverage is 0%, so description compensates well.
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 'Get' and resource 'economic calendar' with a clear range (1-30 days). It also mentions return content (events with volatility estimates), distinguishing it from sibling tools like get_direction or get_pulse.
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 retrieving calendar events but does not explicitly state when to use this tool over siblings or any exclusions. Some guidance is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_directionA
Get directional bias from a 17-component signal aggregate.
Products: ES, NQ, MES, MNQ, SPX, SPY, QQQ. Combines breadth, momentum, positioning, and structural signals into a single directional view.
| Name | Required | Description | Default |
|---|---|---|---|
| product | No | ES | |
| date | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It indicates the tool combines multiple signals into a single directional view, implying a read-only operation. However, it does not disclose potential side effects, authentication needs, or what happens with a null date.
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 extremely concise: two short sentences in the first paragraph and a list of products and signal types. Every sentence is informative with no waste.
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?
While the description explains the tool's purpose and inputs, it does not describe the return format or data type (e.g., a numeric score, a categorical label). Given the complexity of a 17-component aggregate, this omission leaves the agent uncertain about what to expect.
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 0%, so the description must compensate. It lists acceptable values for 'product' (ES, NQ, etc.), adding value beyond the schema. However, it does not explain the 'date' parameter, leaving its behavior ambiguous.
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 a directional bias from a 17-component aggregate, listing specific products and signal types. This distinguishes it from siblings like get_signals which provide individual signals or get_regime which provides market regime.
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 a consolidated directional view but does not explicitly state when to use this tool versus alternatives like get_signals or get_regime. No exclusions or context about prerequisites are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_event_impactB
Analyze historical volatility impact of a specific economic event.
event: Event name (e.g. CPI, FOMC, NFP, PPI, Retail Sales). Products: ES, NQ, MES, MNQ, SPX, SPY, QQQ. Returns pre/post event vol stats across multiple historical occurrences.
| Name | Required | Description | Default |
|---|---|---|---|
| event | Yes | ||
| product | No | ES |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavior. It states the output is 'pre/post event vol stats across multiple historical occurrences,' but does not detail how many occurrences, the date range, error handling, or any other behavioral traits that would help an agent understand what to expect.
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 concise with a clear first sentence and a bullet-like list of examples. Every line serves a purpose, though it could be slightly more structured with explicit sections for inputs and outputs.
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 the tool's simplicity (2 parameters, no output schema, no annotations), the description covers the basic function, inputs, and output. It is adequate but omits details like data source, historical depth, and potential limitations, which would be needed for full contextual completeness.
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 lacks descriptions (0% coverage). The description adds value by listing example event names and products, which clarifies valid inputs. However, it does not specify format constraints like case sensitivity or exact string matching, leaving some ambiguity.
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: analyzing historical volatility impact of a specific economic event. It provides concrete examples of events (CPI, FOMC, NFP, etc.) and products (ES, NQ, MES, etc.), which distinguishes it from sibling tools like get_calendar or get_direction.
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 analyzing event volatility, but it does not explicitly state when to use this tool versus alternatives or provide when-not-to-use guidance. The list of examples gives some context, but lacks explicit decision-making cues.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_forecast_todayB
Get today's volatility forecast with a 1-10 rating and expected move ranges.
Products: ES, NQ, MES, MNQ, SPX, SPY, QQQ. Returns rating, expected high/low, regime context, and key events.
| Name | Required | Description | Default |
|---|---|---|---|
| product | No | ES |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It lists output contents (rating, expected high/low, regime context, key events) but does not disclose behavioral traits such as whether the operation is read-only, data freshness, authentication requirements, or potential side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise, using bullet points to separate products and outputs. Every sentence adds value without 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?
Given the simplicity of the tool (one parameter, no output schema), the description adequately covers the return values: rating, expected high/low, regime context, and key events. It is sufficient for an AI agent to understand the tool's output.
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 has one optional parameter 'product' with default 'ES' and no description (0% coverage). The description adds meaning by listing supported product values: ES, NQ, MES, MNQ, SPX, SPY, QQQ, which guides the agent on valid inputs.
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 retrieves today's volatility forecast with a rating and expected move ranges, listing supported products. It implicitly distinguishes from sibling tools like get_forecast_week by specifying 'today', but does not explicitly differentiate from other daily forecasts like get_pulse or get_direction.
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?
No guidance on when to use this tool versus alternatives such as get_forecast_week, get_direction, or get_regime. The description does not mention cases where this tool is preferred or not, nor provide when-not-to-use criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_forecast_weekA
Get 5-day forward volatility forecast.
Products: ES, NQ, MES, MNQ, SPX, SPY, QQQ. Optional date parameter (YYYY-MM-DD) to anchor the forecast.
| Name | Required | Description | Default |
|---|---|---|---|
| product | No | ES | |
| date | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It implies a read-only operation ('Get'), but does not disclose side effects, rate limits, authentication needs, or what the forecast contains beyond 'volatility'. Basic transparency, but minimal.
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 succinct sentences: one for purpose, one for parameters. No unnecessary words. Information is front-loaded and easy to parse.
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 doesn't describe the return format or contents of the forecast. While the purpose and parameters are clear, the agent lacks full context on what it will receive, which is a gap for a tool with 2 parameters and no 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 has 0% description coverage. The description adds the list of valid products for the 'product' parameter and specifies the YYYY-MM-DD format and optionality for 'date'. This compensates well for the missing schema descriptions, though it doesn't explain default behavior when date is null.
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 retrieves a 5-day forward volatility forecast, specifying the resource (forecast_week) and verb (Get). It lists supported products, distinguishing it from siblings like get_forecast_today.
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?
No explicit guidance on when to use this tool versus alternatives like get_forecast_today or get_calendar. The product list implies usage for those symbols, but lacks context on use cases or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_pulseB
Get a market conditions snapshot for a product.
Products: ES, NQ, MES, MNQ, SPX, SPY, QQQ. Quick overview of current vol, regime, and key metrics.
| Name | Required | Description | Default |
|---|---|---|---|
| product | No | ES | |
| date | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, and the description only says 'quick overview of current vol, regime, and key metrics' without clarifying if it's read-only, requires auth, returns historical data, or has other behavioral traits.
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, front-loaded with purpose, no redundant words. Highly concise.
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?
Adequately describes purpose and output scope but fails to explain date parameter or output details. With no output schema, the description should clarify what the snapshot contains beyond vol/regime.
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 0%, but the description lists valid products, so it adds value for 'product'. However, it does not explain the 'date' parameter at all, leaving its meaning unclear.
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 it gets a market conditions snapshot for a product, lists specific products, and mentions key metrics (vol, regime). It distinguishes from siblings like get_calendar, get_direction, get_regime.
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?
No guidance on when to use this tool vs alternatives. No exclusions or usage scenarios provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_regimeA
Get the CRC (Curistat Regime Composite) reading, a 0-100 score across 5 bands that fuses HMM, VPIN, BOCD, Hurst exponent, and Sample Entropy into a single regime indicator.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explains the output (0-100 score, 5 bands, fused indicators) but does not mention if any state or authentication is needed. Given no annotations, the description adds good context for a simple read tool.
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 a single, complete sentence with no extraneous words. It is front-loaded and efficiently conveys the tool's purpose and output.
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 covers the output and its construction, but does not specify return format (e.g., JSON structure) or any real-time constraints. Lacks output schema, so description compensates well.
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?
There are no parameters, so the schema provides no details. The description adds value by explaining what the tool outputs, which is beyond 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?
The description clearly states the tool retrieves a CRC reading, a specific 0-100 score across 5 bands, and lists the fused indicators (HMM, VPIN, etc.). This distinguishes it from sibling tools like get_calendar or get_direction.
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?
No explicit guidance on when to use this tool versus alternatives. The purpose is implied, but no when-not-to-use or context is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_session_planB
Get a full session planner with pattern-driven trade setups for today.
Products: ES, NQ, MES, MNQ, SPX, SPY, QQQ. Returns key levels, expected behavior windows, and actionable setups based on the day's volatility forecast and regime.
| Name | Required | Description | Default |
|---|---|---|---|
| product | No | ES | |
| date | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description partially compensates by stating it returns key levels, behavior windows, and actionable setups. However, it does not disclose side effects, caching, rate limits, or whether it requires authentication, leaving gaps in behavioral understanding.
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 concise (4 lines), front-loaded with the main verb and resource, and each sentence adds meaningful detail about products and return items. No superfluous 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?
Given no output schema, the description adequately explains return types (levels, windows, setups) but omits details like output format, example values, and how it integrates with siblings. For a tool with 2 parameters and no required ones, it is moderately complete but could be more specific.
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 0%, so the description must document parameters. It mentions 'Products: ...' and 'for today' which loosely hint at product and date, but does not explain valid values, formats, or defaults with sufficient clarity. The default date null meaning 'today' is only implicit.
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 retrieves a full session planner with pattern-driven trade setups for today, listing specific products and return details (levels, windows, setups). This distinguishes it from sibling tools like get_forecast_today or get_regime.
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 lacks guidance on when to use this tool versus alternatives. It does not mention specific contexts, prerequisites, or exclusions, leaving the agent to infer usage from the tool name and sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_signalsA
Scan all 24 rare volatility signals for a given product and date.
Products: ES, NQ, MES, MNQ, SPX, SPY, QQQ. These are statistically rare conditions (VIX extremes, term structure inversions, volatility compression, etc.) that precede outsized moves.
| Name | Required | Description | Default |
|---|---|---|---|
| product | No | ES | |
| target_date | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It indicates a read operation ('scan') and lists products and signal types, but omits details on authentication, rate limits, side effects, or return format. The description is adequate but not comprehensive.
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 succinct with two short paragraphs: one stating the action, another listing products and clarifying the signal concept. No redundant or unnecessary information, every sentence adds value.
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 should describe what the tool returns (list, scores, etc.). It mentions scanning signals but no output structure. It also lacks details on how signals are presented or any call-to-action. This omission hinders complete understanding.
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 0% description coverage. The description adds meaning by listing valid product values (ES, NQ, etc.) and indicating target_date refers to a date. However, it does not explain the target_date format or that it can be null, nor does it detail the default behavior. Partial compensation for schema gaps.
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 all 24 rare volatility signals for a given product and date, explicitly listing supported products (ES, NQ, etc.) and explaining the nature of the signals as statistically rare conditions. This distinguishes it from sibling tools like get_calendar or get_direction, which serve 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 usage when one wants volatility signals for a product/date, but does not explicitly state when to use this tool versus alternatives like get_regime or get_pulse. It lacks explicit when-not-to-use or prerequisite conditions, providing only implicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_similar_daysA
Find historical days with conditions similar to today.
Products: ES, NQ, MES, MNQ, SPX, SPY, QQQ. Uses feature-vector similarity to find analog days, then shows what happened next -- useful for probabilistic scenario planning.
| Name | Required | Description | Default |
|---|---|---|---|
| product | No | ES | |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description partially discloses behavior (uses feature-vector similarity) but omits read-only nature, rate limits, or performance implications. The agent must infer it is a safe read operation.
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 concise with two clear sentences. It front-loads the core purpose, lists products, and adds methodological detail without 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 description adequately covers the tool's purpose and products for a simple 2-parameter tool with no output schema. It could mention return format or example usage, but is reasonably 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 description coverage is 0%. The description adds meaning for the product parameter by listing valid values, but limit is not explained. Baseline 3 is appropriate given the partial compensation.
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 finds historical days similar to today, specifies supported products, and distinguishes it from siblings like get_forecast_today by focusing on analog-based scenario planning.
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 use for probabilistic scenario planning but does not explicitly contrast with siblings or provide when-not-to-use guidance. Alternatives like get_forecast_today exist but are not mentioned.
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.
10 tool updates
- First observed
get_calendar - First observed
get_direction - First observed
get_event_impact - First observed
get_forecast_today - First observed
get_forecast_week - First observed
get_pulse - First observed
get_regime - First observed
get_session_plan - First observed
get_signals - First observed
get_similar_days
TDQS
Scored across 10 tools
Each tool has a distinct purpose: calendar, directional bias, event impact, daily/weekly forecasts, market pulse, regime, session plan, signals, and similar days. No two tools overlap in functionality.
All tools follow a consistent 'get_' prefix with clear noun descriptors (e.g., get_calendar, get_direction, get_event_impact). No mixed conventions or vague names.
10 tools is well-scoped for a market analysis server. Each tool provides a specific, valuable capability without excess or redundancy.
The tool set covers the full spectrum of market analysis: forecasts, regime, events, signals, and historical analogs. No obvious gaps within the stated domain of volatility and directional analysis.
Maintenance
Related MCP Connectors
Research-only MCP server: your AI as a quant research desk. 90 tools, no trades, no brokers.
Market intelligence for AI agents. Real-time data, cross-market analysis, and regime detection.
MCP server for Mudrex futures trading enabling AI agents to securely access data and risk tools.
MCP server for OpenMM — exposes market data, account, trading, and strategy tools to AI agents
Related MCP Servers
- -licenseNot gradedqualityNot gradedmaintenanceReal-time financial market data MCP server. Stocks, crypto, technicals, sentiment, FDA calendar. No API keys required.-
- FlicenseNot gradedqualityDmaintenanceFull-lifecycle algorithmic trading MCP server. AI strategy generation from plain English, backtesting, live bot deployment to 10+ brokers, portfolio monitoring, and prediction markets. Stocks, options, crypto, futures. 32 tools. Free tier.-
- FlicenseAqualityDmaintenanceAn MCP server that exposes futures prop firm data and personalized recommendation logic to AI agents like Claude and ChatGPT.6-
- AlicenseAqualityCmaintenanceMCP server for the Pyon trading platform that lets AI agents search markets, generate research, build and edit node-graph strategies, run backtests, diagnose problems, and optimize parameters with 2-D sweeps.1310 npm4MIT