TradingView MCP
TradingView MCP
Model Context Protocol (MCP) 服务器,用于你机器上的 TradingView Desktop:读取图表、运行每日晨间简报、开发 Pine Script,并通过 Chrome DevTools Protocol(localhost:9222)自动化工作流。
由 John Anthony 维护。 本项目在 @tradesdontlie 的上游 tradingview-mcp 基础上扩展,新增了晨间简报工作流、规则配置(rules.json),并修复了 tv_launch 在 TradingView Desktop v2.14+ 上的兼容性问题。
[!WARNING] 与 TradingView Inc. 或 Anthropic 无关联。 此工具通过 Chrome DevTools Protocol 连接到你本地运行的 TradingView Desktop 应用。使用前请阅读 免责声明。
[!IMPORTANT] 需要有效的 TradingView 订阅。 此工具不会绕过 TradingView 的任何付费墙。它只读取并控制你机器上已运行的 TradingView Desktop 应用。
[!NOTE] 所有数据处理均在本地完成。 不会向任何地方发送任何内容。TradingView 数据不会离开你的机器。
本分支的新增内容
功能 | 作用 |
| 一条命令即可扫描你的自选列表、读取所有指标,并返回结构化数据供 Claude 生成你的交易时段偏向 |
| 将你的每日简报保存到 |
| 一次性写下你的交易规则——偏向标准、风险规则、自选列表。晨间简报每天自动应用这些规则 |
启动错误修复 | 修复了 |
| 在终端中用一个词运行你的晨间简报 |
一键设置
将此内容粘贴到 Claude Code 中,它会处理一切:
Set up TradingView MCP for me.
Clone https://github.com/anthonyjohn17/tradingview-mcp.git to ~/tradingview-mcp, run npm install, then add it to my MCP config at ~/.claude/.mcp.json (merge with any existing servers, don't overwrite them).
The config block is: { "mcpServers": { "tradingview": { "command": "node", "args": ["/Users/YOUR_USERNAME/tradingview-mcp/src/server.js"] } } } — replace YOUR_USERNAME with my actual username.
Then copy rules.example.json to rules.json and open it so I can fill in my trading rules.
Finally restart and verify with tv_health_check.或者按照下面的手动步骤操作。
前置要求
TradingView Desktop 应用(实时数据需要付费订阅)
Node.js 18+
Claude Code(用于 MCP 工具)或任意终端(用于 CLI)
macOS、Windows 或 Linux
快速开始
1. 克隆并安装
git clone https://github.com/anthonyjohn17/tradingview-mcp.git ~/tradingview-mcp
cd ~/tradingview-mcp
npm install2. 设置你的规则
cp rules.example.json rules.json打开 rules.json 并填写:
你的自选列表(每天早上要扫描的品种)
你的偏向标准(对你来说什么算看涨/看跌/中性)
你的风险规则(你希望 Claude 在每次交易时段前检查的规则)
3. 通过 CDP 启动 TradingView
TradingView 必须以启用调试端口的方式运行。
Mac:
./scripts/launch_tv_debug_mac.shWindows:
scripts\launch_tv_debug.batLinux:
./scripts/launch_tv_debug_linux.sh或者设置完成后使用 MCP 工具:"Use tv_launch to start TradingView in debug mode"
4. 添加到 Claude Code
添加到 ~/.claude/.mcp.json(与任何现有服务器合并):
{
"mcpServers": {
"tradingview": {
"command": "node",
"args": ["/Users/YOUR_USERNAME/tradingview-mcp/src/server.js"]
}
}
}将 YOUR_USERNAME 替换为你的实际用户名。在 Mac 上:运行 echo $USER 查看。
SSE 传输(备选方案)
通过 HTTP/SSE 而非 stdio 运行 MCP 服务器:
启动 SSE 服务器:
# Mac/Linux
TRANSPORT=sse PORT=3000 node src/server.js
# Windows
set TRANSPORT=sse
node src/server.js启动脚本:
# Mac/Linux - custom port
./scripts/launch_mcp_sse.sh 8080
# Windows - custom port
scripts\launch_mcp_sse.bat 8080配置 Claude Code 通过 SSE 连接:
{
"mcpServers": {
"tradingview": {
"url": "http://127.0.0.1:3000/sse"
}
}
}SSE 服务器默认监听 http://127.0.0.1:3000/sse。可通过 PORT 环境变量覆盖端口。
5. 验证
重启 Claude Code,然后询问:"Use tv_health_check to verify TradingView is connected"
6. 运行你的第一次晨间简报
让 Claude 执行:"Run morning_brief and give me my session bias"
或者从终端运行:
npm link # install tv CLI globally (one time)
tv brief晨间简报工作流
这是将此工具从工具箱转变为日常习惯的功能。
每次交易时段前:
打开 TradingView(以调试端口启动)
在终端中运行:
tv brief(或让 Claude 执行:"run morning_brief")Claude 扫描你自选列表中的每个品种,读取你的指标值,应用你的
rules.json标准,然后打印:
BTCUSD | BIAS: Bearish | KEY LEVEL: 94,200 | WATCH: RSI crossing 50 on 4H
ETHUSD | BIAS: Neutral | KEY LEVEL: 3,180 | WATCH: Ribbon direction on daily
SOLUSD | BIAS: Bullish | KEY LEVEL: 178.50 | WATCH: Hold above 20 EMA
Overall: Cautious session. BTC leading bearish, SOL the exception — watch for divergence.保存它:"save this brief"(使用
session_save)第二天早上,对比:"get yesterday's session"(使用
session_get)
此工具的功能
晨间简报 — 扫描自选列表、读取指标、应用你的规则、打印交易时段偏向
Pine Script 开发 — 借助 AI 编写、注入、编译、调试脚本
图表导航 — 切换品种、时间周期、跳转到指定日期、添加/移除指标
可视化分析 — 读取指标值、价格水平、自定义指标绘制的水平线
在图表上绘制 — 趋势线、水平线、矩形、文本
管理警报 — 创建、列出、删除价格警报
回放练习 — 逐步浏览历史 K 线,练习进出场并跟踪盈亏
截图 — 捕获图表状态
多窗格布局 — 2x2、3x1 网格,每个窗格可显示不同品种
数据流 — 从你的实时图表输出 JSONL 数据,供监控脚本使用
CLI 访问 — 每个工具同时也是
tv命令,支持管道友好的 JSON 输出
Claude 如何知道该用哪个工具
Claude 在此项目中工作时会自动读取 CLAUDE.md。其中包含完整的决策树。
你说... | Claude 使用... |
"Run my morning brief" |
|
"What was my bias yesterday?" |
|
"What's on my chart?" |
|
"Give me a full analysis" |
|
"Switch to BTCUSD daily" |
|
"Write a Pine Script for..." |
|
"Start replay at March 1st" |
|
"Set up a 4-chart grid" |
|
"Draw a level at 94200" |
|
工具参考(81 个 MCP 工具)
晨间简报(本分支新增)
工具 | 作用 |
| 扫描自选列表、读取指标、返回用于交易时段偏向的结构化数据。自动读取 |
| 将生成的简报保存到 |
| 获取今天的简报(如果今天尚未保存则获取昨天的) |
图表读取
工具 | 使用时机 | 输出大小 |
| 首次调用 — 获取品种、时间周期、所有指标名称 + ID | ~500B |
| 读取所有指标的当前 RSI、MACD、BB、EMA 值 | ~500B |
| 获取最新价格、OHLC、成交量 | ~200B |
| 获取价格 K 线。使用 | 500B(摘要)/ 8KB(100 根 K 线) |
自定义指标数据(Pine 绘图)
读取任何可见 Pine 指标输出的 line.new()、label.new()、table.new()、box.new()。
工具 | 使用时机 |
| 水平价格位(支撑/阻力、交易时段水平) |
| 文本标注 + 价格("PDH 24550"、"Bias Long") |
| 数据表格(交易时段统计、分析仪表盘) |
| 价格区间,以 {high, low} 对表示 |
始终使用 study_filter 来定位特定指标:study_filter: "MyIndicator"。
图表控制
工具 | 作用 |
| 切换代码(BTCUSD、AAPL、ES1!、NYMEX:CL1!) |
| 切换分辨率(1、5、15、60、D、W、M) |
| 切换样式(Candles、HeikinAshi、Line、Area、Renko) |
| 添加/移除指标。使用完整名称:"Relative Strength Index" 而非 "RSI" |
| 跳转到指定日期(ISO:"2025-01-15") |
| 更改指标设置、显示/隐藏 |
Pine Script 开发
工具 | 步骤 |
| 1. 将代码注入编辑器 |
| 2. 自动检测 + 错误检查编译 |
| 3. 如有则读取编译错误 |
| 4. 读取 log.info() 输出 |
| 5. 保存到 TradingView 云端 |
| 离线静态分析(无需图表) |
| 服务端编译检查(无需图表) |
回放模式
工具 | 步骤 |
| 在指定日期进入回放 |
| 前进一根 K 线 |
| 自动前进(以毫秒为单位设置速度) |
| 买入/卖出/平仓 |
| 检查持仓、盈亏、日期 |
| 返回实时模式 |
多窗格、警报、绘图、UI
工具 | 功能说明 |
| 更改网格: |
| 在任何窗格上设置代码 |
| 绘制 horizontal_line、trend_line、rectangle、text |
| 管理价格提醒 |
| 在多个代码/时间周期上运行操作 |
| 读取/修改自选列表 |
| 截图(区域:全屏、图表、策略回测) |
| 启动 TradingView 并验证连接 |
CLI 命令
tv brief # run morning brief
tv session get # get today's saved brief
tv session save --brief "..." # save a brief
tv status # check connection
tv quote # current price
tv symbol BTCUSD # change symbol
tv ohlcv --summary # price summary
tv screenshot -r chart # capture chart
tv pine compile # compile Pine Script
tv pane layout 2x2 # 4-chart grid
tv stream quote | jq '.close' # monitor price ticks完整命令列表:tv --help
故障排查
问题 | 解决方案 |
| TradingView 未使用 |
| TradingView 未运行或端口 9222 被阻止 |
MCP 服务器未显示在 Claude Code 中 | 检查 |
找不到 | 在项目目录中运行 |
| 运行 |
| 将代码添加到 |
工具返回过期数据 | TradingView 仍在加载 — 请稍等几秒 |
Pine Editor 工具失败 | 先打开 Pine Editor 面板: |
架构
Claude Code ←→ MCP Server (stdio or SSE) ←→ CDP (port 9222) ←→ TradingView Desktop (Electron)78 个原始工具 + 3 个晨间简报工具 = 共 81 个 MCP 工具
传输方式:基于 stdio 的 MCP(默认)或 SSE(
TRANSPORT=sse)连接:通过 localhost:9222 上的 Chrome DevTools Protocol
无外部网络调用 — 一切均在本地运行
零额外依赖,与原始版本相同
SSE 传输
通过 HTTP/SSE 而非 stdio 运行服务器:
TRANSPORT=sse node src/server.js服务器默认监听 http://127.0.0.1:3000/sse。可通过以下方式覆盖:
TRANSPORT=sse PORT=8080 HOST=0.0.0.0 node src/server.js配置 Claude Code 通过 SSE 连接:
{
"mcpServers": {
"tradingview": {
"url": "http://127.0.0.1:3000/sse"
}
}
}致谢
上游项目: tradingview-mcp,作者 @tradesdontlie — 原始 MCP 桥接与基础。
本分支: John Anthony — 晨间简报、会话辅助工具、
rules.json以及针对最新 TradingView Desktop 版本的启动修复。
如果你觉得上游项目有用,请为他们的仓库点个星标。
免责声明
本项目仅供个人、教育和研究目的使用。
该工具使用 Chrome DevTools Protocol (CDP),这是所有基于 Chromium 的应用程序内置的标准调试接口。它不会对任何 TradingView 专有协议进行逆向工程,不会连接 TradingView 的服务器,也不会绕过任何访问控制。调试端口必须由用户通过标准的 Chromium 命令行标志显式启用。
使用本软件即表示你同意:
你全权负责确保你的使用符合 TradingView 的服务条款 以及所有适用法律。
该工具访问未记录的 TradingView 内部 API,这些 API 可能随时发生变化。
不得使用该工具转售、再分发或以商业方式利用 TradingView 的市场数据。
作者不对任何账号封禁、停用或其他后果承担责任。
风险自负。
许可证
MIT — 请参阅 LICENSE。仅适用于源代码,不适用于 TradingView 的软件、数据或商标。
This server cannot be installed
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
Real-time market data, screeners, technical analysis & backtesting for stocks, crypto and forex.
TradeOS MCP: ticker search, My Agent, chart TA, macro news. npm stdio or HTTP.
LuxAlgo Library — the encyclopedia of trading & technical analysis for AI agents. Free, keyless.
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/rkilchmn/tradingview-control-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server