4 ms·
still don’t know why you need an MCP for this when the model is perfectly well trained to write files and run kubetctl on its own
by dhorthy 1y ago
still don’t know why you need an MCP for this when the model is perfectly well trained to write files and run kubetctl on its own
- CuriouslyC 1y agoClaude is, some models aren't. In some cases the MCPs do get the models to use tools better as well due to the schema, but I doubt kubectl is one of them (using the git mcp in claude code... facepalm)
- dhorthy 1y agoYeah fair enough lol…usually I end up building model-optimized scripts instead of mcp which just flood context window with json and uuids (looking at you, linear) - much better to have Claude write 100 lines of ts to drop a markdown file with the issue and all comments and no noise
- nsonha 1y ago> on its own does it? Did you forget the prompts? MCP is just a protocol for tool/function calling which in turn is part of the prompt, quite an important part actually. Did you think AI works by prompts like "make magic happen" and it... just happens? Anyone who makes dumb arguments like this should not deserve a job in tech.
- antihero 1y agoI’ve literally asked Claude Code to look at and fix an issue on a cluster and it knows to use the cli utils.
- nsonha 1y agoBecause Claude has that as a built-in tool. Try Claude on web and see how useless AI is without tools. And don't even get me start with giving AI your entire system in one tool, it's good for toying around only.
- gexla 1y agoNot sure about the MCP, but I find that using something (RAG or otherwise provide docs) to point the LLM specifically to what you're trying to use works better than just relying on its training data or browsing the internet. An issue I had was that it would use outdated docs, etc.
- __MatrixMan__ 1y agoIf it can run kubectl it can run any other command too. Unless you're running it as a different user and have put a bit of thought into limiting what that user can do, that's likely too much leeway. That's only really relevant I'd you're leaving it unattended though.
- gardnr 1y agoYou can control it with hooks. Most people I know run in yolo mode in a docker container.
- popcorncowboy 1y agoYes... a docker container...
- __MatrixMan__ 1y agoWhat about being in a docker container lets you `kubectl get pod` but prevents you from `kubectl delete deployment`?
- dhorthy 1y agothis is more about the service account than the runtime environment i think. you put your admin service account in docker the agent can still wreak havoc. Docker lets you hide the admin service account on your host FS from the agent.
- __MatrixMan__ 1y agoKeeping the powerful credentials where the agent can't reach them does buy you a bit of safety. But I still think its a bit loose when compared with exposing an API to the model which can only do what you intend for that model to do.
- dhorthy 1y agosure fair enough. I guess i'm mostly being pragmatic here. Plus i'm not convinced that generating "kubectl"...json..."get"...json..."pod"... is easier for most models than "bash"...json..."kubectl get pod"...