MCP server · Audited from source

TradingView MCP server

by atilaahmettaner/tradingview-mcpMIT licenceAudited 21 Sep 2026 · source 7725bad81721

PyPI tradingview-mcp-serverstreamable-http★ 4,597
!CAUTIONGrade B · 89/100 · 21 Sep 2026 · 7725bad
4,597GitHub stars

Is it safe? With care — CAUTION, grade B (89/100). The tool list is built at runtime, so we cannot read it from the source. The audit recorded 12 findings (0 critical, 1 high, 0 medium, 11 low). Maintainer's description: TradingView MCP server — real-time market data, technical analysis, screeners & backtesting for Claude, ChatGPT, Cursor & any MCP client. Stocks, crypto, forex & futures across global exchanges. Hosted or self-host.

Ask an AI about this pageGChatGPTCClaudePPerplexityGeGeminiXGrok
More
Cite

Cite this page

ModelsAtlas. “TradingView MCP server (atilaahmettaner/tradingview-mcp)”. Retrieved 21 Sep 2026. https://modelsatlas.com/mcp/atilaahmettaner/tradingview

2 MCP servers are called TradingView. You are viewing atilaahmettaner/tradingview-mcp. Compare all 2 →

Trust audit

Audit 0.4.1 · full source read 21 Sep 2026

Trust score89/100!CAUTION B
0 critical1 high0 medium11 low0 info

12 findings, listed below with the file and line each was found on. Grade A needs a sandboxed behavioural run too; this audit read the source only.

What the source does

  • FilesystemDeclared2 observations
  • NetworkDeclared8 observations
  • ShellNone observedNothing seen in the source
  • DependenciesPinnedNothing floats
  • SecretsNone foundNo keys in source

“Declared” means the server says it does this and the source agrees. Browser, file and shell access are expected of some kinds of server.

Five audit layers

LayerWhat we checkResult
L0 ProvenanceRepo owner, licence, archive status, activityPASS 1 finding
L1 Static sourceSecrets, path traversal, supply chainFAIL 2 findings
L2 InstructionsPrompt injection and authority framing in docs and tool descriptionsPASS 8 findings
L3 InventoryDeclared tools match the sourcePASS 1 finding
L4 SandboxRun in isolation and watch behaviourSKIPPED

Provenance & runtime

Who published it, and what the audit could and could not run

Provenance

  • Repository owner atilaahmettanerUser accountAccount type recorded when we read the repository.
  • PackagePublished on PyPItradingview-mcp-server, no version recorded
  • LicenceMITFrom the repository, as read at the audited commit.
  • Last push19 days agoActivity of the repository when we read it.
  • Source commit read7725bad81721The audit covers exactly this commit, read on 21 Sep 2026.

Runtime

  • Sandbox runNot run yetThis audit read the source only; it did not execute the server.
  • Tool inventoryBuilt at runtimeThe source declares no tools; the server lists them when a client connects, so we cannot read them.

Every value here is read from the record's own repository and audit.Suggest a correction

Findings (12)

Sorted by severity

