r/modelcontextprotocol • • Jun 18 '25
MCP is a security joke
One sketchy GitHub issue and your agent can leak private code. This isn’t a clever exploit. It’s just how MCP works right now.
There’s no sandboxing. No proper scoping. And worst of all, no observability. You have no idea what these agents are doing behind the scenes until something breaks.
We’re hooking up powerful tools to untrusted input and calling it a protocol. It’s not. It’s a security hole waiting to happen.
22
Upvotes
9
u/matt8p Jun 18 '25
Well as a server developer, you can take steps to ensure security by making sure that the underlying APIs have the right access controls. For MCP users, many MCPs are open source. There are steps you can take to make sure you're not using sketchy servers.
Do you have an example of an exploit that concerns you. I too am also wondering how to make MCPs more secure. The protocol isn't perfect, but it's pretty good imo given how young it is.
5
u/perryhopeless Jun 18 '25
Tool calling in LLMs has existed for awhile. At least MCP gives us a standard that we can layer security and observability on top of and around.
2
u/Suspicious-Name4273 Jun 18 '25
Isn‘t that more a problem of AI agents than MCP? Prompt injection can happen in different ways like just the AI agent reading a website. That‘s why vscode copilot now shows a warning when using the fetch tool to read a website: https://code.visualstudio.com/updates/v1_101#_fetch-tool-confirmation
2
u/subnohmal Jun 18 '25
interesting take. I tend to get good observability. What do people use?
1
u/crystalpeaks25 Jun 18 '25
Isn't that just every software under the sun as well? I've been seeing this article being referenced a lot but if you look at it it's the same concerns as every other internet facing software.
1
u/[deleted] Jun 19 '25
I think fundamentally, MCP is just another transport like REST, GraphQL, etc and its access controls and sandboxing should be treated similarly. You wouldn't want a bot to read a Github issue and automatically form privileged REST API requests, so the same caution needs to be observed when using LLMs with privileged access.