{"_id":"@couleetech/mcp-k8s-server","name":"@couleetech/mcp-k8s-server","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@couleetech/mcp-k8s-server","version":"0.1.0","description":"MCP Kubernetes server project","scripts":{"prepare":"husky install","build":"tsc","lint":"eslint .","format":"prettier --write .","test":"npx jest","test:config":"npx jest tests/config.test.ts","test:toolRegistry":"npx jest tests/toolRegistry.test.ts","test:authChecker":"npx jest tests/authChecker.test.ts","test:k8sClient":"npx jest tests/k8sClient.test.ts","test:tools.deployments":"npx jest tests/tools/deployments.test.ts","test:tools.pods":"npx jest tests/tools/pods.test.ts","test:tools.services":"npx jest tests/tools/services.test.ts"},"dependencies":{"@kubernetes/client-node":"^1.0.0","dotenv":"^16.4.7","express":"^4.21.2","pino":"^9.6.0"},"devDependencies":{"@types/express":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^22.13.4","@typescript-eslint/eslint-plugin":"^8.24.1","cross-env":"^7.0.3","eslint":"^8.0.0","eslint-config-airbnb-base":"^15.0.0","eslint-config-prettier":"^10.0.1","eslint-plugin-import":"^2.31.0","husky":"^8.0.0","jest":"^29.5.0","prettier":"^2.0.0","ts-jest":"^29.1.0","typescript":"^4.5.0"},"_id":"@couleetech/mcp-k8s-server@0.1.0","gitHead":"89a83db1187fe83a5f4cab475bcfd21761085153","_nodeVersion":"20.18.2","_npmVersion":"11.1.0","dist":{"integrity":"sha512-23UygU+Mgf5KyJG/QaRl7JfYfrRq3tWhA2Cjpj1ezWSxe5FZegnBEmeZsw85uQ1kwT2A/DTt6FBtcpNbR4r5yA==","shasum":"aaca1fd585a5bf4d90fd7f0ce025534b77d21903","tarball":"https://registry.npmjs.org/@couleetech/mcp-k8s-server/-/mcp-k8s-server-0.1.0.tgz","fileCount":39,"unpackedSize":131842,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCICeZ5bJmHYgwMDJXoOR/OO1m2fHJIhRcLPgnGnbvv/8NAiEA569f6Xi3MKpCBeE1RtEU5SBD4jW2FDdtRuZCFToAxN0="}]},"_npmUser":{"name":"tholum","email":"tholum@coulee.tech"},"directories":{},"maintainers":[{"name":"tholum","email":"tholum@coulee.tech"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mcp-k8s-server_0.1.0_1739845852438_0.3234489732047896"},"_hasShrinkwrap":false}},"time":{"created":"2025-02-18T02:30:52.437Z","0.1.0":"2025-02-18T02:30:52.622Z","modified":"2025-02-18T02:30:53.278Z"},"maintainers":[{"name":"tholum","email":"tholum@coulee.tech"}],"description":"MCP Kubernetes server project","readme":"# MCP Kubernetes Server\n\nThis project is an MCP server that integrates with Kubernetes to manage pods, deployments, and services. It is built using TypeScript and Node.js, and follows strict best practices including ESLint, Prettier, and comprehensive unit testing.\n\n## Features\n\n- Manage Kubernetes pods, deployments, and services through a set of tools.\n- Exposes a REST API for tool discovery and usage.\n- Configurable via environment variables for flexible deployment.\n\n## Project Structure\n\nmcp-k8s-server/\n├── src/\n│ ├── clients/ # Kubernetes API clients and auth checker\n│ ├── config/ # Configuration and logging modules\n│ ├── tools/ # Tool implementations for pods, deployments, services\n│ ├── app.ts # Application initializer\n│ └── server.ts # Express server exposing API endpoints\n├── tests/ # Unit tests for modules and tools\n├── .eslintrc.js # ESLint configuration\n├── .prettierrc.json # Prettier configuration\n├── tsconfig.json # TypeScript configuration\n├── .gitlab-ci.yml # GitLab CI/CD pipeline configuration\n├── Dockerfile # Docker configuration for production\n├── docker-compose.yml # Docker Compose configuration for local development\n└── package.json # NPM package configuration\n\n## Environment Variables\n\n- **K8S_SERVER**: URL of your Kubernetes cluster.\n- **K8S_TOKEN**: Authentication token for the Kubernetes API.\n- **DISABLED_TOOLS**: Comma-separated list of tool names to disable (optional).\n- **TOOLSET_PREFIX**: Prefix to add to tool names in the registry (optional).\n- **PORT**: Port for the Express server (default: 3000).\n\n## Setup and Usage\n\n1. Clone the repository.\n2. Install dependencies: `npm install`\n3. Create a `.env` file with the required environment variables.\n4. Build the project: `npm run build`\n5. Run tests: `npm test`\n6. Start the server: `npm start` or `node dist/server.js`\n\nThe server exposes the following endpoints:\n\n- **GET /tools**: Returns the list of available tools.\n- **GET /health**: Health check endpoint.\n\n## Tool Usage\n\nTools are available via the tool registry and can be invoked directly from the API or within the code. They facilitate operations like listing pods, managing deployments, and more.\n\n## Contributing\n\nContributions are welcome! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.\n\n## License\n\nThis project is licensed under the MIT License. See [LICENSE](LICENSE) for details.\n","readmeFilename":"README.md"}