TradingView OpenCode Agent
Allows writing, compiling, and managing Pine Script indicators and strategies, including error checking and adding oscillators.
Provides tools for chart analysis, reading indicators and SMC levels, managing alerts, capturing screenshots, multi-symbol scanning, and replay mode for trading practice through the TradingView Desktop application.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@TradingView OpenCode AgentAnalyze my ES1! chart on the 15-minute timeframe"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
TradingView OpenCode Agent 🤖
Conecta tu TradingView Desktop con opencode.ai para análisis de charts con IA.
Este proyecto está INSPIRADO en tradingview-mcp de tradesdontlie. No es un fork directo — es una reimplementación con código 100% original y documentación en español/inglés.
✨ Características
Característica | Descripción |
📊 Análisis de Chart | Lee indicadores, niveles, tablas de Pine, y estado del gráfico |
📈 Indicadores | SMC, ICT, RSI, MACD, Bollinger Bands, VWAP, EMA, SMA, Stochastic, y más... |
🎯 Niveles SMC | Detecta CHoCH, BOS, SFP, Fair Price Zones, zonas de liquidez |
⏪ Replay Mode | Practica trading en datos históricos con control de barras |
📋 Reports | Genera reportes de estrategia con métricas de rendimiento |
🔍 Multi-Symbol | Escanea múltiples instrumentos en batch |
📸 Screenshots | Captura charts automáticamente para análisis |
🔔 Alertas | Crea y gestiona alertas de precio |
Related MCP server: TradingView MCP Bridge
🚀 Instalación Rápida
# 1. Clonar el repo
git clone https://github.com/jadatorin/tradingview-opencode-agent.git
cd tradingview-opencode-agent
# 2. Instalar dependencias
npm install
# 3. Configurar opencode.ai
# Agregar a tu ~/.config/opencode/mcp.json:
{
"mcp": {
"tradingview": {
"command": ["node", "C:/Users/TU_USUARIO/proyects/tradingview-opencode-agent/src/index.js"],
"type": "local"
}
}
}
# 4. Iniciar TradingView con CDP (Chrome + sesión persistente)
.\launchers\launch_tv_cdp.ps1
# Alternativa: si tenés la versión Desktop (MSIX/Store):
.\launchers\launch_tv_msix.ps1
# ⚠️ MSIX no soporta CDP — las tools MCP no conectarán
# 5. Verificar conexión
npm run test📋 Requisitos
Requisito | Versión Mínima |
Node.js | 18+ |
TradingView Desktop | Windows/Mac/Linux (cualquiera) |
opencode.ai | Cliente MCP-compatible |
Suscripción TradingView | Para datos en tiempo real (opcional) |
🎯 Uso Rápido
Análisis de Chart
"Analiza mi chart de ES1! en 15 minutos"
"Qué indicadores tengo activos?"
"Cuáles son los niveles de soporte y resistencia?"
"Dame un screenshot del gráfico actual"Pine Script
"Escribe un indicador de VWAP con bandas"
"Compila mi script de estrategia"
"Hay errores de compilación? cuales?"
"Agrega un oscilador estocástico"Replay Trading
"Inicia replay en SPY desde marzo 2025"
"Avanza 5 velas hacia adelante"
"Toma una posición larga en el último swing"
"Cierra la posición y muéstrame el P&L"Multi-Symbol Scan
"Escanea ES, NQ, YM para oportunidades alcistas"
"Compara RSI en BTC, ETH y SOL"
"Múltiples screenshots de mi watchlist"📁 Estructura del Proyecto
tradingview-opencode-agent/
├── src/ # Servidor MCP
│ ├── index.js # Entry point
│ ├── server.js # Implementación del servidor
│ ├── config.js # Configuración centralizada
│ └── utils/
│ ├── cdp-client.js # Cliente Chrome DevTools Protocol
│ └── trading-helpers.js # Helpers de TradingView
│
├── opencode-skills/ # Skills para opencode.ai
│ ├── SKILL.md # Dispatcher principal
│ ├── chart-analysis/ # Análisis técnico
│ ├── pine-develop/ # Desarrollo Pine Script
│ ├── replay-practice/ # Modo replay
│ ├── multi-symbol-scan/ # Escaneo multi-símbolo
│ ├── strategy-report/ # Reportes de estrategia
│ └── docs/ # Docs de referencia
│
├── launchers/ # Scripts de lanzamiento
│ ├── launch_tv_cdp.ps1 # [RECOMENDADO] Chrome + CDP + sesión persistente
│ ├── launch_tv.ps1 # Windows universal (detecta cualquier versión)
│ ├── launch_tv.sh # Linux/macOS
│ ├── launch_tv_desktop.ps1 # Desktop installer
│ ├── launch_tv_msix.ps1 # Microsoft Store (sin CDP)
│ ├── start_all.ps1 # Lanza CDP + MCP server en un solo comando
│ └── start_mcp.ps1 # Solo MCP server (cuando TV ya está abierto)
│
├── docs/ # Documentación principal
└── package.json # Dependencias Node.js🔧 Configuración
Variables de Entorno (opcional)
# Puerto de debug de Chrome (default: 9222)
CDP_PORT=9222
# Host de Chrome (default: localhost)
CDP_HOST=localhost
# Directorio para screenshots (default: ./screenshots)
SCREENSHOT_DIR=./screenshots
# Timeout de operaciones (default: 30000ms)
TIMEOUT_MS=30000Configuración de MCP
OpenCode (formato correcto)
{
"mcp": {
"tradingview": {
"command": ["node", "C:/Users/TU_USUARIO/proyects/tradingview-opencode-agent/src/index.js"],
"type": "local"
}
}
}Claude Desktop / Cursor
{
"mcpServers": {
"tradingview": {
"command": "node",
"args": ["C:/Users/TU_USUARIO/proyects/tradingview-opencode-agent/src/index.js"]
}
}
}Tip: Para rutas relativas usa
./src/index.jssi el config está en la raíz del proyecto.
🛡️ Seguridad
Aspecto | Estado |
✅ Código 100% original | Auditado, sin dependencias externas |
✅ Sin conexiones a servidores | Todo corre localmente |
✅ Sin recopilación de datos | No hay telemetry ni tracking |
✅ Chrome DevTools Protocol | Conexión local a tu app |
📚 Documentación Detallada
Documento | Descripción |
Guía paso a paso de instalación | |
Configuración detallada de MCP | |
Arquitectura técnica del proyecto | |
Problemas comunes y soluciones | |
Scripts de lanzamiento | |
Skills de opencode.ai |
🤝 Contribuir
# 1. Fork el repo
# 2. Crea una rama
git checkout -b feature/nueva-feature
# 3. Commit con convencionales
git commit -m 'feat: nueva feature awesome'
# 4. Push
git push origin feature/nueva-feature
# 5. Abre un Pull Request📜 Licencia
MIT License — ver LICENSE
👥 Autores
jadatorin (aka bitorin)
GitHub: @jadatorin
TradingView: bitorin
Inspirado por: tradesdontlie/tradingview-mcp
⭐ Si te resultó útil, dale una estrella al repo!
Available Tools
22 toolsalert_createC
Create a new alert
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | No | TradingView symbol | |
| message | No | Alert message text | |
| interval | No | Chart interval | |
| condition | Yes | Alert condition (e.g., "crossover(ta.sma(close,20), ta.sma(close,50))") |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full responsibility for behavioral disclosure. It only states 'create', omitting side effects (e.g., does the alert trigger immediately? are there limits?), making it insufficient for safe invocation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence but under-specified. While concise, it fails to deliver useful information beyond the tool name, thus not earning 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?
Given the complexity of creating alerts (multiple parameters, no output schema), the description is incomplete. It does not mention return values, validation, or how the alert behaves after creation, leaving significant gaps.
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 baseline is 3. The description adds no meaning beyond the schema; it does not explain how parameters interact or provide examples. Baseline score 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 verb 'create' and resource 'alert', making it obvious what the tool does. However, it does not differentiate from sibling tools like 'alert_list' or 'alert_delete', missing an opportunity to clarify its unique role.
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 (e.g., batch_run for multiple alerts). Lacks prerequisites, context, or exclusions, leaving the agent to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
alert_deleteB
Delete an alert by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Alert ID to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description uses 'Delete', which implies a destructive action, but provides no details on side effects, reversibility, or required permissions. With no annotations, the description should disclose more 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?
The description is a single sentence with no redundant words. It is front-loaded with the key action and resource, making it immediately scannable.
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 (single required parameter, no output schema), the description is mostly complete. It could mention whether deletion is permanent, but the low complexity reduces the burden.
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 the description for the 'id' parameter in the schema already clarifies its purpose. The tool description adds no further semantic value beyond what the schema 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 clearly states the action ('Delete'), the resource ('an alert'), and the method ('by ID'). It distinctly separates from siblings like alert_create and alert_list.
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 is provided on when to use this tool versus alternatives, nor are there any prerequisites or exclusions. The description merely states what it does without context for decision-making.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
alert_listB
List all alerts
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist. Description does not disclose any behavioral traits (e.g., read-only nature, side effects, or performance considerations). Minimal information.
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?
Single sentence with no extraneous words. Efficient and front-loaded.
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?
Lacks description of return values. With no output schema, the description should hint at what information alerts contain (e.g., IDs, names). Incomplete for a list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters, so schema coverage is 100%. Description does not need to add parameter details beyond what schema 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?
Description clearly states the action 'List all alerts' with a specific verb and resource. It distinguishes from sibling tools like alert_create or alert_delete by focusing on listing.
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 vs alternatives. The purpose is straightforward, but no exclusions or context are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
batch_runC
Execute operations across multiple symbols
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | Bars count for ohlcv | |
| symbols | Yes | List of symbols | |
| operation | Yes | Operation to perform | |
| timeframe | No | Timeframe for ohlcv |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description does not disclose whether the tool is read-only, destructive, or has any side effects. The operations (quote and ohlcv) are likely read-only, but this is not stated. No information about rate limits, partial failures, or execution behavior.
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, consisting of a single phrase that conveys the core action. It is front-loaded with the verb 'Execute'. While efficient, it could include more context without becoming verbose.
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 complexity of four parameters, no output schema, and no annotations, the description is too minimal. It does not explain return values, error handling, or how batch execution differs from individual calls.
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 covers all parameters with descriptions, and the tool description does not add additional meaning beyond what the schema already provides. Baseline score 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 executes operations across multiple symbols, which distinguishes it from sibling tools like quote_get and data_get_ohlcv that operate on single symbols. However, it does not explicitly mention the batch nature as an alternative to individual calls.
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 is provided on when to use batch_run versus calling the single-operation tools individually. There is no mention of prerequisites, limitations, or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
capture_screenshotC
Capture chart screenshot
| Name | Required | Description | Default |
|---|---|---|---|
| filename | No | Output filename | |
| full_page | No | Capture full page |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears full responsibility for behavioral disclosure. It offers no information on file handling (e.g., overwrite behavior), output format, or side effects. This is insufficient for a tool that likely writes files.
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 (three words), but this brevity leaves out critical context. It is not well-structured for quick comprehension of what the tool does and its implications.
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 complexity (parameter count 2, no output schema) and the lack of annotations, the description should explain what the screenshot captures, the output format, and any file naming behavior. It fails to provide sufficient context.
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 the parameter descriptions are present, so the baseline is 3. The tool description does not add any additional meaning 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 clearly states the tool captures a chart screenshot, which is a specific verb+resource action. While it does not explicitly differentiate from siblings, the sibling tools are sufficiently distinct in nature.
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 is provided on when to use this tool versus alternatives. There are no prerequisites, context, or examples to help an agent decide when capturing a screenshot is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
chart_get_stateB
Get current chart state: symbol, timeframe, indicators
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description does not disclose any behavioral traits (e.g., read-only, side effects). It carries the full burden but fails to indicate that it is a safe, non-destructive 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?
Single sentence, concise and front-loaded. Could add more detail about the exact output but remains efficient.
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 only partially describes the return (symbol, timeframe, indicators) but lacks structure or format. It is minimally complete for a simple tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so baseline is 4. The description adds no parameter semantics but that is irrelevant given zero parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves the current chart state, specifying symbol, timeframe, and indicators. It distinguishes from sibling tools like quote_get or data_get_ohlcv which deal with raw market data.
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 like data_get_ohlcv or draw_list. The description only states what it does, not the appropriate context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
data_get_ohlcvB
Get historical OHLCV bars
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | End timestamp (ms) | |
| from | No | Start timestamp (ms) | |
| count | No | Max bars (max 500) | |
| symbol | Yes | TradingView symbol | |
| timeframe | No | Timeframe (1m, 5m, 1h, etc.) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist to declare safety or behavior. The description does not disclose important traits such as data range limits, rate limits, or authentication needs. It merely restates the schema's 'count' limit without additional context.
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 brief at 4 words, but it effectively conveys the core purpose. It is front-loaded and efficient, though it could benefit from slightly more detail without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 5 parameters, no output schema, and no additional explanation. The description fails to explain critical details like how 'from' and 'to' timestamps work, the output format (expected as OHLCV bars), or the meaning of 'count' (max 500 bars). This leaves the agent underinformed for a complex data retrieval tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with all parameters having descriptions. The tool description adds no extra meaning beyond the schema, 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 'Get historical OHLCV bars' clearly states the verb 'Get' and the resource 'historical OHLCV bars'. It distinguishes itself from sibling tools like 'data_get_study_values' which fetch other data types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. While sibling tools are different enough to imply usage, explicit instructions are missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
data_get_pine_labelsB
Get drawn labels from Pine scripts
| Name | Required | Description | Default |
|---|---|---|---|
| all | No | Get all labels |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description does not disclose any behavioral traits (e.g., whether it is read-only, requires chart context, or has side effects). The description carries the full burden but adds no transparency beyond the obvious.
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, front-loaded sentence with no redundant words. While concise, it lacks behavioral details that could be included without adding length.
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 absence of an output schema and the simplicity of the tool, the description is too minimal. It fails to explain what 'drawn labels' are or how the 'all' parameter affects results, making it insufficient for informed invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 100% coverage with a description for the 'all' parameter. The tool description adds no extra meaning beyond what the schema already provides, so 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 'Get drawn labels from Pine scripts' clearly states the action (get) and resource (drawn labels). It implicitly distinguishes from sibling tools like data_get_pine_lines and data_get_pine_tables by targeting labels specifically.
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 or when not to use this tool. Usage is implied from the purpose, but no context about alternatives or conditions is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
data_get_pine_linesB
Get drawn lines from Pine scripts
| Name | Required | Description | Default |
|---|---|---|---|
| all | No | Get all lines |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden but only states it gets drawn lines, which implies a read operation. No behavioral traits (e.g., auth needs, data format, or safety) are 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 a single sentence, making it concise and front-loaded. However, it sacrifices necessary detail for brevity.
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 lacks context on what 'lines' are, how they are returned, or the effect of the 'all' parameter. For a simple tool with one parameter, the description is incomplete and barely adequate.
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 schema already describes the 'all' parameter. The description adds no extra meaning beyond what is in 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 verb 'Get' and the resource 'drawn lines from Pine scripts', which distinguishes it from sibling tools like 'data_get_pine_labels' and 'data_get_pine_tables'.
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 is provided on when to use this tool versus alternatives like 'draw_list' or other data_get tools. The description lacks any context for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
data_get_pine_tablesB
Get table data from Pine scripts
| Name | Required | Description | Default |
|---|---|---|---|
| table_id | No | Table identifier |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries the burden of behavioral disclosure. It implies a read operation ('Get table data') but does not explicitly state non-destructiveness or other key behaviors like authentication or rate limits. However, for a simple fetch operation, this is minimally acceptable.
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 sentence with no wasted words. It is front-loaded with the action and source. However, it could be slightly more informative without being verbose.
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 (one optional parameter, no output schema), the description is minimally sufficient. However, it lacks details on the return format or what 'table data' entails, which would help an agent understand the tool's capabilities fully.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with one parameter ('table_id') described as 'Table identifier'. The description adds no additional meaning beyond the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get table data') and the source ('from Pine scripts'), using a specific verb+resource pattern. It distinguishes itself from sibling tools like 'data_get_pine_lines' and 'data_get_pine_labels' by focusing on tables.
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 is provided on when to use this tool versus alternatives. With many sibling tools for data retrieval, such as 'data_get_ohlcv' or 'quote_get', the description offers no context for selection or exclusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
data_get_study_valuesB
Get values from indicators/studies on chart
| Name | Required | Description | Default |
|---|---|---|---|
| symbols | No | Symbols to query | |
| study_id | No | Study identifier |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, and the description does not disclose any behavioral traits such as idempotency, side effects, or required permissions. A simple read operation is implied but not confirmed.
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, clear sentence that is front-loaded and contains no unnecessary words. It is concise and to the point.
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 and no annotations, the description is minimal. For a simple read tool with two well-documented parameters, it is adequate but lacks details on return values or usage context.
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 100% coverage with descriptions for both parameters. The tool description adds no further semantics beyond stating the tool's purpose, so it meets the baseline.
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 verb 'Get' and the resource 'values from indicators/studies on chart'. It distinguishes from sibling tools like data_get_ohlcv and data_get_pine_lines, which target different data types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description does not mention any conditions, exclusions, or references to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
draw_clearB
Clear all drawings or drawings of a type
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Type to clear (optional, clears all if omitted) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full responsibility for disclosing behavioral traits. While it correctly indicates the tool is destructive (clearing drawings), it does not specify the scope (e.g., current chart only) or permanence of the action. Additional context about side effects is missing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence that conveys the essential action and distinguishing detail. It is extremely concise with no redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity and lack of output schema, the description is minimally adequate. However, it does not clarify the scope (e.g., which chart's drawings are cleared) or mention related tools like draw_remove. This could lead to ambiguity for the agent.
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 already describes the 'type' parameter with 100% coverage. The description paraphrases this ('drawings of a type') without adding new semantic details beyond the schema. Hence it meets the baseline but provides no extra value.
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 verb 'clear' and the resource 'drawings', and distinguishes between clearing all drawings or only those of a specific type. This is a specific and unambiguous purpose, especially compared to sibling tools like draw_remove or draw_list.
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 such as draw_remove (for removing individual drawings) or draw_shape (for adding). The description implies usage for batch clearing but does not provide context on prerequisites or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
draw_listB
List all drawn objects on chart
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Filter by type (line, shape, label) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It mentions listing all drawn objects but does not disclose behavioral traits such as read-only nature, pagination, or response format.
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 concise sentence, but it could benefit from including typical usage context or front-loading key details. It is not verbose but also not richly structured.
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 (one optional param, no output schema), the description is minimally adequate but lacks behavioral details that would help an agent understand response format or limitations.
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% for the single parameter; the description does not add meaning beyond the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'List' and the resource 'all drawn objects on chart', differentiating it from sibling tools that create, remove, or clear drawn objects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, such as when filtering is needed or that it lists all objects without user/workspace scoping.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
draw_removeB
Remove a drawn object by ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Object ID to remove |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description only states the action 'Remove' without disclosing behavioral traits such as reversibility, error handling for invalid IDs, or side effects. Since annotations are absent, the description carries the full burden but fails to provide sufficient behavioral context.
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 short sentence with no unnecessary words. While it is efficient, it omits important behavioral details, which slightly reduces the score from 5.
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 tool with one parameter and no output schema, the description is adequate in stating the purpose and required input. However, it lacks context about what happens on success or failure, and does not specify the type of drawn object or prerequisites.
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 100% coverage for the single parameter 'id', which is described as 'Object ID to remove'. The description adds no additional meaning beyond the schema, so the baseline score 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 explicitly states the verb 'Remove' and the resource 'drawn object', with the qualifier 'by ID' specifying the scope. It clearly distinguishes from sibling tools like draw_clear, which is for clearing all objects, and draw_list, which lists objects.
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 is provided on when to use this tool versus alternatives like draw_clear or draw_shape. There is no mention of prerequisites or context for removal.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
draw_shapeC
Draw a shape on the chart
| Name | Required | Description | Default |
|---|---|---|---|
| text | No | Text for label (optional) | |
| type | Yes | Shape type | |
| style | No | Visual style {color, width, dashed} | |
| points | Yes | Coordinates [{time, price}] |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It does not mention whether drawing overwrites existing shapes, if there are limits, or any side effects. The description only states the action without context.
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 sentence, which is concise, but it lacks any structure or detail. It earns its place but does nothing to enhance understanding.
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 has 4 parameters (2 required), enums, nested objects, and no output schema, the description is inadequate. It does not explain the return value, effects on the chart, or any constraints.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, meaning all parameters have descriptions in the input schema. The tool description adds no additional meaning beyond the schema, 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 'Draw a shape on the chart' clearly states the tool's action and object, and the name 'draw_shape' distinguishes it from siblings like 'draw_list' and 'draw_remove'. However, it lacks specificity about which shapes are supported beyond what the enum provides.
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 is provided on when to use this tool versus alternatives (e.g., for batch operations or individual shapes). There are no usage scenarios, prerequisites, or exclusions mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
quote_getA
Get current quote (price, OHLC) for a symbol
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes | TradingView symbol (e.g., BINANCE:BTCUSDT) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey behavioral traits. It discloses that the tool returns current quote (price, OHLC), which is moderately informative. However, it does not specify if the quote is real-time or delayed, any authentication requirements, or side effects. The description adds some context but lacks depth.
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, well-structured sentence that front-loads the action ('Get current quote'). Every word serves a purpose; there is no redundancy or unnecessary information. 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?
Given no output schema, the description adequately explains the return value (price, OHLC). The tool is simple with one required parameter. While it could mention format or potential errors, the description is sufficiently complete for common use cases.
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%, with the parameter 'symbol' already explained in the schema as a TradingView symbol. The tool description adds no additional meaning beyond the schema. Baseline score 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 gets a current quote (price, OHLC) for a symbol. The verb 'Get' and resource 'quote' are specific. Among sibling tools like data_get_ohlcv (historical) or data_get_study_values (studies), this tool's purpose is distinct and unambiguous.
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 does not explicitly state when to use this tool versus its siblings. While the purpose implies it's for current price/OHLC, there is no direct guidance on alternatives (e.g., 'Use data_get_ohlcv for historical data'). Usage is implied but not clarified.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
replay_startC
Start replay mode
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | End timestamp | |
| from | No | Start timestamp |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits (e.g., effect on chart, state changes, prerequisites). It only says 'Start replay mode,' offering no information about side effects, required permissions, or what happens to the current chart state.
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 overly terse (single phrase) and lacks structure or explanatory sentences. While concise, it sacrifices informational value, failing to earn its place as a useful guide.
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 lack of output schema and the complexity of a 'start' command that likely alters state, the description is incomplete. It does not explain return behavior, prerequisites (e.g., a chart must be active), or the relationship to sibling tools like replay_status.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with 'to' and 'from' described as 'End timestamp' and 'Start timestamp' in the input schema. The tool description adds no additional meaning beyond these schema descriptions, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Start replay mode' clearly indicates a verb ('Start') and resource ('replay mode'), which distinguishes it from sibling tools like replay_step (advance step) and replay_stop (stop). However, it lacks detail on what 'replay mode' entails, limiting clarity.
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 is provided on when to use this tool versus alternatives (e.g., replay_step for incremental advances) or when not to use it. The description only states the action, leaving usage context entirely implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
replay_statusB
Get current replay status
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, and the description does not disclose behavioral traits such as whether it is read-only, what side effects (if any) occur, or what the returned status contains. This is a gap for a status 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, front-loaded sentence that efficiently conveys the tool's function. It is concise with no wasted words, though it could benefit from slightly more detail without harming conciseness.
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 status retrieval tool, the description lacks crucial details such as the format of the returned status (e.g., string codes, object with fields) and possible values. With no output schema, the agent has insufficient information to interpret the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, achieving 100% schema coverage. Per guidelines, a tool with no parameters warrants a baseline of 4. The description adds no parameter info, but none is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves 'current replay status', using a specific verb and resource. It differentiates from sibling tools like replay_start and replay_stop, which involve actions, not status retrieval.
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 when-to-use or when-not-to-use guidance is provided. However, the tool's purpose is straightforward (status check), so usage is implied. Could be improved by noting it should be used after replay_start or replay_step.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
replay_stepA
Advance replay by one bar
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations present; description only states action without mentioning prerequisites, side effects, or error conditions (e.g., replay not active).
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?
Single sentence with front-loaded action and target, no verbiage.
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 zero-parameter tool, description covers core action but lacks prerequisite context (replay must be started) and outcome details.
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?
No parameters in schema; description adds meaning by specifying 'one bar' as unit of advance, compensating for empty schema (baseline 4).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verb 'advance' and resource 'replay' with clear increment 'by one bar', distinguishing from sibling tools like replay_start and replay_stop.
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 (e.g., only after replay_start) or when not to use; no comparison with siblings provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
replay_stopA
Stop replay mode
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description does not disclose behavioral traits beyond the action. It does not specify what happens when called without an active replay, whether it has side effects, or if any prerequisites exist. With no annotations, the description carries full burden and falls short.
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 at three words, but it is also front-loaded and to the point. However, it could include a bit more context (e.g., 'Stops the currently active replay mode') without losing conciseness.
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 parameters, no output schema, and a simple action, the description is minimally adequate. However, it lacks any details about return values, error conditions, or state changes, which would enhance completeness for a tool that might behave differently depending on replay state.
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 zero parameters, so schema coverage is 100%. According to the rubric, 0 parameters yields a baseline of 4. The description adds no parameter details, but none are needed since the schema fully covers the (empty) input.
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 'Stop replay mode' clearly identifies the verb (stop) and resource (replay mode), and the name 'replay_stop' aligns perfectly. Sibling tools like 'replay_start' and 'replay_step' confirm it's distinct, making the purpose unambiguous.
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 name and sibling context imply its use when replay is active, but no when-not or error conditions are mentioned. The simple nature of the tool partially compensates, but guidance is absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tv_health_checkA
Verify CDP connection to TradingView/Chrome
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description implies a non-destructive read operation, but since no annotations are provided, it should explicitly state side effects or safety profile. The phrase 'Verify CDP connection' suggests a check, but does not confirm read-only behavior or whether it modifies state. Minimal transparency is achieved.
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, front-loaded sentence with no extraneous information. Every word contributes to clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no parameters, no output schema, and no annotations, the description is adequate but minimal. It fails to specify return values or behavior (e.g., success/failure indication), which would help the agent handle the tool's output effectively.
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?
With zero parameters, schema coverage is 100%. The description need not add param details. Baseline score of 4 applies as no additional meaning beyond schema is required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb and resource: 'Verify CDP connection' to TradingView/Chrome. It uniquely identifies the tool's purpose among siblings, which include tv_launch and other operational tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The context does not mention prerequisites, conditions, or exclusionary criteria for choosing this health check over other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tv_launchC
Detect and launch TradingView application
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | URL to open | https://www.tradingview.com |
| browser | No | Browser to use | chrome |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description does not disclose side effects (e.g., opening browser window), permissions needed, or what 'detect' entails. Lacks behavioral details.
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?
Single sentence is concise but lacks structure and completeness. Could be expanded with key details without losing conciseness.
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?
Does not explain return values, success/failure indicators, or what user should expect after launch. Given no output schema, description should provide more context.
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 provides full coverage with descriptions for both parameters. Description adds no additional meaning, but baseline 3 is appropriate since schema covers parameter semantics.
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 says 'Detect and launch TradingView application' which indicates basic purpose but is vague on 'detect' and doesn't specify it's a browser launch. Differentiates from sibling tools like tv_health_check but not clearly.
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 siblings like tv_health_check or other data tools. Does not mention prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
22 tool updates
v1.0.0- First observed
alert_create - First observed
alert_delete - First observed
alert_list - First observed
batch_run - First observed
capture_screenshot - First observed
chart_get_state - First observed
data_get_ohlcv - First observed
data_get_pine_labels - First observed
data_get_pine_lines - First observed
data_get_pine_tables - First observed
data_get_study_values - First observed
draw_clear - First observed
draw_list - First observed
draw_remove - First observed
draw_shape - First observed
quote_get - First observed
replay_start - First observed
replay_status - First observed
replay_step - First observed
replay_stop - First observed
tv_health_check - First observed
tv_launch
TDQS
Each tool has a clearly distinct purpose, targeting specific actions like data retrieval, drawing, or replay. Overlaps are minimal and descriptions clarify differences, e.g., quote_get vs data_get_ohlcv or study vs pine objects.
Most tools follow a domain_verb_object pattern (e.g., chart_get_state, alert_create), but batch_run and tv_launch deviate slightly in structure. Overall consistent within each subdomain.
With 22 tools, the set is on the heavier side, bordering on excessive for a charting assistant. While each tool serves a distinct function, the overall count could be streamlined without losing core capabilities.
The tool set covers major areas like data, drawings, alerts, and replay, but lacks essential chart modification tools (e.g., set symbol/timeframe, add/remove indicators). This limits the agent's ability to perform full chart interactions.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
LuxAlgo Library — the encyclopedia of trading & technical analysis for AI agents. Free, keyless.
Connect your AI to a funded trading account. Read & trade a simulated funded challenge.
AI trading bots: generate strategies, backtest, deploy live to 10+ brokers. No coding required.
- CPZAIOAuthcom.cpz-lab.mcp
Build, backtest, and deploy quantitative trading strategies from your AI agent.
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceConnects AI assistants to TradingView Desktop via Chrome DevTools Protocol for AI-assisted chart analysis, Pine Script development, and workflow automation.5523-
- FlicenseNot gradedqualityDmaintenancePersonal AI assistant for your TradingView Desktop charts. Connects AI to your locally running TradingView app via Chrome DevTools Protocol for AI-assisted chart analysis, Pine Script development, and workflow automation.552-
- FlicenseNot gradedqualityCmaintenanceConnects AI assistants to TradingView Desktop for chart analysis, Pine Script development, and workflow automation via Chrome DevTools Protocol.552-
- FlicenseNot gradedqualityCmaintenanceConnects AI assistants to TradingView Desktop via Chrome DevTools Protocol for chart analysis, Pine Script development, and workflow automation.552-
Appeared in Searches
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/jadatorin/tradingview-opencode-agent'
If you have feedback or need assistance with the MCP directory API, please join our Discord server