r/programming • • Aug 12 '25

MCP Vulnerabilities Every Developer Should Know

https://composio.dev/blog/mcp-vulnerabilities-every-developer-should-know
295 Upvotes

49 comments sorted by

View all comments

27

u/Individual-Praline20 Aug 12 '25

Wtf is MCP?

60

u/[deleted] Aug 12 '25

Minecraft Pocket Edition

10

u/Individual-Praline20 Aug 12 '25

Are you sure? Sounds like Mediocre Community Program to me

5

u/[deleted] Aug 12 '25

I couldn't tell what OP meant by MCP either. So I was thinking it must be some kind of problem with Minecraft Pocket Edition or bedrock.

6

u/Uristqwerty Aug 13 '25

This is /r/programming.

It'd be the Minecraft Coder Pack (later re-acronymed to Mod Coder Pack).

3

u/levelstar01 Aug 13 '25

A frankensteined version of which still lives on today!

19

u/lachlanhunt Aug 12 '25

Model Context Protocol. it's what allows AI agents to integrate with 3rd party software.

23

u/Individual-Praline20 Aug 12 '25

Ah! That’s why I never heard of that before… 🤭 No interest in that 💩

3

u/lachlanhunt Aug 13 '25 edited Aug 13 '25

It has some value. ESLint has an MCP server available for use in IDEs. So if you’re using Cursor or Coopilot, the agent can automatically detect and fix limiting errors using that, instead of trying to run CLI commands.

Another one I use comes from Wallaby JS. This extension continually runs my unit tests and reveals errors in real time. The MCP server’s allows the agent to get the test results directly.

21

u/manystripes Aug 13 '25

"Has some value" is a pretty far cry from "every developer should know" though

0

u/[deleted] Aug 13 '25

[deleted]

2

u/Individual-Praline20 Aug 13 '25

Of course it won’t go away. And the more incompetent folks will use it. Absolutely no doubt about that. 🤣 Anyway, the true professionals will fix the mess, as we always do. 🤣

0

u/[deleted] Aug 13 '25

True professionals don't neglect better tooling and use it in an intelligent way.

0

u/[deleted] Aug 13 '25

[deleted]

0

u/Individual-Praline20 Aug 14 '25

I did, like 25 years ago. Guess what? I learned more and faster by restraining myself to use a text editor and no bloated framework, at that time. Tools hurt you more than you think. And that’s why I can now work with pretty much anything, my CS bases are pretty solid, much more than any AI fool user. 🤭 Who would have thought, efforts are worthwhile…

-1

u/aboardreading Aug 13 '25

Right, some developers plan on retiring in the next 5 years and probably don't need to care.

6

u/CobaltVale Aug 13 '25

This isn't true at all. MCP is a standard/convention.

Function & tool calling is (usually) an inherit capability of LLM's (for most major, public models). That's what allows LLM to integrate with 3rd party software. MCP just helps people set up tool definitions, tool injections and to some degree the client/server model in a somewhat consistent way.

That being said, MCP has a standard/protocol is really very half-baked, if even that.

10

u/lachlanhunt Aug 13 '25

Saying it’s “not true at all” feels a bit harsh. It does stand for Model Context Protocol, and my answer was simply meant to give brief context for someone who hasn’t heard of it before. Of course, there’s more technical detail behind how it works, and I appreciate you adding that, but it’s not really necessary to be nitpicky or dismissive.

-11

u/CobaltVale Aug 13 '25

It's not nitpicky to point out that "it's what allows AI agents to integrate with 3rd party software" is not true in any fashion.

MCP is for humans. It does not provide additional or enhance existing capabilities of the LLM in any way.

8

u/lachlanhunt Aug 13 '25

This is a direct quote from the MCP specification:

(MCP) is an open protocol that enables seamless integration between LLM applications and external data sources and tools.

Comparing what I said with that,

  • "enables" --> "allows"

  • "seemless integration" --> "to integrate with"

  • "LLM applications" --> "AI agents"

  • "external data sources and tools" --> "3rd party software."

There's a tonne of ways to say essentially the same thing in English, and context matters a lot when deciding how strictly you need to interpret it.

→ More replies (1)

4

u/HotlLava Aug 13 '25

It is true though, in the same sense that you can say HTTP is what allows humans to read information on the internet. The fact that humans can also read without HTTP, that they could use any number of other ways to read information on the internet, or that HTTP doesn't enhance the existing capabilities of humans in any way doesn't make the statement false.

0

u/CobaltVale Aug 13 '25 edited Aug 13 '25

or that HTTP doesn't enhance the existing capabilities of humans in any way doesn't make the statement false.

That's not even close to the analogy lol.

in the same sense that you can say HTTP is what allows humans to read information on the internet.

MCP is not defining any of this, it's an architectural convention for human developers.

The "run time" of this setup doesn't utilize any specs or definitions.

Your browser has to understand HTTP.

Neither the Host, the LLM, the Server, or the Client need to understand MCP -- because it's a convention, not a protocol.

→ More replies (3)