{"_id":"@pineforge/codegen-mcp","_rev":"38-01c37be9218e4b2f70bfc3ab92222273","name":"@pineforge/codegen-mcp","dist-tags":{"latest":"0.9.18"},"versions":{"0.1.0":{"name":"@pineforge/codegen-mcp","version":"0.1.0","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"Proprietary","_id":"@pineforge/codegen-mcp@0.1.0","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/fullpass-4pass/pineforge-codegen","bugs":{"url":"https://github.com/fullpass-4pass/pineforge-codegen/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"5a11b8de1df9eb8b03f0d19755403566d283257d","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.1.0.tgz","fileCount":4,"integrity":"sha512-FS7ffiH4WH9+CPCO9dC1lboC5n18yAG6C0n6y/nxkswFz7MKEOgVbQ/SoXLdV49lygCCV3O5HHZlU+2mJ2LnWA==","signatures":[{"sig":"MEYCIQDeSV0/FH1aB8Hnqh/995Pbpm28mxphI7TIXswrTqKEpQIhAIfRrfzzBQx0bXmjZtjsF80cdEEU8OpLDYEMUHb3Zffl","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20280},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"b9c0fc6912bda19f738db1a5f8a03f18e1b202fc","scripts":{"dev":"tsx src/index.ts","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"luisleo526","email":"luis@4pass.com.tw"},"repository":{"url":"git+https://github.com/fullpass-4pass/pineforge-codegen.git","type":"git","directory":"cloud/mcp-local"},"_npmVersion":"11.6.2","description":"Local MCP server: PineScript v6 → C++ via the PineForge codegen API + local Docker backtest runner.","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.1.0_1778099422352_0.010206006457231576","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.1.2":{"name":"@pineforge/codegen-mcp","version":"0.1.2","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.1.2","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/fullpass-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/fullpass-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"05dc6e6c8b279f49dbba4869cb68c814c0cb149f","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.1.2.tgz","fileCount":5,"integrity":"sha512-HAFbDmrC44H2LaeRN+D1GGN3wfEsLtp02HOV0Djnwbhx14k0C/FbeQmxcLsXLJu2J+0fcvAt1mKf6FxfcjEq2A==","signatures":[{"sig":"MEUCIQDyGOdEdR4V5XtZh4Imd5fY0Jfhjt0y0BXYpFDiUi5UmgIgJWMhiqUvIeDWzNSR5lszuowBnlKi6eli8D/Kjam57oM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":21418},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"59eb013f4d17e4afa8a513ba0ef1378efcd71926","scripts":{"dev":"tsx src/index.ts","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"luisleo526","email":"luis@4pass.com.tw"},"repository":{"url":"git+https://github.com/fullpass-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Local MCP server: PineScript v6 → C++ via the PineForge codegen API + local Docker backtest runner.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.1.2_1778100260860_0.11144825276194181","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.3.0":{"name":"@pineforge/codegen-mcp","version":"0.3.0","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.3.0","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/fullpass-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/fullpass-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"3b8121e1df79b979d125d120ba0b41afb1b8bc61","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.3.0.tgz","fileCount":7,"integrity":"sha512-y9xxCEIDAHF7yP5cL722wgzwOR8rjFa4B+JNM9uDyK5zXKXwz9SHNUgrwFwDU6w0pZ57eJV4jgayjjqjykxQwg==","signatures":[{"sig":"MEUCIQDTjT1ZKh3cIQ7jyh53ui5GIGjgZH5Cpvmv1dsfstDHOgIgUZbdARqEiWKvhMCX28LcXfaSdwg1Fh3uH8qttAeOaKE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":61885},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"286e35ef51c271376e66b5b92a68d7b571a8ec88","scripts":{"dev":"tsx src/index.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"luisleo526","email":"luis@4pass.com.tw"},"repository":{"url":"git+https://github.com/fullpass-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Local MCP server: PineScript v6 → C++ via the PineForge codegen API + local Docker backtest runner with parameter sweeps + Binance OHLCV exporter.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.3.0_1778260313562_0.9435436722730111","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.4.0":{"name":"@pineforge/codegen-mcp","version":"0.4.0","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.4.0","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/fullpass-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/fullpass-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"169641e295e6b3624df9e442d81ec30ad708394e","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.4.0.tgz","fileCount":7,"integrity":"sha512-DqJcpeb35mC6QCx0nqsNR+SBkeHpHD6EXqnJu9sF0xsDNuRuW4N+NeX3hSjt1yS+iWIPdv4/+szabAbAbm2YeA==","signatures":[{"sig":"MEYCIQC+owlCBXS14efeKHK/gLrn+PRQni4xtqQN+bVGiO+nWAIhAPdTDITYveiP03Mr8c+xhR2vCklXO8k7ghfjQqBnQ6Et","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":84948},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"2d0e1cbcedf5e498eb690b3b1197f2216683c49e","scripts":{"dev":"tsx src/index.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"luisleo526","email":"luis@4pass.com.tw"},"repository":{"url":"git+https://github.com/fullpass-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Local MCP server: PineScript v6 → C++ via the PineForge codegen API + local Docker backtest runner with parameter sweeps + Binance OHLCV exporter.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.4.0_1778283553396_0.6633922100236633","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.5.0":{"name":"@pineforge/codegen-mcp","version":"0.5.0","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.5.0","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/fullpass-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/fullpass-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"318b82d095893110df45e06847722cb46eb60428","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.5.0.tgz","fileCount":7,"integrity":"sha512-jUReBWek2kaBhjtpIcbW2DqvaMUgGC7WCESpKv97stUhdgVQSOvyH8eirhS/6fzruN2WnS7CUEb8Pgin7FFrtA==","signatures":[{"sig":"MEQCIEd9QiVPIwxm+zd/AuAIXOvtwQz94xeCxx7nASAxMeDEAiAQKH8++7tadoQecPu4X9lEJaGR1LMncJKRVisgYKWn4g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":94511},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"7d57133cdb0ddab749e4dcf2ca4bdb3368ff45a8","scripts":{"dev":"tsx src/index.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"luisleo526","email":"luis@4pass.com.tw"},"repository":{"url":"git+https://github.com/fullpass-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Local MCP server: PineScript v6 → C++ via the PineForge codegen API + local Docker backtest runner with parameter sweeps + Binance OHLCV exporter.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.5.0_1778363773949_0.31953959335633386","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.5.1":{"name":"@pineforge/codegen-mcp","version":"0.5.1","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.5.1","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/fullpass-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/fullpass-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"e3c703a0fdf09895d798303be1988147afd084a0","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.5.1.tgz","fileCount":7,"integrity":"sha512-aBU60OLrjqwIGVtLXLlVBAIzZO0iZCG8FYU7mU66RlZ3SBUsGD0bcVMnzXdWqV6N3L8MjavuGbh3XdSF79rwVQ==","signatures":[{"sig":"MEUCIQDoWCltFon1VwKpFvbYRan43zUFI2LO9ei7lS1WdQ6DYgIgE6LyHQHYM2x8GTF/zezsK9+1HN0YuwKIbQ1MGtbC8RA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.5.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":94833},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"d03ab56bd9baaa9e53e8f87121b56ba07cd09f8a","scripts":{"dev":"tsx src/index.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"luisleo526","email":"luis@4pass.com.tw"},"repository":{"url":"git+https://github.com/fullpass-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Local MCP server: PineScript v6 → C++ via the PineForge codegen API + local Docker backtest runner with parameter sweeps + Binance OHLCV exporter.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.5.1_1778424321030_0.4207778351874525","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.6.0":{"name":"@pineforge/codegen-mcp","version":"0.6.0","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.6.0","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"67f4f0acd04863f86a44ace2bc276bb785e5ed48","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.6.0.tgz","fileCount":7,"integrity":"sha512-qA4RYn4nEPJOr2HrGa+CUuKmj7MNPwzmsJvkTeV50CrOd/x80wgDwhUJ4B4RcnGmYhrFSYX93Q8wYR2ml9P33Q==","signatures":[{"sig":"MEUCIB+BzU4y3ihQV1ixnTeoeQte7R0xg9+lJptT2zUrQR8EAiEAr2tLGk7xARzjOLO/k9ItH0jtCQ90M/31YDrHq+iOmjE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":93576},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"da2b53b6536e90dfa00f6c59170538b176d2340d","scripts":{"dev":"tsx src/index.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.6.0_1780508757319_0.7421987134495587","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.7.0":{"name":"@pineforge/codegen-mcp","version":"0.7.0","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"SEE LICENSE IN LICENSE","_id":"@pineforge/codegen-mcp@0.7.0","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"65e2f4cc6d2ec34a0fa1c43d85adc3d8a074247d","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.7.0.tgz","fileCount":7,"integrity":"sha512-QWp0mDWreKb0a6iM100NSgPBPYEBvm6qoDxTqhbIr8ILxLdk59M57JWlfGRp3/ocxSsBpIzRarfVaDt1Js2A4Q==","signatures":[{"sig":"MEQCIFx24+QUBtd9kS8nIm7rjm81jLS5u3Lm637VcYRZmjrcAiBfNupiO+F5LOXjW9fPWmkDjIuvKPgTxH+fpuW/z3nSxA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":100164},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"c415011de3ea12db2146e4e43bc7823a06cdad06","scripts":{"dev":"tsx src/index.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.7.0_1780513429116_0.41868778584371724","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.7.1":{"name":"@pineforge/codegen-mcp","version":"0.7.1","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.7.1","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"c5977fae7bc88b9f3c38787745becb183d146a98","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.7.1.tgz","fileCount":7,"integrity":"sha512-1aZ+s6MKLs1tqlCyofjCHNiEcWfRVlS3MxZPpeu63D2ptLrxjkb37IcKeBF34r/PllbogPh5Pj6CK2/ytnDOWw==","signatures":[{"sig":"MEQCIDa2I2JjNjF+qINJoZfK4rXHthnWs+5vgaw6PcCxEXBuAiBRNGk/PNZw+//EnNjpWWNUUgwCovsqi3Qlbocty/kL6w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.7.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":93576},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"c86ffbdf481aa0a4d620bdbb7da96a843fce41b3","scripts":{"dev":"tsx src/index.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.7.1_1780513601909_0.6138196251934547","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.8.0":{"name":"@pineforge/codegen-mcp","version":"0.8.0","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.8.0","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"5172eca09a2857bb69ae984946b9b21db1003dfd","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.8.0.tgz","fileCount":9,"integrity":"sha512-hr7+u6rOuNGpOkH3kWQarTej8UQ79Ml6ux3QKul8dN0maWWXrPz54uoNTzEGvlEsc6rTEa4BKsiZeck9Ox/BfA==","signatures":[{"sig":"MEUCIAq0JK1MMwUs/7j70Cxs4QGrCLyTRTH+VqDyv2oY9bbZAiEA/DGwjCTV2vFYt8LHrs+tmMgiR0elWuXeKpyXCnr5xYk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":105609},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"d767166841b2e6b49c8653b5b0ae7a6df9166d91","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.8.0_1780581924027_0.5642638936430038","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.8.1":{"name":"@pineforge/codegen-mcp","version":"0.8.1","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.8.1","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"f2fc4048727e8bc8d69caaa779509b077a4bbef7","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.8.1.tgz","fileCount":9,"integrity":"sha512-GwwJg9tq6kYaTgHCqp5lwGrn5/IpsMyZ48EPBaLkfru7XjZREQMmIEwHwd0+TlZcM12ByWhvcqqe10JznXI2yQ==","signatures":[{"sig":"MEQCIGy+2LJXQ/NDtdCHb4YalWA8LPvf+LMjuxd2o+CV65TVAiA69bOOk4usmnBbOe2wAYqxBywAyZRHu/cXYxH4jKrZ1A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.8.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":105609},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"5c2a598565b2c0360a701efc035e404ba1b7fe79","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.8.1_1780582184540_0.7718755083916997","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.8.2":{"name":"@pineforge/codegen-mcp","version":"0.8.2","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.8.2","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"1eff7113672e5bcc3c2445aeb4a75c41d2ddb519","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.8.2.tgz","fileCount":9,"integrity":"sha512-eOtwSKhGE4dK7CqAmA1spDBlq3lQSirWF35wbNXDeKNeaTPjxHBPmqbqs8M4KLoFeq7Bm52wbl0/Ih18jpv3Sw==","signatures":[{"sig":"MEQCIHsMVgtttpH/xEKw3U9S/ocGCEskeLiMmmEwadeeAeKSAiAOS0up4kOshSj+uyaNbrcUYZ0kGZ2qFCY3Lt2Gqcm49Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.8.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":105609},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"ce30948359243133ec4bfeb6e3076a3ec2cd72a4","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.8.2_1780582417998_0.16857782139884026","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.8.3":{"name":"@pineforge/codegen-mcp","version":"0.8.3","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.8.3","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"9dbde428cda7ce7954b618b208edfd121d76e3f2","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.8.3.tgz","fileCount":13,"integrity":"sha512-k2xrTK/eutYEFCVSguADp0ZLCF6s1yEm7/FJJC+o6NdxuMILGRPcGo49AxKK/6IyYWaZXbCyMGbhbd15VAIH5w==","signatures":[{"sig":"MEYCIQCSR+zDEnJL6wGXEWsl5RVmeKxGaCjyP1FY6kNEZDAlkAIhAN6e0uR2PoJWTXtPBU2W8p6GWZlVGTodOrw4/GSPQ4kz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.8.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":110478},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"48017c9452a29b537342d1e2f488d4f9d92e66d4","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.8.3_1780583904831_0.017671155972533326","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.8.4":{"name":"@pineforge/codegen-mcp","version":"0.8.4","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.8.4","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"23466d0f9425d99050c9426628c0131724833932","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.8.4.tgz","fileCount":13,"integrity":"sha512-Tz9r//ARTRWrblfze5OqLPlbY5GJtBH26c9pcdhUNQ8y6h7YqvyAdmnxVAuVCz9Q7WZrL7ezsfpSaZq0tiHbwA==","signatures":[{"sig":"MEUCIQCAqKZY9eXA8UD5odthvOJKrTDm5HQxWS/rtI5XY/mk1AIgItRaR5zqoX0xa4GghmPE3X6CnFRUCUWCN1dFKlacZz8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.8.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":110478},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"b10a142d84772476afbc114af2f8dd4189efee1c","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.8.4_1780584408091_0.6695941601283792","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.8.5":{"name":"@pineforge/codegen-mcp","version":"0.8.5","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.8.5","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"dfe3a5241720d4be0073a2fab8efc21297e8f80d","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.8.5.tgz","fileCount":13,"integrity":"sha512-UfzSMjGZHUtyz1j5KFsd299FT1GeduV+ICDlYlRScMSbfDHjerynQf8HemL3YqruVBEUnczVbG7mlz1RAVmzAA==","signatures":[{"sig":"MEUCIGiJIa07l14jLJtzTpp8zX6AWe4igXbOSvI+PX6vTmepAiEAwrCgAREW3lxoBYZwzOxC0efQB29+SlXBPGUfIcn6XGU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.8.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":113866},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"57d4ef9b11eadd74de4e6c0b99e4363983a3b932","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.8.5_1780872686680_0.2203696114377438","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.8.6":{"name":"@pineforge/codegen-mcp","version":"0.8.6","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.8.6","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"cd57814df9b4a2240ff26f2ce3ba7f6f501f5d92","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.8.6.tgz","fileCount":13,"integrity":"sha512-L1xeX7UiWOPTVrxOFtF+4GxX3ChN/irAvFC0riH5x+zuf3pHACDjmb4nb0iSnfzfQDssLrkkLd7Z+zJpYiLtaw==","signatures":[{"sig":"MEQCIAXE3rFo2QT0D255z+2NO7cC4lbzU9eAs7hzBVysub/pAiAk7X2YspcRoM087O9zgaOR/IENffD7haRLkqRsnsQhtQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.8.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":116079},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"65869f5766febe34aa02b3fbc44fd1851f4e0847","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.8.6_1780875522364_0.9651459047368682","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.8.7":{"name":"@pineforge/codegen-mcp","version":"0.8.7","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.8.7","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"22138417027eee9b766c826f5c940a51ee7cdd9c","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.8.7.tgz","fileCount":13,"integrity":"sha512-UImc7KJ3HgDgrSQ/mX85EmrAoigNeTzoiNmVuCo4z1THBprmshQlEH/HcTPqX6AF3wZrjw1m3n3gAYfHwj6Avg==","signatures":[{"sig":"MEQCIQCUdcd9rDMsJjQ6uDdnl7KD8dduBsz91N/Vyla0s5U0xAIfTLbrk8vkblV+reoqkD6CXq7ek+R8VpzexLWs3s+bgA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.8.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":116079},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"3f2bc1173962e8ce7a7df2fd6685145dc6280658","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.8.7_1780875771752_0.39872478430082037","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.8.8":{"name":"@pineforge/codegen-mcp","version":"0.8.8","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.8.8","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"60c749336e82d06d078487b29d4225a6b61d0d09","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.8.8.tgz","fileCount":13,"integrity":"sha512-FzEPvAVU07/WWLEkXOC90VPWJ+n83MRqB1APZtGfAxiVqlf4o8Bs5MRjztOUcImSpRWp+wjt+minUi+NUb1DRw==","signatures":[{"sig":"MEQCIGHSFduXi3cPdbCz0XCWERFrmfmXlvdQRmbMIjvQpl1MAiAKUXEcq24i5x50E0765qzouuHLP9dTn3B0EyCTJmbALQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.8.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":124244},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"fe5e597ed756ed34648d40e2c12f0766584c0750","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.8.8_1780878947291_0.5960596252275692","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.9.0":{"name":"@pineforge/codegen-mcp","version":"0.9.0","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.9.0","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"6bb887dc9373652b8573bc5fb3f68cd864da5802","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.9.0.tgz","fileCount":15,"integrity":"sha512-IRBF17pu5zdyIm06gLY5sxWVzpCevrU+CMMMC8rKC+tAPLSgOuIS5a1yVudhZM/L+gkAHqmvAzP9wySqavI4iQ==","signatures":[{"sig":"MEYCIQCxwZOsgpQGy6Fwm2iLSHJXHp7MbG8lJIH3T3eKfCSd5wIhAKXk8Oj+77elGMSvkoHoahTfzC5RfUycPs0xb4gyJJub","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":196855},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"637ed5a4ae3778391e30d68aed9b953a37257f41","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.9.0_1781014295779_0.0652355063439336","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.9.1":{"name":"@pineforge/codegen-mcp","version":"0.9.1","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.9.1","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"785f6bb283f28fcb1adc9361f846277b994f1b89","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.9.1.tgz","fileCount":15,"integrity":"sha512-IFLiUUMqyyQInrDvEVXDjMmZirfNaedQzkMHOLNu7b7iP52eNDbcEnLrBj6IkraxTGs0dWkoeYdC8/T8csbTuQ==","signatures":[{"sig":"MEUCIQDk9YCOO+4QZiefqKzul+GUOk8Oy0fWXrqXfyZMkgEWpQIgJw/PPA67ej4+z7euePX4aQkWXx960DaUV0iUIqmbjaM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.9.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":196855},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"92624452817822e4a2fe9918285cd60c4f7816cf","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.9.1_1781125691127_0.6758823181615139","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.9.2":{"name":"@pineforge/codegen-mcp","version":"0.9.2","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.9.2","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"99aab565b4ebcc2e1a9330b27fdb6ce5cbce29a4","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.9.2.tgz","fileCount":15,"integrity":"sha512-RWM7SkqN8bh7ES2vVllJm+8Njj+TQwBt4ijB3nzHD8Yxd8Tw7koPOeLYsfWjXMqVOdJxkZ4dEeoPw4kpCsilRQ==","signatures":[{"sig":"MEUCIQCwWdM2813BsJlJ8qiBx+H8ckibgGKkN4o4xSc+a4J2GgIgR79Kb3iRS6LBWpAgoJlp/480xTzIjH4Qk026NWykO14=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.9.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":196855},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"813355eb0eed08bb703575f62f4e1be93fba9c24","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.9.2_1781126813045_0.21641938365725166","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.9.3":{"name":"@pineforge/codegen-mcp","version":"0.9.3","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.9.3","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"15c7f9485a0ad85a6950378beb0e575090d2ae8e","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.9.3.tgz","fileCount":15,"integrity":"sha512-YzBnZcg6WXnrEkjw5YOFhaAe2bd09eL0yo7NRSqu1zYhyzqEuXDyUfq/JU+ZqCBarWM7C+MGiOOym2Wz2st0Kw==","signatures":[{"sig":"MEUCIQDRky3jb9AsMavq8Qo1ziT5v48Q/OzkbRvHXZomUBhacQIgVFsJQWyG3JcPcI+VJ+bjZWJJvUTfSA1hGcUIOrSoI9M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.9.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":196855},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"d786d8af3e4ae734dfd3499dd50888897903a578","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.9.3_1781563815348_0.40587733357260025","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.9.4":{"name":"@pineforge/codegen-mcp","version":"0.9.4","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.9.4","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"f5101e4a27d1dd90823f28683e924aee6c6ea37d","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.9.4.tgz","fileCount":15,"integrity":"sha512-mg4GuRukQVL1SSQQwCaHTUbilHN9cw+RxyKxKqc+tqW4EHO8BMpHQ3SGCtKLe4rZdLYCIlub4lSIJL9v7Oa0uw==","signatures":[{"sig":"MEUCIBKk6L/FbX4Lri+ZgQSSbQgSkBhaSI+iridnjbhIdkd7AiEAj2kYyQeLs2aIoRYZdHInfIr0vyLxD03ClN7xUZ0cxBg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.9.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":196855},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"d5a45526c03d5030aac0ebb91774bd082f3d9632","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.9.4_1781564476959_0.6874862485979114","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.9.5":{"name":"@pineforge/codegen-mcp","version":"0.9.5","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.9.5","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"06c150100e2869f8abb16e3bd6f2811716d11f67","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.9.5.tgz","fileCount":15,"integrity":"sha512-dtgBXLX5C3HJO7CNunco5n5wxUHkOYHbib5cs6Ocny+8w0V2NxWSypcligeukI7TMcx9PFFqG+MvgZHgiegU3g==","signatures":[{"sig":"MEUCIQCISvwWjKPAD87lp3a3HyNI1APLy8D3s10ZaHoWit9lvwIgIeK02xlmSywpGk9KWvFTtdjhcyLih40LdJdq51jEOmI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.9.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":196855},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"8216cccd19778a939b7f3cb165a6e37d4dd3b783","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.9.5_1781702380833_0.25355577227764803","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.9.6":{"name":"@pineforge/codegen-mcp","version":"0.9.6","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.9.6","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"f3a2926ca144711ccf1c1de6b133696052c813a0","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.9.6.tgz","fileCount":15,"integrity":"sha512-H1UNKIlB3X8uqYHRVAWViAmkSKHwlJHNd6LRnyg2lVJtOdSXQXYOXViaqtBVsDTDYAwy1voHzCDH33iVgnJK1w==","signatures":[{"sig":"MEQCIHz4K7bbbOrGEz6Sa+cFX1gH0NkMDWOHi4vO52G3qDI7AiA+mbuf40LQrgwsnfIcQTyevlFoyNhVct13LlV8QHdeDA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.9.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":196855},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"323bea7375f0b4e2c8a45f2dc14b36e8ea9424aa","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.9.6_1782000281724_0.7936962180614366","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.9.7":{"name":"@pineforge/codegen-mcp","version":"0.9.7","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.9.7","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"46b5364b4e8955a784398e196c24304f0b84dc61","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.9.7.tgz","fileCount":15,"integrity":"sha512-hLW6GpDHW7GKzyxGHfM5+9WtWX2t2Il3vRi6E1mm9O8QQRm2rewdGgeLZ4xNUspevkjeGaKMK7/neH5xPaYnhg==","signatures":[{"sig":"MEUCIQCaLSodsmhlksY/irjnJSxJiK4z1cwgd2J6czF92D/ItAIgVT4azsUUmvV2BWWpWdIshnRGlkAjjuCEyQM1dA0s3Go=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.9.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":196945},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"c55feb7ad4ccc2fc12940fc3936165582bd8416c","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.9.7_1782001943210_0.2541749811683387","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.9.8":{"name":"@pineforge/codegen-mcp","version":"0.9.8","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.9.8","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"942497d330b5270242745f5ada24510e323d93ec","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.9.8.tgz","fileCount":15,"integrity":"sha512-Ms3NkyLP45wlx4HTCouN9/WzviujKkraS+bJaauLcyUvhK5WxcrsfOZsSp6AZwJstG3zfgjHQIv4es7IXyf6RQ==","signatures":[{"sig":"MEUCIFhye8rZIYgwzd8M+bKEKFQmknWwk1/SvNoaiefAFZ1vAiEAmhn3J6Bs6tn4HSDEy6ncOlQyccfzKB+coN+kU1HUjGc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.9.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":196945},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"07f07565057c21bf07d77c49a1c15fd980461f0a","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.9.8_1782010575123_0.12204232786358427","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.9.9":{"name":"@pineforge/codegen-mcp","version":"0.9.9","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.9.9","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"5444d9272661cb3622ab97825ed3c2caf3a829fd","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.9.9.tgz","fileCount":15,"integrity":"sha512-Fx3c6dWIXYCOxZZQbS9jw7jvW/0Pvo8KIAxBikNll/5xPP5Pwhm9W605Kg9waLAiBKZiiBpBC9+J9p6WvcdF7w==","signatures":[{"sig":"MEYCIQCvKlPI44/bBhDGNAH5CzqlaohgcefFDxl86i10CS4zJQIhAKoOXGNpN8eWa0XKNZ/vds0hSeBwUtsjQCOjbqnz9Z/j","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.9.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":196945},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"591e6a69736a10dbe6d4674d6c0013fa2f4780a2","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.9.9_1782018124899_0.37070745317338805","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.9.10":{"name":"@pineforge/codegen-mcp","version":"0.9.10","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.9.10","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"ad29c754c56b9cd96e581355c91283c1bc0dfa80","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.9.10.tgz","fileCount":15,"integrity":"sha512-SSyLWLmSv/39NlZmgYsivL7GcwDCvi1gt8v7ulzgezQLWizplIiBpIvl9ENesqM9wEwbSKqgmZV8fP01ZH6Kfg==","signatures":[{"sig":"MEQCIHU4QOTSCxwaV8/X8SX0sJGzBpdxs9uR/dcvv/DsEO7sAiB0H9EDrMc4exu9L2wxBZxujxBiqVdT3HTKL4Y616VIiQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.9.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":196947},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"14bda454ce614093dd2f146c1384eaea59125ef8","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.9.10_1782044220993_0.6675584124187866","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.9.11":{"name":"@pineforge/codegen-mcp","version":"0.9.11","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.9.11","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"e0be74b2706cdd0fef0abc59ff7371f72d110895","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.9.11.tgz","fileCount":15,"integrity":"sha512-pNNoJgor8bXeilOz9ifpgU6YoCeiT9DbEp91Qf+ZlJcgfGtJ+YiyAloKaYlmz7V1RAWAK/m/ekjgccCAiEctYg==","signatures":[{"sig":"MEYCIQC9gyGmPubGwCryszrpuZVCg/7rlAPi5FM9bw/7gHNMJwIhAKnOkV8tJLeO1sIzewZZq18Md7J10XrDgbtW14H1bDGf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.9.11","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":196947},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"08807a0218dfe66c182f02f2ec628ee15f826b1c","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.9.11_1782045279020_0.9969703427372256","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.9.12":{"name":"@pineforge/codegen-mcp","version":"0.9.12","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.9.12","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"54c3381767139214a261885add462785daf09322","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.9.12.tgz","fileCount":15,"integrity":"sha512-qOJ9BnnJNJK7RYzUPlBPiCkzDPbbQHI6UT+/EXTcd0ztOQwZ/iefCnID6PFWCYXZdAZdVg4RTkyKHaEqCG5ZBQ==","signatures":[{"sig":"MEQCIAlAWZrrycNAH/ZQc8uRg3NWusXFaUk40m0l6tVMI2rFAiA7+qh4XVJTZhFhuNa9nqn6Uw+gJ+sBT1pSxjNqL1oyJA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.9.12","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":196947},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"9fb5689fcc0241aaeadc4c58a7f77f4d96ead44b","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.22.3","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.9.12_1782045942470_0.06621857882082782","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.9.13":{"name":"@pineforge/codegen-mcp","version":"0.9.13","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.9.13","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"7dc855c0f63a032753e671e48f72837b9de50faf","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.9.13.tgz","fileCount":15,"integrity":"sha512-SXTOrp41hggGvFh7B2rxOsTMFUFTuP2lnBR3Jej3WV66cyr4EOLmGc88YzzW8jNNd2zRsjYgGYvCkyfAB3TjEA==","signatures":[{"sig":"MEUCIQDm7bGjv7zXS4djT9Enqjmmd3uehUE7hkld9yDhmFG0/AIgSTMLUOx6u+mIWbyPWrd4+WYF9LjZJVYUL2UDJV8ckF0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.9.13","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":196947},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"63578eaf69f092a6ca106506f94a569cab0378f8","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.23.0","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.9.13_1782654187833_0.10364761986064885","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.9.14":{"name":"@pineforge/codegen-mcp","version":"0.9.14","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.9.14","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"a0a2f31e44c5e44e89f27e813d3e7ec24470d33d","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.9.14.tgz","fileCount":15,"integrity":"sha512-lGNEW9KI5MVc0HYBwaOP4056Vz06+4H9O7BWdHSuits70vqDJto8THF04i6DqPmXy0x3AqPKkleDtpYYs4oOhQ==","signatures":[{"sig":"MEUCIQCpkPIVa7dt5XmSCot2TRWz78WOJqYE3PChWhlvoY3C7wIgQrGzItwmhz3tfGVZvBIk4gkeCM2H8e9ZEO0T/bAOU/w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.9.14","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":196947},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"4d115a637e43318be97ff9441a33bcda1a067019","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.23.0","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.9.14_1782656238863_0.43934268524814124","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.9.15":{"name":"@pineforge/codegen-mcp","version":"0.9.15","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.9.15","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"38be30047ba93aed4f24a3362fe97f847ff3967b","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.9.15.tgz","fileCount":15,"integrity":"sha512-int0FvwIPkNkKNYDqLObcnAe5iBaswQU3IUm2oOhzi5sCg5YJITM4f+UA0xa1lrK6jzYlWWSrbCAwq+XU9+GlQ==","signatures":[{"sig":"MEUCIGXe8v4fko0eWXeD/OmTfWzmw8i5I4akc+A+apPphOXXAiEAz9uHdKO55rtYDQYhKMvzaVnuVaJsjb4xSdvxNC6FdX8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.9.15","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":196947},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"960ae914cbf26608215fafd490b6d7807d8f03c6","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.9.15_1782967074388_0.9255970061260146","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.9.16":{"name":"@pineforge/codegen-mcp","version":"0.9.16","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.9.16","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"bb35cd6c617aef159bd20116c59ae3694e29a3c9","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.9.16.tgz","fileCount":15,"integrity":"sha512-lPHLwl/QzhQE7HiKMnr7cT/UukMMJYKJHH4QKqQVDiotl6xbTWbT92JTJNVlI7kNx+0yO9v87P6SsdEjlD0PaQ==","signatures":[{"sig":"MEUCIQDtFaB/v4WHbHpMbl+ZCAYoPq5q5KQL7UGjIJAz5wMsDAIgOYytHF8WeHAlvc7d6P8V7M94CG5zjPRpGQ7iyMtc05c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.9.16","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":196947},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"c6d69259d0410e9fd79cd0708cce13bf0ae7bcec","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.9.16_1782967154748_0.7527859756320407","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.9.17":{"name":"@pineforge/codegen-mcp","version":"0.9.17","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.9.17","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"d9103fc66b11a4b003d67c4e97b0c30255512ae5","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.9.17.tgz","fileCount":15,"integrity":"sha512-z6l/sp3tK5rSHwgG187u1uusZXw7VacXwtdylTm5h+yigXNE9tI+QPFSr2CquzIYRAmzq00O+P7etYFx4FbbSA==","signatures":[{"sig":"MEYCIQDZS9hz3eVaKXUvjEJ9msIMl+fQ0Tlfwh7i1Ro51HWsDAIhAMyKccGYSz1mQGi1hbH51Nj7jGUP/Awzz8IaEBBFtNs6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.9.17","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":196947},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"5b880b3e97c1f7da358114326f74bf22a7f2338c","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.9.17_1783690101114_0.5299523955777352","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"0.9.18":{"name":"@pineforge/codegen-mcp","version":"0.9.18","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"license":"MIT","_id":"@pineforge/codegen-mcp@0.9.18","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"bin":{"pineforge-codegen-mcp":"dist/index.js"},"dist":{"shasum":"29824d46ba441a66b127660ce79f2140b147cdfa","tarball":"https://registry.npmjs.org/@pineforge/codegen-mcp/-/codegen-mcp-0.9.18.tgz","fileCount":15,"integrity":"sha512-kQqnOZt+nNor1KcN+WSDveZ7mJFoFIoBKQhEaTYvPs6s6u6814j3t44Of4VEX9DZXx3VmYg9GoXe0NT6edSOZg==","signatures":[{"sig":"MEUCIQCwn/uOMTf2P3SfWbtqL4cBnDgZ+Or4Slw7Xw9NhO/d3wIgR7e1VcQPPpYVi2/pCN8ru2GeceO1sO5kCJ0TdmJo3/M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@pineforge%2fcodegen-mcp@0.9.18","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":196947},"main":"dist/index.js","type":"module","engines":{"node":">=20"},"gitHead":"a2d5c543f480c5b4cdfce04bb28ed9f5d5a9fe6d","scripts":{"dev":"tsx src/index.ts","test":"node --import tsx --test test/**/*.test.ts","build":"tsc","predev":"npm run sync-version","prebuild":"npm run sync-version","sync-version":"node scripts/sync-version.mjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2a04267c-8ba3-4527-bcee-86ef26e3006b"}},"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"_npmVersion":"11.5.0","description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.4.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","typescript":"^5.6.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/codegen-mcp_0.9.18_1783690851085_0.5043462819923323","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."}},"time":{"created":"2026-05-06T20:30:22.271Z","modified":"2026-07-10T20:22:12.451Z","0.1.0":"2026-05-06T20:30:22.520Z","0.1.2":"2026-05-06T20:44:21.023Z","0.3.0":"2026-05-08T17:11:53.707Z","0.4.0":"2026-05-08T23:39:13.540Z","0.5.0":"2026-05-09T21:56:14.096Z","0.5.1":"2026-05-10T14:45:21.173Z","0.6.0":"2026-06-03T17:45:57.511Z","0.7.0":"2026-06-03T19:03:49.264Z","0.7.1":"2026-06-03T19:06:42.082Z","0.8.0":"2026-06-04T14:05:24.239Z","0.8.1":"2026-06-04T14:09:44.694Z","0.8.2":"2026-06-04T14:13:38.130Z","0.8.3":"2026-06-04T14:38:24.978Z","0.8.4":"2026-06-04T14:46:48.229Z","0.8.5":"2026-06-07T22:51:26.830Z","0.8.6":"2026-06-07T23:38:42.509Z","0.8.7":"2026-06-07T23:42:51.906Z","0.8.8":"2026-06-08T00:35:47.410Z","0.9.0":"2026-06-09T14:11:35.922Z","0.9.1":"2026-06-10T21:08:11.281Z","0.9.2":"2026-06-10T21:26:53.197Z","0.9.3":"2026-06-15T22:50:15.482Z","0.9.4":"2026-06-15T23:01:17.095Z","0.9.5":"2026-06-17T13:19:40.961Z","0.9.6":"2026-06-21T00:04:41.862Z","0.9.7":"2026-06-21T00:32:23.368Z","0.9.8":"2026-06-21T02:56:15.281Z","0.9.9":"2026-06-21T05:02:05.047Z","0.9.10":"2026-06-21T12:17:01.145Z","0.9.11":"2026-06-21T12:34:39.155Z","0.9.12":"2026-06-21T12:45:42.593Z","0.9.13":"2026-06-28T13:43:08.049Z","0.9.14":"2026-06-28T14:17:18.997Z","0.9.15":"2026-07-02T04:37:54.568Z","0.9.16":"2026-07-02T04:39:14.870Z","0.9.17":"2026-07-10T13:28:21.265Z","0.9.18":"2026-07-10T13:40:51.219Z"},"bugs":{"url":"https://github.com/pineforge-4pass/pineforge-codegen-mcp/issues"},"license":"MIT","homepage":"https://github.com/pineforge-4pass/pineforge-codegen-mcp","keywords":["pinescript","mcp","model-context-protocol","codegen","backtest","trading"],"repository":{"url":"git+https://github.com/pineforge-4pass/pineforge-codegen-mcp.git","type":"git"},"description":"Local MCP server: PineScript v6 → C++ + Docker backtest runner with parameter sweeps + Binance OHLCV exporter. Fully local (transpiler bundled in the engine image), no API key.","maintainers":[{"name":"luisleo526","email":"luis@4pass.com.tw"}],"readme":"# `@pineforge/codegen-mcp`\n\nSelf-contained stdio MCP server: an AI agent writes PineScript v6, and the\nbundled `pineforge-release` image transpiles it to C++ and backtests it against Binance\nmarket data — all in one container, in-process. **Fully local** — the image\nbundles the [`pineforge-codegen`](https://github.com/pineforge-4pass/pineforge-codegen-oss)\ntranspiler, so Pine → C++ → backtest run with no host Docker daemon. **No API\nkey, nothing leaves the box.**\n\n[![pineforge-codegen-mcp MCP server](https://glama.ai/mcp/servers/pineforge-4pass/pineforge-codegen-mcp/badges/card.svg)](https://glama.ai/mcp/servers/pineforge-4pass/pineforge-codegen-mcp)\n\n![demo](assets/demo.gif)\n\n## Tools\n\n| name                   | runs on              | purpose                                                                  |\n| ---------------------- | -------------------- | ------------------------------------------------------------------------ |\n| `transpile_pine`       | in-process           | Pine v6 → C++ translation unit (transpile-only)                          |\n| `list_engine_params`   | local (no I/O)       | Catalog of every `overrides` + `runtime` knob accepted by the backtests  |\n| `backtest_pine`        | in-process           | Single backtest of a Pine source against an OHLCV CSV                    |\n| `backtest_pine_grid`   | in-process           | Cartesian sweep of `inputs` × `overrides` reusing one compile            |\n| `fetch_binance_ohlcv`  | Binance public API   | Write a backtest-ready CSV from Binance spot or USDT-perp klines         |\n| `binance_symbols`      | Binance public API   | List / filter Binance symbols (5-min in-process cache)                   |\n| `list_coverage_topics` | local (no I/O)       | Every Pine v6 coverage topic with a one-line status + summary            |\n| `check_pine_feature`   | local (no I/O)       | Look up whether a Pine identifier/namespace is supported in PineForge    |\n| `get_coverage_topic`   | local (no I/O)       | Full detail + supported/unsupported feature lists for one coverage topic |\n| `engine_info`          | local (no I/O)       | Report the bundled engine: mode, baked-in flag, version                  |\n\n## Install\n\nRuns as a self-contained container over stdio — engine bundled, in-process, no\nhost Docker daemon, no API key. Mount a working dir at `/work` so the server can\nread/write your CSVs:\n\n```bash\ndocker run --rm -i -v \"$PWD:/work\" ghcr.io/pineforge-4pass/pineforge-codegen-mcp:latest\n```\n\nOnly requirement: Docker, and outbound network for the Binance fetch tools.\nWire it into your MCP client below.\n\n### Hosted (no-install) alternative\n\nWant the fastest try with no Docker and no API key? Paste the Streamable HTTP\nendpoint into any MCP client:\n\n```\nhttps://mcp.pineforge.dev/mcp\n```\n\nTradeoff vs this repo: the hosted server is **metered** (per-IP weekly quota on\n`backtest_pine` + Cloudflare edge rate-limiting) and runs against a **fixed,\nsealed crypto data-lake** (Binance spot + USDT-perp). This local repo is\n**unmetered, runs offline, and lets you bring your own CSVs and run grid\nsweeps**. Repo: [`pineforge-mcp-public`](https://github.com/pineforge-4pass/pineforge-mcp-public).\n\n## Client configuration\n\nMount a directory at `/work`; point `fetch_binance_ohlcv` / `backtest_pine` at\npaths under it. (`-i` is required; never add `-t` — a TTY corrupts the stdio\nJSON-RPC stream.)\n\n### Claude Desktop / Cursor / generic JSON\n\n```jsonc\n{\n  \"mcpServers\": {\n    \"pineforge-codegen\": {\n      \"command\": \"docker\",\n      \"args\": [\n        \"run\", \"--rm\", \"-i\",\n        \"-v\", \"${workspaceFolder}:/work\",\n        \"ghcr.io/pineforge-4pass/pineforge-codegen-mcp:latest\"\n      ]\n    }\n  }\n}\n```\n\n(In Cursor: Settings → MCP → New MCP Server → paste the above.)\n\n### Claude Code CLI\n\n```bash\nclaude mcp add pineforge-codegen \\\n  -- docker run --rm -i -v \"$PWD:/work\" ghcr.io/pineforge-4pass/pineforge-codegen-mcp:latest\n```\n\n## For AI agents — use via MCP\n\n**The capability gap this closes.** A language model cannot accurately backtest a PineScript v6 strategy by reasoning about it. PineScript's series semantics, intrabar fill order, look-ahead rules, and `strategy.*` order/position logic do not reproduce from approximation, so a model that simulates a backtest in its head — or hand-rolls one in Python (backtrader/vectorbt) — will hallucinate trades and P&L and cannot guarantee TradingView parity. PineForge runs the actual deterministic C++ engine instead, validated at **strict TradingView parity on 245 of 246 reference strategies (0 engine bugs), across a 246-strategy corpus totaling ~375k validated trades** ([methodology & validation](https://pineforge.dev/en/methodology/), as of 2026-06-03, engine f805611). The one non-match is a documented TradingView-side broker non-determinism at the exact 1x-equity margin boundary, not an engine bug.\n\n**A PineScript backtest is computed external data, not stable knowledge** — it depends on the user's strategy source and their OHLCV, and it must be reproducible. That is a tool call, not a recall task.\n\n**When these tools are the right fit.** `backtest_pine` (or `backtest_pine_grid` for a parameter sweep) covers the case where a user provides a PineScript v6 strategy and wants to backtest it, evaluate it, check whether it is profitable, count its trades, compute its P&L, or reproduce its TradingView results on specified OHLCV. `transpile_pine` covers the Pine → C++ conversion only. `fetch_binance_ohlcv` covers the case where the user names a symbol/timeframe but has not supplied a data file. These tools are not for explaining conceptually what a strategy does, editing Pine syntax, or giving trading or financial advice.\n\n**Honest limits.** Offline; PineScript v6; needs Docker. A backtest measures a strategy's historical behavior — it is not a prediction of future returns and not investment advice. Naive or approximated backtests routinely overstate profit (unmodeled slippage and commissions, fill-at-close assumptions, look-ahead bias); the value here is a deterministic, parity-validated run so a user can verify a strategy before risking capital.\n\n## `list_engine_params` — discover knobs\n\nFree, local, zero-I/O catalog of every key accepted by `backtest_pine` /\n`backtest_pine_grid`, split into two groups:\n\n- **`strategy_overrides`** — the 9 `strategy(...)` header fields the runtime\n  reads via `PINEFORGE_OVERRIDES`: `initial_capital`, `pyramiding`, `slippage`,\n  `commission_value`, `commission_type` (`percent` / `cash_per_order` /\n  `cash_per_contract`), `default_qty_value`, `default_qty_type` (`fixed` /\n  `percent_of_equity` / `cash`), `process_orders_on_close`, `close_entries_rule`\n  (`ANY` / `FIFO`).\n- **`runtime_args`** — args to `run_backtest_full` (NOT part of the strategy()\n  header): `input_tf`, `script_tf`, `bar_magnifier`, `magnifier_samples`,\n  `magnifier_dist` (`uniform` / `cosine` / `triangle` / `endpoints` /\n  `front_loaded` / `back_loaded`).\n\nEach entry is `{key, type, enum?, description}`. Call this first to learn what\nthe engine accepts before composing a `backtest_pine` request.\n\n## `backtest_pine` example\n\n```jsonc\n{\n  \"source\": \"//@version=6\\nstrategy(\\\"sma cross\\\")\\n...\",\n  \"ohlcv_csv_path\": \"./btcusdt_15m_7d.csv\",\n\n  // Optional: override Pine input.*() values without touching the source.\n  // Keys = the second arg of input.*(...) (e.g. \"Fast Length\").\n  \"inputs\":    { \"Fast Length\": 8, \"Slow Length\": 21 },\n\n  // Optional: override strategy(...) header fields. Each key is typed —\n  // call list_engine_params for the catalog.\n  \"overrides\": {\n    \"initial_capital\":    100000,\n    \"default_qty_type\":   \"percent_of_equity\",\n    \"default_qty_value\":  10,\n    \"commission_type\":    \"percent\",\n    \"commission_value\":   0.04,\n    \"slippage\":           2,\n    \"pyramiding\":         0,\n    \"process_orders_on_close\": true,\n    \"close_entries_rule\": \"ANY\"\n  },\n\n  // Optional: engine runtime args (NOT strategy() header). Use script_tf\n  // to aggregate the input CSV into a coarser strategy timeframe — the\n  // engine REJECTS script_tf finer than input_tf with a structured error\n  // ({\"engine\":\"pineforge\",\"error\":\"...\"}, exit code 1).\n  \"runtime\": {\n    \"input_tf\":          \"15\",\n    \"script_tf\":         \"60\",\n    \"bar_magnifier\":     true,\n    \"magnifier_samples\": 8,\n    \"magnifier_dist\":    \"endpoints\"\n  }\n}\n```\n\n`inputs` is forwarded as the `PINEFORGE_INPUTS` env var to the engine,\n`overrides` as `PINEFORGE_OVERRIDES`, and each `runtime` field as a separate\n`PINEFORGE_INPUT_TF` / `PINEFORGE_SCRIPT_TF` / `PINEFORGE_BAR_MAGNIFIER` /\n`PINEFORGE_MAGNIFIER_SAMPLES` / `PINEFORGE_MAGNIFIER_DIST` env var. Empty /\nunset → defaults from `strategy.pine`, with `input_tf` auto-detected from the\ngap between the first two CSV rows.\n\nReturns the same JSON schema as the standalone `pineforge-release` Docker image:\n\n```jsonc\n{\n  \"engine\": \"pineforge\",\n  \"summary\": { \"total_trades\": 49, \"net_pnl\": -190.85, ... },\n  \"applied_inputs\":    { \"Fast Length\": \"8\", \"Slow Length\": \"21\" },\n  \"applied_overrides\": { \"default_qty_value\": \"5\" },\n  \"trades\": [ ... ],\n  \"elapsed_seconds\": 0.0042,\n  \"_meta\": { \"strategy_cpp_bytes\": 5079, \"image\": \"ghcr.io/.../pineforge-release:latest\" }\n}\n```\n\n## `backtest_pine_grid` — parameter sweep\n\nTranspiles the Pine source **once** (locally, in-container) then runs the same\ncompiled binary against the cartesian product of `inputs` × `overrides`.\nReturns a ranked list plus the top entry under `best`.\n\n```jsonc\n{\n  \"source\": \"//@version=6\\nstrategy(\\\"macd\\\")\\n...\",\n  \"ohlcv_csv_path\": \"./btcusdt_15m_7d.csv\",\n\n  // Each axis is {key: list-of-values}. All combinations are tried.\n  \"inputs\": {\n    \"Fast Length\": [8, 12, 19],\n    \"Slow Length\": [21, 26, 39]\n  },\n  \"overrides\": {\n    \"default_qty_value\": [1, 5],\n    \"commission_value\":  [0.04]\n  },\n\n  // Optional knobs:\n  \"fixed_inputs\":     { \"Source\": \"close\" },   // applied to every combo\n  \"fixed_overrides\":  {},                      // typed strategy() overrides\n  \"runtime\":          { \"input_tf\": \"15\",      // engine runtime args, fixed\n                        \"script_tf\": \"60\" },   // across the sweep\n  \"max_combinations\": 64,                      // hard cap\n  \"concurrency\":      2,                       // parallel docker runs\n  \"include_trades\":   false,                   // omit per-trade lists\n  \"sort_by\":          \"net_pnl\"                // ranking metric\n}\n```\n\n## `fetch_binance_ohlcv` — pull market data\n\nWrites a backtest-ready CSV (header `timestamp,open,high,low,close,volume`,\ntimestamp = open time in UNIX ms UTC) from Binance's public endpoints. No\nauth required. Requests > 1000 bars are paginated\nautomatically. Output path is subject to the same cwd scope as\n`ohlcv_csv_path` (relax with `PINEFORGE_ALLOW_ANYWHERE=1`).\n\n```jsonc\n{\n  \"symbol\":      \"BTCUSDT\",\n  \"interval\":    \"15m\",          // 1s, 1m, 3m, 5m, 15m, 30m, 1h, 2h, 4h, 6h, 8h, 12h, 1d, 3d, 1w, 1M\n  \"market\":      \"spot\",         // or \"usdt_perp\" for USDT-margined perpetual futures\n  \"limit\":       672,            // total bars; > 1000 paginates\n  \"output_path\": \"./btcusdt_15m_7d.csv\"\n  // Optional: \"start_time\" / \"end_time\" in UNIX ms UTC.\n}\n```\n\n## `binance_symbols` — discover / validate symbols\n\nReturns the list of symbols available on the Binance public API for OHLCV\nfetching. Cached 5 min in-process. Use this to validate a symbol before\ncalling `fetch_binance_ohlcv`.\n\n```jsonc\n{\n  \"market\":        \"usdt_perp\",\n  \"query\":         \"BTC\",         // case-insensitive substring match\n  \"quote_asset\":   \"USDT\",\n  \"status\":        \"TRADING\",\n  \"contract_type\": \"PERPETUAL\",   // futures-only filter\n  \"limit\":         50\n}\n```\n\n## Filesystem scope\n\nBy default, OHLCV paths must be inside the current working directory of the MCP\nserver process. Override with:\n\n```bash\nexport PINEFORGE_ALLOW_ANYWHERE=1\n```\n\n## Other env vars\n\n| var | default | purpose |\n|---|---|---|\n| `PINEFORGE_IMAGE`               | `ghcr.io/pineforge-4pass/pineforge-release:latest` | Image (engine runtime + bundled codegen) used for transpile + backtest |\n| `PINEFORGE_ALLOW_ANYWHERE`      | `0` | Allow OHLCV paths outside cwd |\n| `PINEFORGE_DOCKER_TIMEOUT_MS`   | `120000` | Hard kill for `docker pull` / `docker run` |\n","readmeFilename":"README.md"}