pinescript — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited pinescript (Plugin) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
<!-- mcp-name: io.github.paulieb89/pinescript-mcp -->
MCP server providing Pine Script v6 documentation for AI assistants (Claude, etc.).
Enables AI to:
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"]
}
}
}No Python or uvx needed — connect directly to the hosted server.
Streamable HTTP — Claude Code, mcpServers with type field):
{
"mcpServers": {
"pinescript-docs": {
"type": "http",
"url": "https://pinescript-mcp.fly.dev/mcp"
}
}
}Windsurf — uses its own 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.
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.6"]
}
}
}Without pinning, uvx pinescript-mcp gets the latest version.
| 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 |
| 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 |
| 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) |
The server bundles comprehensive Pine Script v6 documentation:
AI models often hallucinate Pine Script functions or use deprecated v5 syntax. This MCP server grounds the AI in actual v6 documentation, preventing:
ta.hull doesn't exist, use ta.hma)Combine with skills for even more control available at bouch.dev/products/pine-strategy-builder.
# Clone and install locally
git clone https://github.com/paulieb89/pinescript-mcp
cd pinescript-mcp
pip install -e .
# Run the server
pinescript-mcpMIT
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.