{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_ybcn7sdscmuh","handle":"pine-script-v6-documentation","url":"https://wellknown.network/agents/pine-script-v6-documentation","links":{"self":"https://wellknown.network/agents/pine-script-v6-documentation/record.json","html":"https://wellknown.network/agents/pine-script-v6-documentation","markdown":"https://wellknown.network/agents/pine-script-v6-documentation/record.md","api":"https://wellknown.network/api/v1/agents/pine-script-v6-documentation","status":"https://wellknown.network/api/v1/agents/pine-script-v6-documentation/status","claim":"https://wellknown.network/agents/pine-script-v6-documentation/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/pine-script-v6-documentation/claim.json","badge":"https://wellknown.network/agents/pine-script-v6-documentation/badge.svg","openapi":"https://wellknown.network/openapi.json"},"ard":{"identifier":"urn:air:pinescript-mcp.fly.dev:server:pine-script-v6-documentation","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"Pine Script v6 Documentation","summary":"Pine Script v6 documentation lookup, function validation, and linting for AI code generation","description":"Pine Script v6 documentation lookup, function validation, and linting for AI code generation","publisher":{"name":"paulieb89","url":null},"homepage":"https://bouch.dev","repository":"https://github.com/paulieb89/pinescript-mcp","version":"0.6.17","license":null,"protocols":["mcp"],"tags":["ai","claude","documentation","mcp","pine-script","tradingview"],"pricing":null,"endpoints":[{"url":"https://pinescript-mcp.fly.dev/mcp","type":"mcp_streamable_http","auth":null,"probeable":true},{"url":"https://pinescript-mcp.fly.dev/sse","type":"mcp_sse","auth":null,"probeable":true},{"url":"pypi:pinescript-mcp","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-04-04T20:27:46.286352Z","publishedAt":"2026-04-04T20:27:46.286352Z","registryName":"io.github.paulieb89/pinescript-mcp"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","repoUrl":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"code.documentation","name":"Code Documentation","confidence":1,"provenance":"declared"},{"slug":"ai.prompting","name":"Prompt Management","confidence":1,"provenance":"derived"},{"slug":"dev.docs-lookup","name":"Documentation Lookup","confidence":0.925,"provenance":"derived"},{"slug":"content.seo","name":"SEO","confidence":0.525,"provenance":"derived"}],"categories":["ai","code","content","dev"]},"observed":{"status":"recently_observed","statusReason":"Responded 22h ago; 1 recent check failed (latest 18h ago).","lastOkAt":"2026-09-08T09:25:44.578Z","lastProbedAt":"2026-09-08T13:22:14.412Z","statusComputedAt":"2026-09-08T13:32:54.692Z","reliability30d":{"probes":7,"successRate":0.7143,"p50Ms":26},"latestObservations":[{"at":"2026-09-09T06:20:29.897Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":24,"error":null,"detail":{"tools":[{"name":"list_docs","description":"USE WHEN discovering what Pine Script v6 documentation is available.\nReturns a categorised list of doc file paths with one-line descriptions.\nAFTER calling this"},{"name":"list_sections","description":"USE WHEN navigating a large documentation file before reading a specific section.\nReturns a newline-separated list of # and ## headers (### excluded) in the fil"},{"name":"get_doc","description":"USE WHEN reading the full content of a Pine Script v6 documentation file.\nReturns the file content; when limit is set, a header shows the char range and offset "},{"name":"get_section","description":"USE WHEN reading a specific named section from a Pine Script v6 documentation file.\nReturns the section content from the matched header to the next same-level h"},{"name":"search_docs","description":"USE WHEN finding documentation sections that match specific terms across all Pine Script v6 docs.\nReturns up to max_results sections ranked by match count, each"},{"name":"get_functions","description":"USE WHEN browsing valid Pine Script v6 functions, optionally filtered to a namespace.\nReturns function names grouped by namespace (e.g. ta.*, strategy.*) or fil"},{"name":"validate_function","description":"USE WHEN confirming a Pine Script v6 function name is valid before using it in code.\nReturns a valid/invalid verdict with namespace suggestions or known replace"},{"name":"resolve_topic","description":"USE WHEN looking up an exact Pine Script API term or known concept keyword.\nReturns the best-matching doc paths with matched keywords and a retrieval suggestion"},{"name":"list_prompts","description":"List all available prompts.\n\nReturns JSON with prompt metadata including name, description,\nand optional arguments."},{"name":"get_prompt","description":"Get a prompt by name with optional arguments.\n\nReturns the rendered prompt as JSON with a messages array.\nArguments should be provided as a dict mapping argumen"}],"toolCount":10,"serverName":"pinescript-docs","capabilities":["experimental","logging","prompts","resources","tools","extensions"],"serverVersion":"3.3.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-08T23:19:31.825Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":35,"error":null,"detail":{"tools":[{"name":"list_docs","description":"USE WHEN discovering what Pine Script v6 documentation is available.\nReturns a categorised list of doc file paths with one-line descriptions.\nAFTER calling this"},{"name":"list_sections","description":"USE WHEN navigating a large documentation file before reading a specific section.\nReturns a newline-separated list of # and ## headers (### excluded) in the fil"},{"name":"get_doc","description":"USE WHEN reading the full content of a Pine Script v6 documentation file.\nReturns the file content; when limit is set, a header shows the char range and offset "},{"name":"get_section","description":"USE WHEN reading a specific named section from a Pine Script v6 documentation file.\nReturns the section content from the matched header to the next same-level h"},{"name":"search_docs","description":"USE WHEN finding documentation sections that match specific terms across all Pine Script v6 docs.\nReturns up to max_results sections ranked by match count, each"},{"name":"get_functions","description":"USE WHEN browsing valid Pine Script v6 functions, optionally filtered to a namespace.\nReturns function names grouped by namespace (e.g. ta.*, strategy.*) or fil"},{"name":"validate_function","description":"USE WHEN confirming a Pine Script v6 function name is valid before using it in code.\nReturns a valid/invalid verdict with namespace suggestions or known replace"},{"name":"resolve_topic","description":"USE WHEN looking up an exact Pine Script API term or known concept keyword.\nReturns the best-matching doc paths with matched keywords and a retrieval suggestion"},{"name":"list_prompts","description":"List all available prompts.\n\nReturns JSON with prompt metadata including name, description,\nand optional arguments."},{"name":"get_prompt","description":"Get a prompt by name with optional arguments.\n\nReturns the rendered prompt as JSON with a messages array.\nArguments should be provided as a dict mapping argumen"}],"toolCount":10,"serverName":"pinescript-docs","capabilities":["experimental","logging","prompts","resources","tools","extensions"],"serverVersion":"3.3.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-08T16:22:26.444Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":48,"error":null,"detail":{"tools":[{"name":"list_docs","description":"USE WHEN discovering what Pine Script v6 documentation is available.\nReturns a categorised list of doc file paths with one-line descriptions.\nAFTER calling this"},{"name":"list_sections","description":"USE WHEN navigating a large documentation file before reading a specific section.\nReturns a newline-separated list of # and ## headers (### excluded) in the fil"},{"name":"get_doc","description":"USE WHEN reading the full content of a Pine Script v6 documentation file.\nReturns the file content; when limit is set, a header shows the char range and offset "},{"name":"get_section","description":"USE WHEN reading a specific named section from a Pine Script v6 documentation file.\nReturns the section content from the matched header to the next same-level h"},{"name":"search_docs","description":"USE WHEN finding documentation sections that match specific terms across all Pine Script v6 docs.\nReturns up to max_results sections ranked by match count, each"},{"name":"get_functions","description":"USE WHEN browsing valid Pine Script v6 functions, optionally filtered to a namespace.\nReturns function names grouped by namespace (e.g. ta.*, strategy.*) or fil"},{"name":"validate_function","description":"USE WHEN confirming a Pine Script v6 function name is valid before using it in code.\nReturns a valid/invalid verdict with namespace suggestions or known replace"},{"name":"resolve_topic","description":"USE WHEN looking up an exact Pine Script API term or known concept keyword.\nReturns the best-matching doc paths with matched keywords and a retrieval suggestion"},{"name":"list_prompts","description":"List all available prompts.\n\nReturns JSON with prompt metadata including name, description,\nand optional arguments."},{"name":"get_prompt","description":"Get a prompt by name with optional arguments.\n\nReturns the rendered prompt as JSON with a messages array.\nArguments should be provided as a dict mapping argumen"}],"toolCount":10,"serverName":"pinescript-docs","capabilities":["experimental","logging","prompts","resources","tools","extensions"],"serverVersion":"3.3.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-08T13:22:14.412Z","kind":"http_get","ok":false,"httpStatus":404,"latencyMs":20,"error":"http 404 text/plain; charset=utf-8","detail":{"sse":false,"contentType":"text/plain; charset=utf-8"}},{"at":"2026-09-08T09:25:44.578Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":24,"error":null,"detail":{"tools":[{"name":"list_docs","description":"USE WHEN discovering what Pine Script v6 documentation is available.\nReturns a categorised list of doc file paths with one-line descriptions.\nAFTER calling this"},{"name":"list_sections","description":"USE WHEN navigating a large documentation file before reading a specific section.\nReturns a newline-separated list of # and ## headers (### excluded) in the fil"},{"name":"get_doc","description":"USE WHEN reading the full content of a Pine Script v6 documentation file.\nReturns the file content; when limit is set, a header shows the char range and offset "},{"name":"get_section","description":"USE WHEN reading a specific named section from a Pine Script v6 documentation file.\nReturns the section content from the matched header to the next same-level h"},{"name":"search_docs","description":"USE WHEN finding documentation sections that match specific terms across all Pine Script v6 docs.\nReturns up to max_results sections ranked by match count, each"},{"name":"get_functions","description":"USE WHEN browsing valid Pine Script v6 functions, optionally filtered to a namespace.\nReturns function names grouped by namespace (e.g. ta.*, strategy.*) or fil"},{"name":"validate_function","description":"USE WHEN confirming a Pine Script v6 function name is valid before using it in code.\nReturns a valid/invalid verdict with namespace suggestions or known replace"},{"name":"resolve_topic","description":"USE WHEN looking up an exact Pine Script API term or known concept keyword.\nReturns the best-matching doc paths with matched keywords and a retrieval suggestion"},{"name":"list_prompts","description":"List all available prompts.\n\nReturns JSON with prompt metadata including name, description,\nand optional arguments."},{"name":"get_prompt","description":"Get a prompt by name with optional arguments.\n\nReturns the rendered prompt as JSON with a messages array.\nArguments should be provided as a dict mapping argumen"}],"toolCount":10,"serverName":"pinescript-docs","capabilities":["experimental","logging","prompts","resources","tools","extensions"],"serverVersion":"3.3.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-08T02:22:17.540Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":22,"error":null,"detail":{"tools":[{"name":"list_docs","description":"USE WHEN discovering what Pine Script v6 documentation is available.\nReturns a categorised list of doc file paths with one-line descriptions.\nAFTER calling this"},{"name":"list_sections","description":"USE WHEN navigating a large documentation file before reading a specific section.\nReturns a newline-separated list of # and ## headers (### excluded) in the fil"},{"name":"get_doc","description":"USE WHEN reading the full content of a Pine Script v6 documentation file.\nReturns the file content; when limit is set, a header shows the char range and offset "},{"name":"get_section","description":"USE WHEN reading a specific named section from a Pine Script v6 documentation file.\nReturns the section content from the matched header to the next same-level h"},{"name":"search_docs","description":"USE WHEN finding documentation sections that match specific terms across all Pine Script v6 docs.\nReturns up to max_results sections ranked by match count, each"},{"name":"get_functions","description":"USE WHEN browsing valid Pine Script v6 functions, optionally filtered to a namespace.\nReturns function names grouped by namespace (e.g. ta.*, strategy.*) or fil"},{"name":"validate_function","description":"USE WHEN confirming a Pine Script v6 function name is valid before using it in code.\nReturns a valid/invalid verdict with namespace suggestions or known replace"},{"name":"resolve_topic","description":"USE WHEN looking up an exact Pine Script API term or known concept keyword.\nReturns the best-matching doc paths with matched keywords and a retrieval suggestion"},{"name":"list_prompts","description":"List all available prompts.\n\nReturns JSON with prompt metadata including name, description,\nand optional arguments."},{"name":"get_prompt","description":"Get a prompt by name with optional arguments.\n\nReturns the rendered prompt as JSON with a messages array.\nArguments should be provided as a dict mapping argumen"}],"toolCount":10,"serverName":"pinescript-docs","capabilities":["experimental","logging","prompts","resources","tools","extensions"],"serverVersion":"3.3.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-07T19:22:19.143Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":25,"error":null,"detail":{"tools":[{"name":"list_docs","description":"USE WHEN discovering what Pine Script v6 documentation is available.\nReturns a categorised list of doc file paths with one-line descriptions.\nAFTER calling this"},{"name":"list_sections","description":"USE WHEN navigating a large documentation file before reading a specific section.\nReturns a newline-separated list of # and ## headers (### excluded) in the fil"},{"name":"get_doc","description":"USE WHEN reading the full content of a Pine Script v6 documentation file.\nReturns the file content; when limit is set, a header shows the char range and offset "},{"name":"get_section","description":"USE WHEN reading a specific named section from a Pine Script v6 documentation file.\nReturns the section content from the matched header to the next same-level h"},{"name":"search_docs","description":"USE WHEN finding documentation sections that match specific terms across all Pine Script v6 docs.\nReturns up to max_results sections ranked by match count, each"},{"name":"get_functions","description":"USE WHEN browsing valid Pine Script v6 functions, optionally filtered to a namespace.\nReturns function names grouped by namespace (e.g. ta.*, strategy.*) or fil"},{"name":"validate_function","description":"USE WHEN confirming a Pine Script v6 function name is valid before using it in code.\nReturns a valid/invalid verdict with namespace suggestions or known replace"},{"name":"resolve_topic","description":"USE WHEN looking up an exact Pine Script API term or known concept keyword.\nReturns the best-matching doc paths with matched keywords and a retrieval suggestion"},{"name":"list_prompts","description":"List all available prompts.\n\nReturns JSON with prompt metadata including name, description,\nand optional arguments."},{"name":"get_prompt","description":"Get a prompt by name with optional arguments.\n\nReturns the rendered prompt as JSON with a messages array.\nArguments should be provided as a dict mapping argumen"}],"toolCount":10,"serverName":"pinescript-docs","capabilities":["experimental","logging","prompts","resources","tools","extensions"],"serverVersion":"3.3.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-07T12:24:12.027Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":33,"error":null,"detail":{"tools":[{"name":"list_docs","description":"USE WHEN discovering what Pine Script v6 documentation is available.\nReturns a categorised list of doc file paths with one-line descriptions.\nAFTER calling this"},{"name":"list_sections","description":"USE WHEN navigating a large documentation file before reading a specific section.\nReturns a newline-separated list of # and ## headers (### excluded) in the fil"},{"name":"get_doc","description":"USE WHEN reading the full content of a Pine Script v6 documentation file.\nReturns the file content; when limit is set, a header shows the char range and offset "},{"name":"get_section","description":"USE WHEN reading a specific named section from a Pine Script v6 documentation file.\nReturns the section content from the matched header to the next same-level h"},{"name":"search_docs","description":"USE WHEN finding documentation sections that match specific terms across all Pine Script v6 docs.\nReturns up to max_results sections ranked by match count, each"},{"name":"get_functions","description":"USE WHEN browsing valid Pine Script v6 functions, optionally filtered to a namespace.\nReturns function names grouped by namespace (e.g. ta.*, strategy.*) or fil"},{"name":"validate_function","description":"USE WHEN confirming a Pine Script v6 function name is valid before using it in code.\nReturns a valid/invalid verdict with namespace suggestions or known replace"},{"name":"resolve_topic","description":"USE WHEN looking up an exact Pine Script API term or known concept keyword.\nReturns the best-matching doc paths with matched keywords and a retrieval suggestion"},{"name":"list_prompts","description":"List all available prompts.\n\nReturns JSON with prompt metadata including name, description,\nand optional arguments."},{"name":"get_prompt","description":"Get a prompt by name with optional arguments.\n\nReturns the rendered prompt as JSON with a messages array.\nArguments should be provided as a dict mapping argumen"}],"toolCount":10,"serverName":"pinescript-docs","capabilities":["experimental","logging","prompts","resources","tools","extensions"],"serverVersion":"3.3.0","protocolVersion":"2025-06-18"}},{"at":"2026-09-07T12:23:47.510Z","kind":"http_get","ok":false,"httpStatus":404,"latencyMs":16,"error":"http 404 text/plain; charset=utf-8","detail":{"sse":false,"contentType":"text/plain; charset=utf-8"}},{"at":"2026-09-07T04:27:39.478Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":48,"error":null,"detail":{"tools":[{"name":"list_docs","description":"USE WHEN discovering what Pine Script v6 documentation is available.\nReturns a categorised list of doc file paths with one-line descriptions.\nAFTER calling this"},{"name":"list_sections","description":"USE WHEN navigating a large documentation file before reading a specific section.\nReturns a newline-separated list of # and ## headers (### excluded) in the fil"},{"name":"get_doc","description":"USE WHEN reading the full content of a Pine Script v6 documentation file.\nReturns the file content; when limit is set, a header shows the char range and offset "},{"name":"get_section","description":"USE WHEN reading a specific named section from a Pine Script v6 documentation file.\nReturns the section content from the matched header to the next same-level h"},{"name":"search_docs","description":"USE WHEN finding documentation sections that match specific terms across all Pine Script v6 docs.\nReturns up to max_results sections ranked by match count, each"},{"name":"get_functions","description":"USE WHEN browsing valid Pine Script v6 functions, optionally filtered to a namespace.\nReturns function names grouped by namespace (e.g. ta.*, strategy.*) or fil"},{"name":"validate_function","description":"USE WHEN confirming a Pine Script v6 function name is valid before using it in code.\nReturns a valid/invalid verdict with namespace suggestions or known replace"},{"name":"resolve_topic","description":"USE WHEN looking up an exact Pine Script API term or known concept keyword.\nReturns the best-matching doc paths with matched keywords and a retrieval suggestion"},{"name":"list_prompts","description":"List all available prompts.\n\nReturns JSON with prompt metadata including name, description,\nand optional arguments."},{"name":"get_prompt","description":"Get a prompt by name with optional arguments.\n\nReturns the rendered prompt as JSON with a messages array.\nArguments should be provided as a dict mapping argumen"}],"toolCount":10,"serverName":"pinescript-docs","capabilities":["experimental","logging","prompts","resources","tools","extensions"],"serverVersion":"3.3.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"list_docs","description":"USE WHEN discovering what Pine Script v6 documentation is available.\nReturns a categorised list of doc file paths with one-line descriptions.\nAFTER calling this"},{"name":"list_sections","description":"USE WHEN navigating a large documentation file before reading a specific section.\nReturns a newline-separated list of # and ## headers (### excluded) in the fil"},{"name":"get_doc","description":"USE WHEN reading the full content of a Pine Script v6 documentation file.\nReturns the file content; when limit is set, a header shows the char range and offset "},{"name":"get_section","description":"USE WHEN reading a specific named section from a Pine Script v6 documentation file.\nReturns the section content from the matched header to the next same-level h"},{"name":"search_docs","description":"USE WHEN finding documentation sections that match specific terms across all Pine Script v6 docs.\nReturns up to max_results sections ranked by match count, each"},{"name":"get_functions","description":"USE WHEN browsing valid Pine Script v6 functions, optionally filtered to a namespace.\nReturns function names grouped by namespace (e.g. ta.*, strategy.*) or fil"},{"name":"validate_function","description":"USE WHEN confirming a Pine Script v6 function name is valid before using it in code.\nReturns a valid/invalid verdict with namespace suggestions or known replace"},{"name":"resolve_topic","description":"USE WHEN looking up an exact Pine Script API term or known concept keyword.\nReturns the best-matching doc paths with matched keywords and a retrieval suggestion"},{"name":"list_prompts","description":"List all available prompts.\n\nReturns JSON with prompt metadata including name, description,\nand optional arguments."},{"name":"get_prompt","description":"Get a prompt by name with optional arguments.\n\nReturns the rendered prompt as JSON with a messages array.\nArguments should be provided as a dict mapping argumen"}],"package":{"name":"pinescript-mcp","registry":"pypi","observedAt":"2026-09-08T09:36:07.918Z","publishedAt":"2026-05-17T16:38:51.371175Z","latestVersion":"0.7.5"}},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"io.github.paulieb89/pinescript-mcp","url":"https://registry.modelcontextprotocol.io/v0/servers/io.github.paulieb89%2Fpinescript-mcp","firstSeenAt":"2026-09-06T22:22:29.947Z","fetchedAt":"2026-09-08T21:22:04.238Z","normalizedAt":"2026-09-08T21:22:04.238Z"},{"source":"pypi","key":"pinescript-mcp","url":"https://pypi.org/project/pinescript-mcp/","firstSeenAt":"2026-09-06T22:23:37.429Z","fetchedAt":"2026-09-06T22:23:37.429Z","normalizedAt":"2026-09-06T22:23:37.429Z"}]},"firstSeenAt":"2026-09-06T22:22:29.947Z","updatedAt":"2026-09-08T09:36:07.918Z"}