LightWeightChartsMCP
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., "@LightWeightChartsMCPsearch for price scale options in v5.0"
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.
LightWeightChartsMCP
Complete TradingView Lightweight Charts reference documentation MCP server with 6 tools for semantic search, JS/TS code validation, and template generation.
Quick Start | Tools | Configuration | Development
pip install lwcmcp
lwcmcpThat's it. On first run, the server auto-builds the ChromaDB vector store from shipped JSON data (takes 30-60 seconds for embedding model download + indexing). Subsequent runs start instantly.
What you get:
6 MCP tools for Lightweight Charts docs lookup, JS/TS code validation, and template generation
~1617 entries indexed in a local ChromaDB vector store (100% offline)
Sub-millisecond hot cache for priority lookups
Regex-based JS/TS validator (no Node.js runtime required)
Works with Claude Desktop, Cursor, Windsurf, OpenCode, and any MCP client
What you need:
Python 3.10+
Any MCP-compatible AI client
Features
6 tools: lookup, search, browse, validate, repair, scaffold
1 resource:
lwc://stats100% local: ChromaDB vector store, no network calls at runtime
Fast: Hot cache for instant lookups, name index for fuzzy matching, semantic search (warm)
5 versions: 3.8, 4.0, 4.1, 4.2, 5.0 plus tutorials and framework integrations
Validator: Regex-based JS/TS validation (no Node.js runtime required)
7 templates: basic_chart, realtime_updates, react_integration, vue_integration, web_components, custom_styling, multi_series
Version filtering: Every tool accepts
versionparam to filter by LWC versionProduction-ready: Health endpoint, circuit breakers, error masking, response capping, response caching middleware
Related MCP server: mcp-tradingview-server
Coverage
LWC API: functions, interfaces, enumerations, type-aliases, variables (all 5 versions)
Guides: getting-started, series-types, price-scale, time-scale, time-zones, plugins, migrations, android, ios, release-notes
Tutorials: customization, a11y, react, vuejs, webcomponents, how-to, demos
Total: ~1617 entries across 5 versions + tutorials
ChromaDB: all entries indexed (JSON = ChromaDB, zero dedup loss)
Setup
pip install lwcmcpOr from source:
git clone https://github.com/TheFractalyst/LightWeightChartsMCP.git
cd LightWeightChartsMCP
pip install -e ".[dev]"Run the server
# stdio (for MCP clients like Claude, Cursor, opencode)
lwcmcp
# SSE (HTTP)
lwcmcp --transport sse --port 8080
# Build ChromaDB manually (auto-builds on first run otherwise)
lwcmcp buildMCP Client Configuration
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)
or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"lightweightchartsmcp": {
"command": "lwcmcp",
"transport": "stdio"
}
}
}Cursor / Windsurf / OpenCode
Add to your project's .mcp.json or global MCP config:
{
"mcpServers": {
"lightweightchartsmcp": {
"command": "lwcmcp",
"transport": "stdio"
}
}
}SSE (HTTP)
lwcmcp --transport sse --port 8080Connect to http://localhost:8080.
Tools
+--------------+-----------+------------------------------------------+
| Tool | Type | Description |
+--------------+-----------+------------------------------------------+
| lwc_lookup | read-only | Exact name lookup with fuzzy fallback |
| lwc_search | read-only | Semantic search across all entries |
| lwc_browse | read-only | List namespace members |
| lwc_validate | read-write| Validate JS/TS for Lightweight Charts |
| lwc_repair | read-write| Fix common Lightweight Charts issues |
| lwc_scaffold | read-write| Generate chart template (7 kinds) |
+--------------+-----------+------------------------------------------++----------------+----------------------------------------------------+
| Tool | Signature |
+----------------+----------------------------------------------------+
| lwc_lookup | (name, kind?, version?) |
| lwc_search | (query, category?, namespace?, version?, n_results?)|
| lwc_browse | (namespace, category?, style?, version?) |
| lwc_validate | (code?, file_path?, file_content?, version?) |
| lwc_repair | (code, context, version?) |
| lwc_scaffold | (kind, name, description?, version?) |
+----------------+----------------------------------------------------+Version Filtering
Every tool accepts an optional version parameter:
"3.8","4.0","4.1","4.2","5.0"- filter to specific versionNone(default) - search across all versions (prefers latest 5.0)
Configuration
+------------------------+------------------+--------------------------------------------+
| Env Var | Default | Description |
+------------------------+------------------+--------------------------------------------+
| TRANSPORT | stdio | Transport: stdio or sse |
| PORT | 8080 | Port for SSE transport |
| LWC_DB_PATH | ~/.lwc_mcp/db | ChromaDB path |
| LWC_COLLECTION | lwc_reference | ChromaDB collection name |
| LWC_EMBED_MODEL | all-MiniLM-L6-v2 | Sentence transformer model |
| LWC_MAX_RESULTS | 100 | Max results returned |
| VALIDATION_CACHE_TTL | 300 | Validation cache TTL (seconds) |
| VALIDATION_CACHE_SIZE | 500 | Validation cache max entries |
| LWC_INDEX_BATCH_SIZE | 25 | Indexing batch size |
| LAZY_MODEL | (empty) | Set to 1/true to defer model loading |
| LOG_DIR | ~/.lwc_mcp/logs | Log directory (SSE transport) |
| LOG_LEVEL | INFO | Logging level |
+------------------------+------------------+--------------------------------------------+Namespaces
API Namespaces
+----------------+----------------------------------------------+
| Namespace | Description |
+----------------+----------------------------------------------+
| enumerations | Enums (LineStyle, CrosshairMode, etc.) |
| functions | Functions (createChart, addSeries, etc.) |
| interfaces | Interfaces (IChartApi, ISeriesApi, etc.) |
| type-aliases | Type aliases (SeriesType, Time, etc.) |
| variables | Variables and constants |
+----------------+----------------------------------------------+Guide Namespaces
+------------------+------------------------------------------+
| Namespace | Description |
+------------------+------------------------------------------+
| getting-started | Getting started guides |
| android | Android platform integration |
| ios | iOS platform integration |
| price-scale | Price scale configuration |
| release-notes | Version release notes |
| series-types | Series types (candlestick, line, etc.) |
| time-scale | Time scale configuration |
| time-zones | Time zone handling |
| migrations | Version migration guides |
| plugins | Plugin system (v4.1+) |
+------------------+------------------------------------------+Tutorial Namespaces
+----------------+----------------------------------------------+
| Namespace | Description |
+----------------+----------------------------------------------+
| customization | Chart customization tutorials |
| a11y | Accessibility tutorials |
| react | React framework integration |
| vuejs | Vue.js framework integration |
| webcomponents | Web Components integration |
| how-to | How-to guides |
| demos | Demo applications |
+----------------+----------------------------------------------+Scaffold Templates (7 kinds)
+--------------------+----------------------------------------------+
| Kind | Description |
+--------------------+----------------------------------------------+
| basic_chart | Basic chart with createChart + setData |
| realtime_updates | Real-time data streaming with series.update |
| react_integration | React component with useRef + useEffect |
| vue_integration | Vue.js component with ref |
| web_components | Web Components custom element wrapper |
| custom_styling | Custom chart and series options/styling |
| multi_series | Multiple series (candlestick + volume) |
+--------------------+----------------------------------------------+Development
ruff check . --line-length 120 # lint
pytest tests/ -v # testArchitecture
FastMCP 3.4 with FileSystemProvider for auto-discovery
ChromaDB vector store (cosine, all-MiniLM-L6-v2, 384-dim)
3 composable lifespans: db | model | cache
Auto-build ChromaDB from shipped JSON on first run
Response caching middleware (lookup/browse 1h, search 5m)
Response limiting middleware (80KB cap)
Circuit breaker on validator and ChromaDB
Hot cache for fast lookups
Error masking (no internal details leaked)
Health endpoint at
/health
Database
~1617 entries across 5 versions (3.8, 4.0, 4.1, 4.2, 5.0) + tutorials
Auto-built on first run from shipped JSON data (1.5MB)
Stored at
~/.lwc_mcp/db(survives project updates)
To rebuild the database:
lwcmcp buildData Pipeline
pipeline/scrape_lwc.py- Direct HTTP scraper for Lightweight Charts docs sitemap (github.io, no ScraperAPI needed)pipeline/merge_and_index.py- Merge + index into ChromaDB
Re-scrape from TradingView
pip install -e ".[pipeline]"
python pipeline/scrape_lwc.py
python pipeline/merge_and_index.py --resetTech Stack
FastMCP 3.4 - MCP server framework with FileSystemProvider auto-discovery
ChromaDB - Local vector database for semantic search
SentenceTransformers -
all-MiniLM-L6-v2embedding model (384-dim)RapidFuzz - Fuzzy string matching for name lookups
Loguru - Structured logging with daily rotation (SSE mode)
Links
fractalyst.dev - Author homepage
TradingView - Public PineScript indicators
@TheFractalyst - X / Twitter
License
MIT - see LICENSE
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 Servers
- AlicenseAqualityCmaintenanceA type-safe MCP server that enables AI agents to control TradingView Desktop via Chrome DevTools Protocol, allowing chart state reading, symbol/timeframe changes, and OHLCV data fetching.112961MIT
- Flicense-qualityCmaintenanceExposes TradingView technical indicators and OHLCV data through MCP tools for Claude Desktop or any MCP-aware client.22
- Alicense-qualityDmaintenanceEnables AI agents to search code by meaning, explore codebase structure, store and query knowledge with temporal facts, and read source code through a set of MCP tools.4536MIT
- Alicense-qualityDmaintenanceMCP server providing 29 tools across 5 layers for semantic TypeScript/JavaScript code intelligence, enabling AI agents to find references, trace impacts, guard APIs, and explain errors without text-search false positives.281MIT
Related MCP Connectors
65+ AI tools as MCP: research, write, code, scrape, translate, RAG, agent memory, workflows
100+ MCP tools for AI agents: content metadata, trade intelligence, business-expertise analysis.
Real SEC, 13F, insider, congress & macro data your AI agent can cite. Hosted MCP, 24 tools.
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/TheFractalyst/LightWeightChartsMCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server