Skip to main content

MCP server providing Pine Script v6 documentation for AI assistants

Project description

pinescript-mcp

MCP server providing Pine Script v6 documentation for AI assistants (Claude, etc.).

Enables AI to:

  • Look up Pine Script functions and validate syntax
  • Access official documentation for indicators, strategies, and visuals
  • Understand Pine Script concepts (execution model, repainting, etc.)
  • Generate correct v6 code with proper function references

Quick Start (stdio)

Works with Claude Code, Claude Desktop, Gemini CLI, and any MCP client that supports stdio:

{
  "mcpServers": {
    "pinescript-docs": {
      "type": "stdio",
      "command": "uvx",
      "args": ["pinescript-mcp"]
    }
  }
}

Public Server (No Install Required)

No Python or uvx needed — connect directly to the hosted server.

Streamable HTTP — Claude Code, Claude Desktop, Cursor, Cline (standard mcpServers with type field):

{
  "mcpServers": {
    "pinescript-docs": {
      "type": "http",
      "url": "https://pinescript-mcp.fly.dev/mcp"
    }
  }
}

Windsurf — uses its own serverUrl shape (see Windsurf docs). Edit ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "pinescript-docs": {
      "serverUrl": "https://pinescript-mcp.fly.dev/mcp"
    }
  }
}

ChatGPT — no config file. In ChatGPT, go to Settings → Connectors → Create and paste https://pinescript-mcp.fly.dev/mcp into the Server URL field. Developer Mode must be enabled (see OpenAI Developer Mode guide).

Claude.ai — add via the web UI's MCP connector settings, not a JSON file.

SSE (legacy transport, kept for older clients):

{
  "mcpServers": {
    "pinescript-docs": {
      "type": "sse",
      "url": "https://pinescript-mcp.fly.dev/sse"
    }
  }
}

Streamable HTTP is preferred — SSE is being phased out across the MCP ecosystem.

Version Pinning

Documentation is bundled in the package — each version contains a frozen snapshot. For reproducible agent behaviour, pin to a specific version:

{
  "mcpServers": {
    "pinescript-docs": {
      "command": "uvx",
      "args": ["pinescript-mcp==0.7.0"]
    }
  }
}

Without pinning, uvx pinescript-mcp gets the latest version.

Note: versions before 0.7.0 included lint_script and edit_and_lint tools that were removed in 0.7.0 (docs-only server). Pinning to 0.6.x will give you those tools back, but the auth gate on lint_script was never completed on the hosted Fly instance, so they'll return auth errors on HTTP. Pin 0.7.0+ for the current, working tool surface.

Available Tools (12)

Tool Description
resolve_topic(query) Fast lookup for exact API terms (ta.rsi, repainting)
search_docs(query) Grep for exact strings across all docs
list_docs() List all documentation files with descriptions
list_sections(path) List ## headers in a doc file (for navigating large files)
get_doc(path) Read a specific documentation file
get_section(path, header) Read a specific section by header
get_functions(namespace) List valid functions (ta, strategy, etc.)
validate_function(name) Check if a function exists in Pine v6
list_resources() Browse available documentation resources
read_resource(uri) Read a doc resource by URI (e.g. docs://manifest)
list_prompts() List available prompt templates
get_prompt(name, arguments) Render a prompt template with arguments

Available Prompts

Prompt Description
debug_error(error, code) Analyze a Pine Script compilation error
convert_v5_to_v6(code) Convert Pine Script v5 code to v6 syntax
explain_function(name) Explain a Pine Script function in detail

Available Resources

URI Description
docs://manifest Start here — routing guide for Pine Script questions
docs://functions Complete Pine Script v6 function list (JSON)
docs://{path} Any doc file by path (e.g. concepts/timeframes.md)

Example Queries

  • "How do I create a trailing stop in Pine Script?"
  • "What's the difference between var and varip?"
  • "Is ta.supertrend a valid function?"
  • "How do I avoid repainting with request.security?"

Documentation Coverage

The server bundles comprehensive Pine Script v6 documentation:

  • Concepts: Execution model, timeframes, colors, methods, objects, common errors
  • Reference: Types, variables, constants, keywords, operators, annotations
  • Functions: Technical analysis (ta.*), strategies, requests, drawings, collections
  • Visuals: Plots, fills, shapes, tables, lines, boxes, backgrounds
  • Writing Scripts: Style guide, debugging, optimization, limitations

Why Use This?

AI models often hallucinate Pine Script functions or use deprecated v5 syntax. This MCP server grounds the AI in actual v6 documentation, preventing:

  • Made-up function names (e.g., ta.hull doesn't exist, use ta.hma)
  • Deprecated syntax from v4/v5
  • Incorrect parameter orders
  • Missing required arguments

Skills

Combine with skills for even more control available at bouch.dev/products/pine-strategy-builder.

Development

# Clone and install locally
git clone https://gitlab.com/articat1066/pinescript-v6-mcp
cd pinescript-mcp
pip install -e .

# Run the server
pinescript-mcp

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pinescript_mcp-0.7.1.tar.gz (322.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pinescript_mcp-0.7.1-py3-none-any.whl (350.6 kB view details)

Uploaded Python 3

File details

Details for the file pinescript_mcp-0.7.1.tar.gz.

File metadata

  • Download URL: pinescript_mcp-0.7.1.tar.gz
  • Upload date:
  • Size: 322.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for pinescript_mcp-0.7.1.tar.gz
Algorithm Hash digest
SHA256 4612d323136d1c0bffd449ebf7a7ac3de2666f1412b73db82648a5cf21c5335a
MD5 b5e715456b4b45c7a6d4dbc63d55a478
BLAKE2b-256 ea43d5bfec6944d6ba9c3441dc8f0366fafd7f163c2c82956e41c2e0471a6485

See more details on using hashes here.

File details

Details for the file pinescript_mcp-0.7.1-py3-none-any.whl.

File metadata

  • Download URL: pinescript_mcp-0.7.1-py3-none-any.whl
  • Upload date:
  • Size: 350.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for pinescript_mcp-0.7.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8c1489b68b81a3c85a131c710fc6e09a6d58d98478e6e5257ad656ce408f51ea
MD5 d1511fedab43cf7bd6efd9a29d6e8811
BLAKE2b-256 26b4269f217a167dfa9ffa6ba3f44e9e0baabb88f1fe0e82247d9251ea737b45

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page