# Pine Script v6 Documentation MCP server

Pine Script v6 documentation lookup, function validation, and linting for AI code generation

## Links
- Registry page: https://www.getdrio.com/mcp/io-github-paulieb89-pinescript-mcp
- Repository: https://github.com/paulieb89/pinescript-mcp
- Website: https://bouch.dev

## Install
- Command: `uvx pinescript-mcp`
- Endpoint: https://pinescript-mcp.fly.dev/mcp
- Auth: Not captured

## Setup notes
- Package: Pypi pinescript-mcp v0.6.17
- Remote endpoint: https://pinescript-mcp.fly.dev/mcp
- Remote endpoint: https://pinescript-mcp.fly.dev/sse

## Tools
- list_docs - List all available Pine Script v6 documentation files with descriptions.

Returns files organised by category with descriptions.
For small files use get_doc(path). For large files
(ta.md, strategy.md, collections.md, drawing.md, general.md)
use list_sections(path) then get_section(path, header). Endpoint: https://pinescript-mcp.fly.dev/mcp
- list_sections - List all section headers in a doc file. Use before get_section() to find the right header.

Especially useful for large files like ta.md, strategy.md, collections.md, drawing.md, general.md
which have 50-115 sections each. Endpoint: https://pinescript-mcp.fly.dev/mcp
- get_doc - Read a specific Pine Script v6 documentation file.

For large files (ta.md, strategy.md, collections.md, drawing.md,
general.md) prefer list_sections() + get_section() to avoid
loading 1000-2800 line files into context. Endpoint: https://pinescript-mcp.fly.dev/mcp
- get_section - Get a specific section from a documentation file by its header.

Use after list_sections() shows available headers, or after
resolve_topic() / search_docs() identifies the relevant file. Endpoint: https://pinescript-mcp.fly.dev/mcp
- search_docs - Search Pine Script v6 documentation and return matching sections.

Finds sections containing the query and returns previews with
get_section() call hints so you can read the full content.

Multi-word queries use AND logic: all terms must appear in the
section (not necessarily on the same line). Endpoint: https://pinescript-mcp.fly.dev/mcp
- get_functions - Get valid Pine Script v6 functions, optionally filtered by namespace.

Use before writing Pine Script to see which functions exist.
For checking a single function name, use validate_function() instead. Endpoint: https://pinescript-mcp.fly.dev/mcp
- validate_function - Check if a Pine Script v6 function name is valid. Endpoint: https://pinescript-mcp.fly.dev/mcp
- resolve_topic - Fast lookup for exact Pine Script API terms and known concepts.

Use for exact function names and Pine Script vocabulary
(e.g., "ta.rsi", "strategy.entry", "repainting", "request.security").

For natural language questions, read the docs://manifest resource
for routing guidance, then use get_doc() or list_sections() + get_section(). Endpoint: https://pinescript-mcp.fly.dev/mcp
- list_prompts - List all available prompts.

Returns JSON with prompt metadata including name, description,
and optional arguments. Endpoint: https://pinescript-mcp.fly.dev/mcp
- get_prompt - Get a prompt by name with optional arguments.

Returns the rendered prompt as JSON with a messages array.
Arguments should be provided as a dict mapping argument names
to values. Endpoint: https://pinescript-mcp.fly.dev/mcp

## Resources
- docs://manifest - START HERE — routing guide that maps Pine Script questions to documentation files and tool call sequences MIME type: text/markdown
- docs://functions - Complete list of valid Pine Script v6 functions as JSON MIME type: application/json

## Prompts
- debug_error - Debug a Pine Script compilation error. Arguments: error_message, code
- convert_v5_to_v6 - Convert Pine Script v5 code to v6. Arguments: code
- explain_function - Explain a Pine Script function in detail. Arguments: function_name

## Metadata
- Owner: io.github.paulieb89
- Version: 0.6.17
- Runtime: Pypi
- Transports: HTTP, STDIO
- License: Not captured
- Language: Not captured
- Stars: Not captured
- Updated: Apr 4, 2026
- Source: https://registry.modelcontextprotocol.io