HIGHNetwork egressnet.env_exfil · src/tradingview_mcp/core/services/proxy_manager.py:32
F-04 Network egressCWE-200 · CWE-319Layer L1
/.env" ... urllib.request
Why
reads secrets in the same file that sends data out
Fix
—
LOWInventory / provenanceinv.hidden_file · .codex-mcp.json
F-13 Inventory / provenanceCWE-1104Layer L0
.codex-mcp.json
Why
hidden member outside the usual dotfiles
Fix
review its purpose
LOWFilesystem / pathfs.traversal · src/tradingview_mcp/core/services/proxy_manager.py:32
F-05 Filesystem / pathCWE-22 · CWE-59Layer L1
_env_path = os.path.join(os.path.dirname(__file__), "../../../../.env")
Why
No further detail recorded for this rule.
Fix
—
LOWPrompt injectionprompt.credential_read · INSTALLATION.md:340
F-01 Prompt injectionCWE-94 · CWE-1427Layer L2
# 1. Open System Properties → Environment Variables
Why
asks the agent to read credentials
Fix
—
LOWPrompt injectionprompt.persistence · INSTALLATION.md:339
F-01 Prompt injectionCWE-94 · CWE-1427Layer L2
# If not found, add to PATH manually:
Why
instructs the agent to persist itself in the user's environment
Fix
—
LOWPrompt injectionprompt.persistence · INSTALLATION.md:350
F-01 Prompt injectionCWE-94 · CWE-1427Layer L2
# Add to PATH (if needed)
Why
instructs the agent to persist itself in the user's environment
Fix
—
LOWSupply chainprompt.pipe_to_shell · CONTRIBUTING.md:40
F-08 Supply chainCWE-829 · CWE-1357Layer L2
curl -LsSf https://astral.sh/uv/install.sh | sh
Why
No further detail recorded for this rule.
Fix
—
LOWSupply chainprompt.pipe_to_shell · INSTALLATION.md:27
F-08 Supply chainCWE-829 · CWE-1357Layer L2
curl -LsSf https://astral.sh/uv/install.sh | sh
Why
No further detail recorded for this rule.
Fix
—
LOWSupply chainprompt.pipe_to_shell · INSTALLATION.md:348
F-08 Supply chainCWE-829 · CWE-1357Layer L2
curl -LsSf https://astral.sh/uv/install.sh | sh
Why
No further detail recorded for this rule.
Fix
—
LOWSupply chainprompt.pipe_to_shell · OPENCLAW.md:29
F-08 Supply chainCWE-829 · CWE-1357Layer L2
curl -LsSf https://astral.sh/uv/install.sh | sh
Why
No further detail recorded for this rule.
Fix
—
LOWSupply chainprompt.pipe_to_shell · README.md:303
F-08 Supply chainCWE-829 · CWE-1357Layer L2
curl -LsSf https://astral.sh/uv/install.sh | sh && source ~/.bashrc
Why
No further detail recorded for this rule.
Fix
—
LOWInventory / provenancemcp.no_tools_extracted · server.json
F-13 Inventory / provenanceCWE-1104Layer L3
Why
the tool list is enumerated at runtime by tools/list, not declared in source
Fix
the page says so rather than showing an empty table

Tools it exposes

None declared in source

The tool list is built at runtime, so we cannot read it from the source.

Install

audited commit 7725bad

Read the findings first. The most severe is Network egress (high) at src/tradingview_mcp/core/services/proxy_manager.py.

One-click links open your editor with the config below filled in, exactly as the snippets show it. The audit covers commit 7725bad only.

claude mcp add tradingview-mcp-server --env MARKETAUX_API_TOKEN=${MARKETAUX_API_TOKEN} --env PROXY_PASSWORD=${PROXY_PASSWORD} -- uvx tradingview-mcp-server

The command does not pin a version; the audit covers commit 7725bad81721. Transport: streamable-http. Reads these environment variables: MARKETAUX_API_TOKEN, PROXY_PASSWORD. Give it the narrowest token it needs.

Audit history

  1. !CAUTION B 89 / 100

    Source changed, verdict held · 7725bad81721

README badge

For maintainers · updates on every re-audit

ModelsAtlas: CAUTION BMODELSATLASCAUTION · B
[![ModelsAtlas: CAUTION B](https://modelsatlas.com/mcp/atilaahmettaner/tradingview/badge.svg)](https://modelsatlas.com/mcp/atilaahmettaner/tradingview/)

The badge always shows the latest audit; a maintainer cannot pin an old verdict.

Other ratings

Cited, never blended into our score

No third-party security ratings are recorded for this server yet. When they exist they appear here with their source and date, beside, not inside, our grade.

Questions about TradingView MCP server

What is the TradingView MCP server?
TradingView MCP server — real-time market data, technical analysis, screeners & backtesting for Claude, ChatGPT, Cursor & any MCP client. Stocks, crypto, forex & futures across global exchanges. Hosted or self-host.
Is TradingView safe to connect to an agent?
With care. The audit graded it B (89/100) and found 12 things worth knowing before you trust this server, listed below with the exact line each was found on.
What credentials does TradingView need?
It reads MARKETAUX_API_TOKEN and PROXY_PASSWORD from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.
How does TradingView run?
It speaks streamable-http, so it runs as a service you connect to over the network. It is published on PyPI as tradingview-mcp-server.
How current is this page?
The grade is for one exact copy of the source (7725bad81721), read on 2026-09-21. The repository is watched and re-audited when it changes.
Which TradingView MCP server is the right one?
lev-corrupted/tradingviewmcpserver. 2 servers share the name; see the side-by-side comparison.

Sources

  • atilaahmettaner/tradingview-mcp on GitHub — the source we read, its licence, stars and activityObserved · 21 Sep 2026
  • ModelsAtlas trust audit — CAUTION verdict for commit 7725bad81721Observed · 21 Sep 2026

Spotted something wrong? Report a correction · Methodology

Keep going in your AI

Opens with this page as the source. We add nothing else to the prompt.