ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

tradingview-mcp 返回结构全清单:{ success: true/false } 统一约定详解

tradingview-mcp 返回结构全清单:{ success: true/false } 统一约定详解 tradingview-mcp 返回结构全清单{ success: true/false } 统一约定详解【免费下载链接】tradingview-mcpAI-assisted TradingView chart analysis — connect Claude Code to your TradingView Desktop for personal workflow automation项目地址: https://gitcode.com/GitHub_Trending/tra/tradingview-mcptradingview-mcp 是一个 AI 辅助的 TradingView 图表分析工具通过 Chrome DevTools Protocol 连接本地 TradingView Desktop让 Claude Code 能读取 K 线、画线、写 Pine Script、回放交易。无论你是用 MCP 工具还是tv命令行理解它的统一返回结构约定能让你快速判断每次操作成功还是失败、结果在哪个字段。本文是一份完整的返回结构清单。一分钟看懂所有工具都遵守同一套约定tradingview-mcp 的全部 70 个工具返回的都是同一种信封结构场景返回结构说明✅ 成功{ success: true, ...业务数据 }第一个字段固定是success: true后面跟具体数据❌ 失败{ success: false, error: 错误原因 }固定带error字段个别场景附带hint修复建议这套约定由一个统一的格式化工具函数实现——所有工具文件都不自己拼返回值而是调用 src/tools/_format.js 中的jsonResult()export function jsonResult(obj, isError false) { return { content: [{ type: text, text: JSON.stringify(obj, null, 2) }], ...(isError { isError: true }), }; }它做两件事把业务对象格式化成 2 空格缩进的 JSON 文本失败时额外打上 MCP 协议层的isError: true标记。 关键结论你只需要检查返回 JSON 的第一个字段success就能判断一切。成功返回长什么样success: true 业务数据以切换合约为例src/core/chart.js 中chart_set_symbol的成功返回{ success: true, symbol: BTCUSD, chart_ready: true }几个常见成功返回的字段风格工具成功返回的额外字段含义chart_get_statesymbol、resolution、chartType、studies当前图表状态src/core/chart.jstv_health_checkcdp_connected、api_available、chart_symbol连接诊断结果src/core/health.jstv_launchplatform、pid、cdp_port、cdp_url启动结果含进程号与调试端口pine_set_sourcelines_set注入到编辑器的代码行数src/core/pine.jsreplay_startreplay_started、current_date回放是否开始、当前日期src/core/replay.jsdraw_shapeshape、entity_id画布对象 ID后续删除/查询用它src/core/drawing.js规律很清晰success是状态位其余字段是这次操作具体做了什么的回执。写自动化脚本时用jq .success先判断状态再取具体字段即可。失败返回长什么样success: falseerrorhint失败路径在每个工具的catch块里统一处理。看 src/tools/chart.js 的模板server.tool(chart_get_state, ..., {}, async () { try { return jsonResult(await core.getState()); } catch (err) { return jsonResult({ success: false, error: err.message }, true); } });即任何异常都会被捕获并转成{ success: false, error: ... }同时打上isError: true标记。失败返回的三种形态1. 标准失败绝大多数工具{ success: false, error: ECONNREFUSED 127.0.0.1:9222 }2. 带提示的失败健康检查失败时会额外给hint字段告诉你下一步做什么src/tools/health.js{ success: false, error: ECONNREFUSED 127.0.0.1:9222, hint: TradingView is not running with CDP enabled. Use the tv_launch tool to start it automatically. }3. 带警告的成功少数情况success: true但附带warning字段表示操作完成但状态不理想。例如 src/core/health.js 中tv_launch启动了 TradingView 但调试端口还没就绪{ success: true, platform: win32, pid: 12345, cdp_ready: false, warning: TradingView launched but CDP not responding yet. Try tv_health_check in a few seconds. }⚠️ 因此完整判断逻辑是success true且没有warning才是完全就绪。特殊场景业务失败也用success: false不是所有success: false都来自异常。chart_manage_indicator添加指标时会核对操作前后指标列表的差集如果差集为空说明没真的加进去返回success: false但不带 errorsrc/core/chart.js{ success: false, action: add, indicator: Relative Strength Index, entity_id: null, new_study_count: 0 }这是技术成功但业务失败的场景——写脚本时要同时检查success和业务字段如new_study_count。批量操作 batch_run 的返回结构batch_run是唯一的一次跑多个工具返回的是汇总 明细两层结构src/core/batch.js{ success: true, total_iterations: 4, successful: 3, failed: 1, results: [ { success: true, symbol: AAPL, ...: ... }, { success: false, symbol: ES1!, error: ... } ] }注意顶层success: true只表示批量任务执行完了真正成败要看successful/failed计数和results数组里每一项的success。CLI 模式退出码 JSON 双通道如果你不用 MCP 而用tv命令行源码见 src/cli/index.js返回约定稍有不同但逻辑完全一致通道约定stdout永远是格式化的 JSON即上面讲的success信封stderr错误信息退出码0成功、1错误、2连接失败所以 shell 脚本里两种写法都可靠tv quote | jq .success # 解析 JSON 信封 tv status || echo 连不上 # 检查退出码快速对照清单各模块返回结构要点模块核心工具成功返回关键额外字段源码位置图表控制chart_set_symbol等回执参数 chart_readysrc/core/chart.js数据读取data_get_ohlcv等bar_count、bars/ 汇总统计src/core/data.js健康/启动tv_health_check、tv_launchcdp_connected、api_available、warningsrc/core/health.jsPine 开发pine_set_source、pine_get_errorslines_set、entriessrc/core/pine.js回放replay_start、replay_tradecurrent_date、position、realized_pnlsrc/core/replay.js画线draw_shape、draw_clearentity_id、remaining_shapessrc/core/drawing.js警报alert_create、alert_listalert_id、alert_countsrc/core/alerts.js分屏/标签页pane_set_symbol、tab_switchfocused_index、tab_idsrc/core/pane.js、src/core/tab.js批量batch_runsuccessful/failed/results[]src/core/batch.js自更新tv_updateupdated、statussrc/core/update.js总结写自动化只需记住 4 条看第一个字段success: true/false是唯一状态位所有工具无一例外。失败必有error可能是技术异常也可能是业务未生效如指标没加进去必要时看hint获取修复建议。success: true也可能带warning表示做完了但没完全就绪如启动后 CDP 未就绪需稍后复查。批量看明细batch_run顶层success只代表执行完成成败看results数组里每项的success。掌握这套约定后无论是让 AI 写自动化流程还是自己用tv ... | jq .success做脚本判断都能一眼看懂 tradingview-mcp 的每次返回。更多工具用法可参考项目根目录的 CLAUDE.md内含完整的你说什么、AI 用哪个工具决策表与 README.md 中的工具参考清单。【免费下载链接】tradingview-mcpAI-assisted TradingView chart analysis — connect Claude Code to your TradingView Desktop for personal workflow automation项目地址: https://gitcode.com/GitHub_Trending/tra/tradingview-mcp创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表