{"_id":"go-playground-mcp","_rev":"8-adfe5138adc9cafd9de1d23228398c6d","name":"go-playground-mcp","dist-tags":{"latest":"0.3.1"},"versions":{"0.2.0":{"name":"go-playground-mcp","version":"0.2.0","keywords":["mcp","go","playground","typescript"],"author":{"name":"Samuel Berthe","email":"dev@samuel-berthe.fr"},"license":"MIT","_id":"go-playground-mcp@0.2.0","maintainers":[{"name":"samuelberthe","email":"contact@samuel-berthe.fr"}],"homepage":"https://github.com/samber/go-playground-mcp#readme","bugs":{"url":"https://github.com/samber/go-playground-mcp/issues"},"bin":{"go-playground-mcp":"dist/index.js"},"dist":{"shasum":"09b730db709cb256dbdcbc5b2c2301f57ec4b79e","tarball":"https://registry.npmjs.org/go-playground-mcp/-/go-playground-mcp-0.2.0.tgz","fileCount":48,"integrity":"sha512-G+41DJD9D77KbXJNSGQAKyl7Y1WJ57acb2P20vusa/CvcrCvqnmN0B/n/XBeDgvksNKq1kt3Qt12jLcVRLs6og==","signatures":[{"sig":"MEUCICAPnqnUo1hmrJKFKuzNgtmjKPWy6tQSGpDOzAx1vUgRAiEAnGgjsZJP9y7gWlAISSmHPBhLucCVGIgxy7QK2unTR/w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93963},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"0a8e0caf30c3bb23249ccfef41b8837d1401afa7","scripts":{"dev":"tsx src/index.ts","lint":"eslint src/ --ext .ts,.tsx","test":"tsx src/test-example.ts","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","format":"prettier --write src/","prepare":"npm run build","lint:fix":"eslint src/ --ext .ts,.tsx --fix","type-check":"tsc --noEmit","format:check":"prettier --check src/"},"_npmUser":{"name":"samuelberthe","email":"contact@samuel-berthe.fr"},"repository":{"url":"git+https://github.com/samber/go-playground-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"MCP server for Go Playground integration","directories":{},"_nodeVersion":"23.11.0","dependencies":{"axios":"^1.6.0","@modelcontextprotocol/sdk":"^1.17.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","eslint":"^8.0.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/go-playground-mcp_0.2.0_1755798843015_0.5477661047183977","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"go-playground-mcp","version":"0.2.1","keywords":["mcp","go","playground","typescript"],"author":{"name":"Samuel Berthe","email":"dev@samuel-berthe.fr"},"license":"MIT","_id":"go-playground-mcp@0.2.1","maintainers":[{"name":"samuelberthe","email":"contact@samuel-berthe.fr"}],"homepage":"https://github.com/samber/go-playground-mcp","bugs":{"url":"https://github.com/samber/go-playground-mcp/issues"},"bin":{"go-playground-mcp":"dist/index.js"},"dist":{"shasum":"d8c3f194000f9a830f9c2f23a94aa4eb4faa4f26","tarball":"https://registry.npmjs.org/go-playground-mcp/-/go-playground-mcp-0.2.1.tgz","fileCount":48,"integrity":"sha512-aMOXTTcsrj2fKN52zT64AAZ9koLhrRsMGz00XCZRmfRbAuqjc2FSAA+kCnz2N55VZ52RArYjz94HNSFTOBApyw==","signatures":[{"sig":"MEYCIQCwE05o2DsYMKeKSipJgRj45fPZwJ9t+jGVofcX9wA5bgIhAMaGDNH4edtZs8PGvD7RCzxMsHoVf5fc1edAKcOkXPbT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":94115},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"0a8e0caf30c3bb23249ccfef41b8837d1401afa7","scripts":{"dev":"tsx src/index.ts","lint":"eslint src/ --ext .ts,.tsx","test":"tsx src/test-example.ts","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","format":"prettier --write src/","prepare":"npm run build","lint:fix":"eslint src/ --ext .ts,.tsx --fix","type-check":"tsc --noEmit","format:check":"prettier --check src/"},"_npmUser":{"name":"samuelberthe","email":"contact@samuel-berthe.fr"},"repository":{"url":"git+https://github.com/samber/go-playground-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"MCP server for Go Playground integration","directories":{},"_nodeVersion":"23.11.0","dependencies":{"axios":"^1.6.0","@modelcontextprotocol/sdk":"^1.17.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","eslint":"^8.0.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/go-playground-mcp_0.2.1_1755798864237_0.24184118842317082","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"go-playground-mcp","version":"0.3.0","keywords":["mcp","go","playground","typescript"],"author":{"name":"Samuel Berthe","email":"dev@samuel-berthe.fr"},"license":"MIT","_id":"go-playground-mcp@0.3.0","maintainers":[{"name":"samuelberthe","email":"contact@samuel-berthe.fr"}],"homepage":"https://github.com/samber/go-playground-mcp","bugs":{"url":"https://github.com/samber/go-playground-mcp/issues"},"bin":{"go-playground-mcp":"dist/index.js"},"dist":{"shasum":"721203a94b8ecf864027e407b342a36bce0f2efb","tarball":"https://registry.npmjs.org/go-playground-mcp/-/go-playground-mcp-0.3.0.tgz","fileCount":49,"integrity":"sha512-yirSMtBGJX9XQjVfUeXkoV3fz9dH61EEn56ksC5kvhmGJmgLjp+BMpUdY4vtuZ449b1Uzn9U0zwZslV3cQWaMg==","signatures":[{"sig":"MEUCIQC7x8P/XpMeJjrrC0lirJWPK4xjxXvIkC7xQrTRmWtwIgIgScknpIQcTUFIPdkZPKCWreH7UrWd/g1O1wV6QrGsGxE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":95247},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","gitHead":"6a260499ed77e8e5dada8ed657a69626d216ea71","scripts":{"dev":"tsx src/index.ts","lint":"eslint src/ --ext .ts,.tsx","test":"tsx src/test-example.ts","build":"tsc","clean":"rm -rf dist","start":"node dist/index.js","format":"prettier --write src/","prepare":"npm run build","lint:fix":"eslint src/ --ext .ts,.tsx --fix","type-check":"tsc --noEmit","format:check":"prettier --check src/"},"_npmUser":{"name":"samuelberthe","email":"contact@samuel-berthe.fr"},"repository":{"url":"git+https://github.com/samber/go-playground-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"MCP server for Go Playground integration","directories":{},"_nodeVersion":"23.11.0","dependencies":{"axios":"^1.6.0","@modelcontextprotocol/sdk":"^1.17.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","eslint":"^8.0.0","prettier":"^3.0.0","typescript":"^5.0.0","@types/node":"^20.0.0","@typescript-eslint/parser":"^6.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/go-playground-mcp_0.3.0_1759860621998_0.38142019641125","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"go-playground-mcp","version":"0.3.1","description":"MCP server for Go Playground integration","main":"./dist/index.js","bin":{"go-playground-mcp":"dist/index.js"},"type":"module","repository":{"type":"git","url":"git+https://github.com/samber/go-playground-mcp.git"},"homepage":"https://github.com/samber/go-playground-mcp","bugs":{"url":"https://github.com/samber/go-playground-mcp/issues"},"scripts":{"build":"tsc","start":"node dist/index.js","dev":"tsx src/index.ts","clean":"rm -rf dist","test":"tsx src/test-example.ts","lint":"eslint src/ --ext .ts,.tsx","lint:fix":"eslint src/ --ext .ts,.tsx --fix","type-check":"tsc --noEmit","format":"prettier --write src/","format:check":"prettier --check src/","prepare":"npm run build"},"keywords":["mcp","go","playground","typescript"],"author":{"name":"Samuel Berthe","email":"dev@samuel-berthe.fr"},"license":"MIT","dependencies":{"@modelcontextprotocol/sdk":"^1.17.3","axios":"^1.6.0"},"devDependencies":{"@types/node":"^20.0.0","typescript":"^5.0.0","tsx":"^4.0.0","@typescript-eslint/eslint-plugin":"^6.0.0","@typescript-eslint/parser":"^6.0.0","eslint":"^8.0.0","prettier":"^3.0.0"},"_id":"go-playground-mcp@0.3.1","gitHead":"3cdfdd8907865a1a977f03af326948f0be51dcf2","types":"./dist/index.d.ts","_nodeVersion":"23.11.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-iya1VgNYqCwtvQvaCHoNLxWAh8LHLfAsPzvNgicqFXWVWC/TX5oh9XXFvl9yHduV6R+lCPw++mzIE2AF4UDh/A==","shasum":"ad6ed42648e2341aa32361e30a59b5f223e78747","tarball":"https://registry.npmjs.org/go-playground-mcp/-/go-playground-mcp-0.3.1.tgz","fileCount":49,"unpackedSize":123966,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCAUIS/1YMzZ363vAR7ShA77duqHQOnWUV/CpGAYTr52gIgM4LIVaJ6J9Cbg4OctnE66VpPso8CLOk/YANahpXNsOQ="}]},"_npmUser":{"name":"samuelberthe","email":"contact@samuel-berthe.fr"},"directories":{},"maintainers":[{"name":"samuelberthe","email":"contact@samuel-berthe.fr"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/go-playground-mcp_0.3.1_1759865541277_0.9433791934811233"},"_hasShrinkwrap":false}},"time":{"created":"2025-08-21T17:54:03.014Z","modified":"2025-10-07T19:32:21.687Z","0.1.0":"2025-08-20T17:08:00.281Z","0.1.1":"2025-08-20T17:28:51.812Z","0.1.2":"2025-08-20T17:29:54.099Z","0.2.0":"2025-08-21T17:54:03.267Z","0.2.1":"2025-08-21T17:54:24.443Z","0.3.0":"2025-10-07T18:10:22.185Z","0.3.1":"2025-10-07T19:32:21.499Z"},"bugs":{"url":"https://github.com/samber/go-playground-mcp/issues"},"author":{"name":"Samuel Berthe","email":"dev@samuel-berthe.fr"},"license":"MIT","homepage":"https://github.com/samber/go-playground-mcp","keywords":["mcp","go","playground","typescript"],"repository":{"type":"git","url":"git+https://github.com/samber/go-playground-mcp.git"},"description":"MCP server for Go Playground integration","maintainers":[{"name":"samuelberthe","email":"contact@samuel-berthe.fr"}],"readme":"# Go Playground MCP Server\n\nA Model Context Protocol (MCP) server that integrates with the Go Playground API to execute Go code and generate shareable URLs.\n\n[![tag](https://img.shields.io/github/tag/samber/go-playground-mcp.svg)](https://github.com/samber/go-playground-mcp/releases)\n![Build Status](https://github.com/samber/go-playground-mcp/actions/workflows/test.yml/badge.svg)\n[![Coverage](https://img.shields.io/codecov/c/github/samber/go-playground-mcp)](https://codecov.io/gh/samber/go-playground-mcp)\n[![npm](https://img.shields.io/badge/npm-go--playground--mcp-red?logo=npm)](https://www.npmjs.com/package/go-playground-mcp)\n[![License](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE)\n\n## 🧙 Features\n\n- **Run Go Code**: Execute Go code in the Go Playground sandbox\n- **Share Code**: Generate shareable URLs for Go code snippets\n- **Run and Share**: Execute code and get both results and share URL in one operation\n- **Read from URL**: Read Go code from existing Go Playground URLs\n- **Execute from URL**: Execute Go code from existing Go Playground URLs\n- **MCP Integration**: Full Model Context Protocol compliance\n\n## 🏃‍♂️ Usage\n\nThe server can be used with any MCP-compatible client. The server provides five tools:\n\n1. **`run_go_code`** - Execute Go code and return results\n2. **`share_go_code`** - Share Go code and get a URL\n3. **`run_and_share_go_code`** - Execute code and get both results and share URL\n4. **`read_go_playground_url`** - Read Go code from an existing Go Playground URL\n5. **`execute_go_playground_url`** - Execute Go code from an existing Go Playground URL\n\nAdd this to your MCP client configuration:\n\n```json\n{\n  \"mcpServers\": {\n    \"go-playground\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"go-playground-mcp\"]\n    }\n  }\n}\n```\n\n### Examples\n\n#### Reading code from a Go Playground URL\n\n```typescript\n// Read code from https://go.dev/play/xyz123\nconst result = await mcpClient.callTool(\"read_go_playground_url\", {\n  url: \"https://go.dev/play/xyz123\"\n});\n```\n\n#### Executing code from a Go Playground URL\n\n```typescript\n// Execute code from https://go.dev/play/xyz123\nconst result = await mcpClient.callTool(\"execute_go_playground_url\", {\n  url: \"https://go.dev/play/xyz123\",\n  withVet: true\n});\n```\n\n#### URL Formats Supported\n\nThe new URL-based tools support these Go Playground URL formats:\n\n- `https://go.dev/play/<snippet-id>`\n- `https://go.dev/play/p/<snippet-id>`\n- `https://play.golang.org/p/<snippet-id>`\n\n## 🤝 Contributing\n\n- Ping me on Twitter [@samuelberthe](https://twitter.com/samuelberthe) (DMs, mentions, whatever :))\n- Fork the [project](https://github.com/samber/go-playground-mcp)\n- Fix [open issues](https://github.com/samber/go-playground-mcp/issues) or request new features\n\nDon't hesitate ;)\n\n### Install\n\n1. Clone this repository:\n```bash\ngit clone https://github.com/samber/go-playground-mcp.git\ncd go-playground-mcp\n```\n\n2. Install dependencies:\n```bash\nnpm install\n```\n\n3. Build the project:\n```bash\nnpm run build\n```\n\n### Running the Server\n\n```bash\n# Development mode\nnpm run dev\n\n# Production mode\nnpm run build\nnpm start\n```\n\nAdd this to your MCP client configuration:\n\n```json\n{\n  \"mcpServers\": {\n    \"go-playground\": {\n      \"command\": \"node\",\n      \"args\": [\"dist/index.js\"]\n    }\n  }\n}\n```\n\n## 👤 Contributors\n\n![Contributors](https://contrib.rocks/image?repo=samber/go-playground-mcp)\n\n## 💫 Show your support\n\nGive a ⭐️ if this project helped you!\n\n[![GitHub Sponsors](https://img.shields.io/github/sponsors/samber?style=for-the-badge)](https://github.com/sponsors/samber)\n\n## 📝 License\n\nCopyright © 2025 [Samuel Berthe](https://github.com/samber).\n\nThis project is [MIT](./LICENSE) licensed.\n","readmeFilename":"README.md"}