MCP server to create, list, pause, resume and delete TradingView alerts. Manage Pine strategy alerts and webhooks from Claude, Claude Desktop or Cursor.
Strong tool naming (verb_noun pattern), comprehensive descriptions (avg 180 chars), and well-structured schemas with enums and constraints. All 9 tools have descriptions and input schemas. Parameters are typed and mostly described. Output schemas are documented in code. Key gaps: no tool annotations (readOnlyHint/destructiveHint), limited error recovery guidance, and no confirmation pattern for destructive operations (delete_alerts). Error messages are actionable but could guide next steps more explicitly.
Verify the TradingView session is valid and report the account and alert counts. Run this first if anything returns an authorization error.
Create a new TradingView alert from one of your saved Pine strategies. Resolves the symbol and its currency-id automatically, and reads the strategy's own default input values so the alert actually fires. Optionally set a webhook URL to forward signals to your own trading bot or endpoint.
Permanently delete TradingView alerts. This cannot be undone. TradingView has no edit endpoint, so changing an alert means deleting it and creating a replacement. To stop an alert temporarily, use pause_alerts instead.
Show the firing history for your alerts: what triggered, and when.
List TradingView alerts on the authenticated account, with their status (active or paused), symbol, timeframe and alert_id. Start here: every other tool targets alerts by the alert_id this returns. Supports filtering by symbol, name or status.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) declared in tool definitions. LLMs cannot distinguish read-only from destructive operations without explicit hints.
delete_alerts lacks confirmation or dry-run pattern. Irreversible operations should support a confirmation step to prevent accidental data loss.
Error messages in resolveTargets() are actionable but do not guide next steps. E.g., 'No alert with id X' should suggest 'Run list_alerts to see current alert_ids.'
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 63 | 2026-07-28+ | v2 |
List the Pine scripts saved on your TradingView account, flagging which are strategies. Only strategies can drive a strategy alert. Use this to find the exact name to pass to create_strategy_alert.
Pause (stop) one or more TradingView alerts. Paused alerts stay on your account but stop firing, and can be reactivated with resume_alerts. Target by alert_ids, or by symbol / name / status filter.
Resolve an EXCHANGE:TICKER into TradingView's canonical symbol plus its currency-id, which alerts require. Useful for checking a symbol exists before creating an alert.
Resume (restart) previously paused TradingView alerts so they fire again. Target by alert_ids, or by symbol / name / status filter.
create_strategy_alert parameter 'inputs' is typed as 'object' with no schema constraints. LLMs cannot validate input overrides without a schema for the nested object structure.
resolve_symbol description is brief (75 chars) and lacks context on when to call it. Should explain it is a prerequisite for create_strategy_alert.