A Model Context Protocol (MCP) server for working with TradingView PineScript. This server provides tools for validating, fixing, and generating PineScript code through a standardized API.
- PineScript Validation - Automatically validates PineScript code for syntax errors and warnings
- Error Fixing - Automatically fixes common PineScript syntax errors
- Template Generation - Provides validated templates for various PineScript strategies and indicators
- Node.js 16.x or higher
- npm 8.x or higher
- Clone the repository
git clone https://github.com/yourusername/pinescriptproject1.git
cd pinescriptproject1- Install dependencies
npm install- Build the project
npm run buildStart the MCP server:
npm run start-serverThis will start the server with stdio transport, which allows it to communicate with MCP clients.
The MCP server exposes the following tools:
Validates PineScript code for syntax errors and warnings.
Parameters:
script(string): The PineScript code to validateversion(string, optional): Expected PineScript version (e.g., 'v5', 'v4')
Returns:
valid(boolean): Whether the script is validerrors(string[]): List of syntax errorswarnings(string[]): List of warnings
Automatically fixes common syntax errors in PineScript code.
Parameters:
script(string): The PineScript code to fix
Returns:
fixed(boolean): Whether any fixes were appliedfixedCode(string): The fixed scriptchanges(string[]): List of changes made
Provides validated templates for common PineScript strategies and indicators.
Parameters:
template_type(string): Type of template ('strategy' or 'indicator')name(string): Template name
Returns:
template(string): The template codemessage(string): Confirmation message
The validator currently checks for:
- Empty scripts
- Version annotations
- Balanced parentheses
- String quotes
- Comma placement in function calls
- Deprecated functions in PineScript v5
- Incorrect variable export syntax
The fixer can automatically fix:
- Missing version annotations
- Unbalanced parentheses
- Unclosed string literals
- Missing commas in function calls
- Deprecated study() function
- Incorrect variable export syntax
npm testTo run the server in development mode with automatic reloading:
npm run devISC
Contributions are welcome!