tradingagents-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| OPENAI_API_KEY | No | OpenAI API key (alternative to TRADINGAGENTS_API_KEY) | |
| DEEPSEEK_API_KEY | No | DeepSeek API key (alternative to TRADINGAGENTS_API_KEY) | |
| TRADINGAGENTS_MODEL | No | Deep thinking model name | |
| TRADINGAGENTS_API_KEY | No | API key (or use OPENAI_API_KEY or DEEPSEEK_API_KEY) | |
| TRADINGAGENTS_BASE_URL | No | API base URL | |
| TRADINGAGENTS_MAX_TOKENS | No | Maximum tokens per call | |
| TRADINGAGENTS_QUICK_MODEL | No | Quick thinking model name | |
| TRADINGAGENTS_TEMPERATURE | No | Sampling temperature | |
| TRADINGAGENTS_LLM_PROVIDER | No | LLM provider, e.g., openai, deepseek, custom_openai | |
| TRADINGAGENTS_MCP_DATA_DIR | No | Data directory for database and task workspace | ~/.tradingagents-mcp |
| TRADINGAGENTS_MCP_MAX_QUEUED | No | Maximum number of queued tasks | 20 |
| TRADINGAGENTS_MCP_GRAPH_CLASS | No | Import path for the graph class | tradingagents.graph.trading_graph.TradingGraph |
| TRADINGAGENTS_MCP_TASK_TIMEOUT | No | Task timeout in seconds | 1800 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_capabilitiesA | Return the capabilities and configuration of this TradingAgents MCP server. Describes what analyses are supported, default parameters, and server limits. All configuration listed here is non-sensitive — no credentials or API keys. |
| start_analysisA | Start a new financial research analysis for a given symbol. Creates an asynchronous analysis task. Use get_analysis_status to check progress and get_analysis_result to retrieve the final summary once the task succeeds. The full report is available as an MCP resource. Args: symbol: Stock ticker or crypto symbol (e.g. 'AAPL', '600519.SH', 'BTC'). analysis_date: Date to analyze as YYYY-MM-DD. Must not be in the future. Defaults to today. asset_type: 'stock' or 'crypto'. Auto-detected if omitted. depth: 'shallow' (default, faster) or 'deep' (more thorough). language: Output language: 'English' (default) or '中文'. idempotency_key: Optional stable key. Same key + same params returns existing task. |
| get_analysis_statusA | Get the current status of an analysis task. Returns task metadata including status (queued, running, succeeded, failed, cancelled) and timestamps. Use this to poll for completion. Args: run_id: Task identifier returned by start_analysis. |
| get_analysis_resultA | Get the result summary of a completed analysis task. Only returns the structured summary with rating and resource reference. The full markdown report is accessed through the MCP resource URI returned in the result. Args: run_id: Task identifier for a completed analysis. |
| list_analysesA | List analysis tasks with pagination. Args: status: Optional filter by status (queued, running, succeeded, failed, cancelled). cursor: Pagination cursor from a previous list call. limit: Maximum number of tasks to return (default 20, max 100). |
| cancel_analysisA | Cancel a queued or running analysis task. Cancellation stops the task and puts it in the 'cancelled' terminal state. The task and its partial results remain available for deletion. Cancellation of a succeeded or failed task has no effect. Args: run_id: Task identifier to cancel. |
| delete_analysisA | Permanently delete an analysis task and all its data. Per ADR-0009: tasks are never auto-cleaned. You must explicitly delete them with this tool. The confirm_run_id parameter must exactly match the task ID you want to delete — this prevents accidental deletion. Only terminal tasks (succeeded, failed, cancelled) can be deleted. Deletion removes the task record, the research report, all logs, and the idempotency mapping. This action is irreversible. Args: confirm_run_id: Must exactly match the run_id to confirm deletion. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 7 tools
Each tool has a distinct role in the analysis lifecycle: capabilities introspection, starting, checking status, retrieving results, listing, canceling, and deleting. There is no overlap or ambiguity between them.
All tool names follow a consistent verb_noun pattern (get_capabilities, start_analysis, get_analysis_status, etc.). The naming clearly reflects the action and resource, making the API predictable.
Seven tools is a well-scoped set for a task-management server. Each tool is necessary for the full lifecycle and no redundant tools exist.
The tool surface covers the complete analysis workflow: initiation, progress tracking, result retrieval, listing, cancellation, and deletion. Includes capabilities discovery and proper cleanup handling, with no obvious missing operations.