23 ms·
MCP: An (Accidentally) Universal Plugin System
- urig 1y agoCentral to this article, the author asks: "What if you just... removed the AI part?" and suggests a world of possibilities if we do. I disagree. MCP is a protocol based on meagre structure and a bulk of human language. Either you use a large-language model to "read" this language, or you get a human to do it. The first is "AI" and the latter is... not very impressive.
- roenxi 1y ago... MCP is almost literally just a JSON schema and a "yo, this stuff exists" for AI. It is great to have it standardised and we're all very thankful not to be using XML but there just isn't that much there. MCP is fulfilling the promise of AI agents being able to do their own thing. None of this is unintended, unforeseen or particularly dependent on the existence of MCP. It is exciting, the fact that AI has this capability captures the dawn of a new era. But the important thing in the picture isn't MCP - it is the power of the models themselves.
- layer8 1y agoXML actually works better with LLMs than JSON.
- zahlman 1y agoWhy?
- layer8 1y agoPresumably because XML tags give better context. You have closing tags, and each array element has its own tags. The tag syntax is different from the value syntax, whereas in JSON both labels and string values use the same syntax. JSON strings are delimited by the same character ("), whereas XML uses two different characters (>…<). Non-string values in JSON have more variations in their delimitation than values in XML.
- spiritplumber 1y agoYes, I'm old. Old enough to remember the MCP when he was just a chess program! He started small, and he'll end small!
- rlboston 1y agoSounds like programming! What happened to low code/no code? I AM old, retired in fact. IT has more "middleware" than the library of congress and mainframes still exist. But I will dig around, because I'm still curious. Carry on. LOL
- vaxman 1y agoErm, hey Mac, he’s quoting “TRON” -and getting downvoted by peeps who don’t remember or are from alien cultures that don’t incorporate it.
- spiritplumber 1y agoMaybe I'm just too old, myself :)
- jadar 1y agoI don’t want to undermine the author’s enthusiasm for the universality of the MCP. But part of me can’t help wondering: isn’t this the idea of APIs in general? Replace MCP with REST and does that really change anything in the article? Or even an Operating System API? POSIX, anyone? Programs? Unix pipes? Yes, MCP is far simpler/universal than any of those things ended up being — but maybe the solution is to build simpler software on good fundamental abstractions rather than rebuilding the abstractions every time we want to do something new.
- bayesianbot 1y agoMy first thought as well. But maybe at least people wanting to plug their apps to their AI forces developers to actually implement the interface, unlike APIs that are mostly unheard of in general population and thus not offered?
- kvdveer 1y agoThe main difference between MCP and Rest is that MCP is self described from the very start. REST may have OpenAPI, but it is a later addon, and we haven't quite standardised on using it. The first step of exposing an MCP is describing it, for Rest is is an optional step that's often omitted.
- light_hue_1 1y agoBut you're describing it in a way that is useless to anything but an LLM. It would have been much better if the description language had been more formalized.
- 0x696C6961 1y agoThe description includes an input and output json schema.
- jcheng 1y agoOnly input, not output. https://modelcontextprotocol.io/specification/2025-03-26/server/tools#tool https://modelcontextprotocol.io/specification/2025-03-26/ser...
- jampa 1y agoI don't want to sound like a skeptic, but I see way more people talking about how awesome MCP is rather than people building cool things with it. Reminds me of blockchain hype. MCP seems like a more "in-between" step until the AI models get better. I imagine in 2 years, instead of using an MCP, we will point to the tool's documentation or OpenAPI, and the AI can ingest the whole context without the middle layer.
- bryancoxwell 1y agoBut this whole post is about using MCP sans AI
- iLoveOncall 1y agoMCP without AI is just APIs. MCP is already a useless layer between AIs and APIs, using it when you don't even have GenAI is simply idiotic. The only redeeming quality of MCP is actually that it has pushed software vendors to expose APIs to users, but just use those directly...
- ricardobeat 1y agoAnd that’s the whole point - it’s APIs we did not have. Now app developers are encouraged to have a public, user friendly, fully functional API made for individual use, instead of locking them behind enterprise contracts and crippling usage limits.
- weird-eye-issue 1y agoMCPs don't change that at all lol
- iLoveOncall 1y agoRight, but we would have had them even if MCP did not exist. The need to access those APIs via LLM-based "agents" would have existed without MCP. At work I built an LLM-based system that invoke tools. We started before MCP existed, and just used APIs (and continue to do so). Its engineering value is nil, it only has marketing value (at best).
- quotemstr 1y agoIt's articles like this that tell you we're close to peak hype. There's nothing revolutionary about a text encoding plus a schema. SOAP could do this 20 years ago.
- AnotherGoodName 1y agoSOAP was worse than horrendous though. I’m sure i’m not the only one hit by ‘well Java SOAP and .net SOAP encode differently so they don’t work together well’ (let alone all the other different implementations each with their own similar differences). Or how about ‘oh it looks like your client is using SOAP 1.2 but the server is 1.1 and they are incompatible’. That was seriously a thing. Good luck talking to many different servers with different versions. SOAP wasn’t just bad. It was essentially only useable between same languages and versions. Which is an interesting issue for a layer whose entire purpose was interoperability.
- rikafurude21 1y agoThis reminded me of that HN comment on the Dropbox announcement post where the user says that theres nothing new about it since FTP and USB-sticks exist. Also, anyone who ever had the misfortune of using SOAP know how horrendeous it is. Truth is, sometimes the "new thing" does it better and wins out. Applications have standardized APIs now because of AI hype. This is a step in the right direction
- data-ottawa 1y agoBeing able to plug MCPs into my desktop Claude app has been awesome. I gave it a K/V store and access to my project folder and it uses the tools very well with minimal guidance. Today there's no way I can talk an average person into getting MCP working without them having to modify some config files hidden away somewhere. I would bet big money that as soon as Claude and ChatGPT add 1 click "app store" experiences everyone will be using them in a week. It is not easy to "just" use an API as a human, plus a lot of APIs force you to deal with tokens and storing+executing code. In some cases it's easier for the LLM to simply fetch or curl basic APIs directly than waste context tokens on the overhead of an MCP tool call (e.g. all these weather tool examples), but with MCP consistency is much better, so depending on the use case MCP vs API both have advantages. Since my comment is already pretty long: LLM+RSS+Fetch is a killer combination for me, and it's almost all off the shelf these days. Once I add an RSS merge tool I think it will be an excellent way to consume content.
- superluserdo 1y agoSeems like we're just currently in the top-right of this comic https://xkcd.com/2044/ https://xkcd.com/2044/
- readthenotes1 1y agoSomeone should write an AI tool that evaluates every top article in hacker News and provides the appropriate XKCD comic as a comment.
- dexterdog 1y agoAnd then a few steps later it's just bots talking to bots. Then what did we read when we're on the loo?
- sgt 1y agoMakes me think of Kafka as well.
- OJFord 1y agoHTTP: A (Deliberately) Universal Plugin System
- phh 1y agoI agree with the article, and I love how the author is (mis-)using MCP. I just want to rephrase what the accident actually is. The accident isn't that somehow we got a protocol to do things we couldn't do before. As other comments point out MCP (the specificaiton), isn't anything new or interesting. No, the accident is that the AI Agent wave made interoperability hype, and vendor lock-in old-fashioned. I don't know how long it'll last, but I sure appreciate it.
- iLoveOncall 1y ago> I don't know how long it'll last I'm just baffled no software vendor has already come up with a subscription to access the API via MCP. I mean obviously paid API access is nothing new, but "paid MCP access for our entreprise users" is surely on the pipeline everywhere, after which the openness will die down.
- Bjartr 1y agoAnd I expect there'll eventually be a way for an AI to pay for an MCP use microtransaction style. Heck, if AIs are at some point given enough autonomy to simply be given a task and a budget, there'll be efforts to try to trick AIs into thinking paying is the best way to get their work done! Ads (and scams) for AIs to fall for!
- iLoveOncall 1y ago> Heck, if AIs are at some point given enough autonomy to simply be given a task and a budget, there'll be efforts to try to trick AIs into thinking paying is the best way to get their work done! We're already there, just take a look at the people spending $500 a day on Claude Code.
- adamesque 1y agoI think for enterprise it’s going to become part of the subscription you’re already paying for, not a new line item. And then prices will simply rise. Optionality will kill adoption, and these things are absolutely things you HAVE to be able to play with to discover the value (because it’s a new and very weird kind of tool that doesn’t work like existing tools)
- furyofantares 1y agoAgents (presumably) increase the demand for APIs and if those APIs as well as already existing APIs get exposed as MCPs then I can see it. It is dependent on agents actually creating new demand for APIs and MCP being successful as a way to expose them.
- taytus 1y agoThe author glosses over some practical realities. Just because something can be repurposed doesn't mean it should be. MCP was designed with specific assumptions about how AI models consume and process information. Using it as a general plugin system might work, but you'd likely hit limitations around things like authentication, real-time communication, or complex data flows that weren't priorities for the AI use case.
- bigmattystyles 1y agoI thought MCPs just ‘figured out’ using docs how to call a program’s API. Won’t it matter that many APIs just suck?
- b0a04gl 1y ago[dead]
- inheritedwisdom 1y agoLowering the bar to integrate and communicate is what has historically allowed technology to reach critical mass and enabled adoption. MCP is an evolution in that respect and shouldn’t be disregarded. We had a non technical team member write an agent to clean up a file share. There are hundreds of programming languages, libraries, and apis that enabled that before MCP but now people don’t even have to think about it. Is it performant no, is it the “best” implementation absolutely not. Did it create enormous value in a novel way that was not possible with the resources, time, technology we had before 100%. And that’s the point.
- citizenpaul 1y ago>non technical team member write an agent to clean up a file share This has to be BS(or you think its true) unless it was like 1000 files. In my entire career I've seen countless crazy file shares that are barely functional chaos. In nearly ever single "cleanup" attempt I've tried to get literally ANYONE from the relevant department to help with little success. That is just for ME to do the work FOR THEM. I just need context from them. I've on countless occasion had to go to senior management to force someone to simply sit with me for an hour to go over the schema they want to try to implement. SO I CAN DO IT FOR THEM and they don't want to do it and literally seemed incapable of doing so when forced to. COUNTLESS Times. This is how I know AI is being shilled HARD. If this is true then I bet you anything in about 3-6 months you guys are going to be recovering this file system from backups. There is absolutely no way it was done correctly and no one has bothered to notice yet. I'll accept your downvote for now. Cleaning up a file share is 50% politics, 20% updating procedures, 20% training and 10% technical. I've seen companies go code red and practically grind to a halt over a months long planned file share change. I've seen them rolled back after months of work. I've seen this fracture the files shares into insane duplication(or more) because despite the fact it was coordinated, senior managers did not as much as inform their department(but attended meetings and signed off on things) and now its too late to go back because some departments converted and some did not. I've seen helpdesk staff go home "sick" because they could not take the volume of calls and abuse from angry staff afterwards. Yes I have trauma on this subject. I will walk out of a job before ever doing a file share reorg again. You'll roll it out in phases? LOL You'll run it in parallel? LOL You'll do some <SUPER SMART> thing? LOL.
- Workaccount2 1y agoI know this is nit-picky and not really relevant to the actual meat of the story, but a toaster (outside of a gag gift or gimmick) cannot run on USB-C since your typical toaster draws ~1kW and USB-C power spec tops out at 240W.
- hnlmorg 1y agoA car lighter also cannot run a pizza oven for the same reason. But you’re right, it does kind of miss the point.
- jcul 1y agoI assumed they were controlling the toaster over usb c or getting some data from it, interfacing with it, rather than actually powering it! > But it worked, and now Rex's toast has HDMI output. > Toaster control protocols? Rex says absolutely.
- vinkelhake 1y agoWhile reading this, the old ARexx (Amiga Rexx) popped into my head. It was a scripting language that in itself wasn't very noteworthy. However, it also made it easy for applications to expose functionality through an ARexx port. And again, offering up an API itself isn't noteworthy either. But it shipped by default in the system and if an application wanted to open itself up for scripting, ARexx was the natural choice. As a result, a ton of applications did have ARexx ports and there was a level of universality that was way ahead of its time. Come to think of it - I don't know what the modern equivalent would be. AppleScript?
- layer8 1y agoPowerShell with COM interfaces.
- billmcneale 1y agoMicrosoft introduced this in Windows in 1993, it's called COM and is still in (heavy) use today. It basically powers all inter communication in Windows.
- vaxman 1y agoNot really. COM/OLE is a different paradigm, their answer to an infamous vaporware called Taligent/OpenDoc that bankrupted many developers. Microsoft was sort of stuck with that security nightmare though
- billmcneale 1y agoCOM is exactly what OP was talking about. Apps can expose endpoints that can be listed, and external processes can call these endpoints.
- int_19h 1y ago"COM" by itself is a rather broad umbrella. What you're describing seems to be OLE Automation. That's the one that has type libraries (which you need for discoverability). And then Active Scripting was supposed to be how you'd script those endpoints...
- iambateman 1y agoWhere do I get started with MCP? I’m all in, but kinda…confused? A REST API makes sense to me…but this is apparently significantly different and more useful. What’s the best way to think about MCP compared to a traditional API? Where do I get started building one? Are there good examples to look at?
- airstrike 1y agoIt's kinda like a REST API in which the schema tags along with the requests. The use case in AI is sort of reversed such that the code runs on your computer
- randomcatuser 1y agoYeah, one way to think about it is like... protocols restrict things, so that people can expect the same stuff. With a traditional API, people can build it any way they want, which means you (the client) need API docs. With MCP, you literally restrict it to 2 things: get the list of tools, and call the tool (using the schema you got above). Thus the key insight is just about: let's add 1 more endpoint that lists the APIs you have, so that robots can find it. Example time: - Build an MCP server (equivalent of "intro to flask 101"): https://developers.cloudflare.com/agents/guides/remote-mcp-server/ https://developers.cloudflare.com/agents/guides/remote-mcp-s... - Now you can add it to Claude Desktop/Cursor and see what it does - That's as far as i got lol
- stefan_ 1y agoI think I'm living in a parallel universe. You can tell an LLM in a million ways what "tools" it can "call". Anthropic & co standardized a shitty variant so they have an uniform way of letting others play in their sandbox, until they invariably decide which of these things make sense and then usurp them in a desperate way out of the commodity rat race to the bottom.
- ashwinsundar 1y agoStart by reading the documentation - https://modelcontextprotocol.io/introduction https://modelcontextprotocol.io/introduction Then use FastMCP to write an MCP server in Python - https://github.com/jlowin/fastmcp https://github.com/jlowin/fastmcp Finally, hook it up to an LLM client. It’s dead simple to do in Claude Code, create an .mcp.json file and define the server’s startup command.
- croes 1y agoUniversal but insecure
- gabriel_export 1y agoEasy, just add an S to the end (for secure).
- moron4hire 1y agoThis isn't a snide comment, I am legitimately asking. I don't understand the difference between MCP and REST. I know there are differences because I've used it a little. I mean, like, on an existential level. Why isn't it just REST? What parts do MCP give us that REST doesn't?
- gunalx 1y agoI cannot really answer, but it seems you can just wrap mcp in a rest wrapper, as thqt is how open web ui seems to integrate mcp into its tooling..
- moron4hire 1y agoAnthropic's example of creating an MCP server is just wrapping MCP around a REST weather forecasting service. Maybe it's just that agentic LLMs have created a lot of interest in being interoperable, whereas efforts like Open API just didn't have any carrot to warrant the stick other than "wouldn't it be nice".
- kimjune01 1y agomcp forces a standard documentation, whereas documentation is optional for rest
- neoden 1y agoSo much scepticism in the comments. I spent last week implementing an MCP server and I must say that "well-designed" is probably an overstatement. One of the principles behind MCP is that "an MCP server should be very easy to implement". I don't know, maybe it's a skill issue but it's not that easy at all. But what is important imo, is that so many eyes are looking in one direction right now. That means, it has good chances to have all the problems to be solved very quickly. And second, often it's so hard to gather a critical mass of attention around something to create an ecosystem but this is happening right now. I wish all the participants patience and luck)
- mattmanser 1y agoWe've done it before, it hasn't worked before and it's only a matter of years if not months before apps starting locking down the endpoints so ONLY chatgpt/claude/etc. servers can use them. Interoperability means user portability. And no tech bro firm wants user portability, they want lock in and monopoly.
- klabb3 1y ago> One of the principles behind MCP is that "an MCP server should be very easy to implement". I’m not familiar with the details but I would imagine that it’s more like: ”An MCP server which re-exposes an existing public/semi-public API should be easy to implement, with as few changes as possible to the original endpoint” At least that’s the only way I can imagine getting traction.
- deleted 1y ago[deleted]
- newtwilly 1y agoIt's pretty easy if you just use the MCP Python library. You just put an annotation on a function and there's your tool. I was able to do it and it works great without me knowing anything about MCP. Maybe it's a different story if you actually need to know the protocol and implement more for yourself
- neoden 1y ago
- shalev123 1y agoOh boy, if only our personal AI assistants could be as reliable as a good old-fashioned pizza run by the CEO. The irony is delicious - we're moving towards universal plugins not because of some grand vision, but because everyone's desperate to make sure their AI doesn't go on an energy-saving nap mid-task. It's almost poetic how we're now incentivizing interoperability simply because our digital buddies have to eat (or rather, drink) to stay awake. Who would've thought that the quest for connectivity would be driven by the humble Watt hour? I guess when it comes down to it, even AI needs a good power-up - and hopefully, this time around, the plugins will stick. But hey, I'll believe it when my assistant doesn't crash while trying to order takeout.
- brap 1y agoI guess I’m finally old enough to become old-man-yelling-at-cloud. I’m convinced that the only reason why MCP became a thing is because newcomers weren’t that familiar with OpenAPI and other existing standards, and because a protocol that is somehow tied to AI (even though it’s not, as this article shows) generates a lot of hype these days. There’s absolutely nothing novel about MCP.
- phreeza 1y agoIs this basically the XML/RSS/semantic web of this tech wave?
- sureglymop 1y agoI've thought of this as well but in reality, aren't MCP servers mostly just clients for pre existing APIs? For example, the Kagi MCP server interacts with the Kagi API. Wouldn't you have a better experience just using that API directly then? On another note, as the number of python interpreters running on your system increases with the number of MCP servers, does anyone think there will be "hosted" offerings that just provide a sort of "bridge" running all your MCP servers?
- gdecaso 1y ago[dead]
- graerg 1y agoThis has been my take, and maybe I'm missing something, but my thinking has been that in an ideal case there's an existing API with an OpenAPI spec you can just wrap with your FastMCP instantiation. This seemed neat, but while I was trying to do authenticated requests and tinkering with it with Goose I ended up just having Goose do curl commands against the existing API routes and I suspect with a sufficiently well documented OpenAPI spec, isn't MCP kinda moot? On the other hand, in the absence of an existing API, you can implement your MCP server to just [do the thing] itself, and maybe that's where the author sees things trending.
- mkagenius 1y agoMy understanding is MCP = original APIs + 1 more API The additional API is /list-tools And all the clients consume the /list-tools first and then rest of the APIs depending on which tool they want to call.
- sureglymop 1y agoYes. But in order to do that you run the MCP server for that API locally. Is it really worth doing that just to have the additional /list-tools, when it is otherwise basically just a bridge/proxy?
- falcor84 1y ago
- Stwerner 1y agohttps://www.dreamsongs.com/RiseOfWorseIsBetter.html https://www.dreamsongs.com/RiseOfWorseIsBetter.html
- deleted 1y ago[deleted]
- mudkipdev 1y agoAnyone else feel like this article was written with ChatGPT
- neuronic 1y agoNot in this particular case. At this point I am starting to wonder if the > Anyone else feel like this article was written with ChatGPT comments are actually written by ChatGPT.
- orliesaurus 1y agoI do, especially the weird thing at the end that says something about MCP bread Here > P.S. If you build an MCP server that makes your computer emit the smell of fresh bread, we need to talk.
- TZubiri 1y ago>What if it's just "a standardized way to connect AI models literally anything to different data sources and tools"? Then you aren't exploring a novel concept, and you are better served learning about historical ways this challenge has been attempted rather than thinking it's the first time. Unix pipes? APIs? POSIX? Json? The list is endless, this is one of the requirements that you can identify as just being a basic one of computers. Another example is anything that is about storing and remembering information. If it's so foundational, there will be tools and protocols to deal with this since the 70s. For the love of god, before diving into the trendy new thing, learn about he boring old things.
- MontagFTB 1y agoBret Victor had an old video where he talked about a world in which computers very organically figured out how to interoperate. MCP feels like the first realization of that idea.
- bovermyer 1y ago> emotional support portable fan I can't be the only person that non-ironically has this.
- orliesaurus 1y agoMe too, I turn it on when things get annoying
- nimish 1y agoInteroperability is, and always was, the hardest part of programming systems together. It's telling that the ai tooling needed sustained non ai effort to expose the interfaces via MCP (or ws-* or rest or an enterprise service bus or xml or CORBA or EJB or...)
- deleted 1y ago[deleted]
- chopete3 1y agoThe real accident is that the prompts became a programming language. I don't think the ML Engineers set out to create a general purpose programming language. A2A (agent 2 agent) mechanism is an another accidental discovery for the interoperability across agent boundaries
- namtab00 1y ago"The hottest new programming language is English" - Karpathy I call bullshit, mainly because any natural language is ambiguous at best, and incomplete at worst.
- rsingel 1y agoFor those who don't read things on Substack http://archive.today/OUymS http://archive.today/OUymS
- gavinray 1y ago> "The author discovers API's/JSON RPC" I'm too young to be posting old_man_yells_at_cloud.jpg comments...
- orliesaurus 1y agoThat's honestly the best tl;Dr in this whole thread
- ummadi 1y agoSo does that mean mcp is good to integrate along with Agentic AI
- Uml2657 1y agoSo does that mean mcp is good to integrate along with Agentic AI
- deleted 1y ago[deleted]
- Uml2013 1y agoSo does that mean it’s good to integrate mcp with agentic ai
- rubatuga 1y agoCan someone link to this supposed toaster with DP-alt mode? That supposedly runs on 240W? (Max PD power)
- afro88 1y agoThe author is missing the bit that the LLM provides: automatically mapping input parameters to things the user wants to do, and responses to the way the UI displays them. Take out the LLM and you're not that far away from existing protocols and standards. It's not plugging your app into any old MCP and it just works (like the USB-C example). But, it is a good point that the hype is getting a lot of apps and services to offer APIs in a universal protocol. That helps.
- belter 1y agoThis all starting to look like autonomous driving. We are nowhere near solving it but everybody acts like it's here.
- tankenmate 1y ago"Want your AI agents to respond like peons from Warcraft 3 when you assign them a task?" -- I'd rather be sailing.
- falcor84 1y agoThat's from Warcraft 2, right? I think in Warcraft 3 it's "I'd rather be flying"
- tankenmate 1y agoYes, it was Warcraft 2; a sly hint that I preferred Warcraft 2 to Warcraft 3.
- alangpierce 1y ago> What if you just... removed the AI part? Maybe I'm not fully understanding the approach, but it seems like if you started relying on third-party MCP servers without the AI layer in the middle, you'd quickly run into backcompat issues. Since MCP servers assume they're being called by an AI, they have the right to make breaking changes to the tools, input schemas, and output formats without notice.
- mkagenius 1y agoYes! Once the first integration is done. It will be static unless someone manually changes it. Maybe the author is okay with that and just want new APIs (for his toaster).
- tomqueue 1y agoExactly my thoughts after reading the article. I am surprised that so few have pointed this out because it entirely invalidates the article’s conclusion for any serious usage. To stay at the USB-C example: it‘s like plugging in a Toaster into a monitor but the Toaster changes its communication protocol every time it gets reconnected.
- neonbrain 1y agoI believe Microsoft's usual "Embrace, Expand, Extinguish" strategy is at work here. For system stability and security reasons, you wouldn't actually want agents to dynamically discover tools without proper governance. Alternatives like PydanitcAI are lost in this steady MCP noise maintained by Microsoft - their "Embrace" phase for MCP, declared during Build 2025 event. Anthropic released this open standard with weak tooling and no governance for the specs, making it easy for Microsoft to dominate. The next step would be Microsoft attempting to make their registry the de facto choice for developers and extending with Windows-specific verbs. Then, by controlling what's considered "secure", they can marginalize competitors.
- tamersalama 1y agoI love the article & the protocol. However, MCP reminded me (somewhat) of microservices & SOA. Are we creating failure vectors nightmare? Or, is it, because of agents, we can gracefully increase reliability?
- vaxman 1y ago> The protocol doesn't judge your life choices. This brings me to something I discovered about MCP (Model Context Protocol) while trying to make my calendar app order takeout. Stay with me here. What was that character in “South Park” that has a hand puppet? (White noise, flatline sound)
- fariszr 1y agoAPM looks interesting, would love to try it out.
- bravesoul2 1y agoThis is well written and fun. Thanks OP! Now I am excited by MCP and would be all in except security. Security is a huge issue. Forget AI and imagine a system where you call APIs and you get both data and JS. And that JS executes at global scope with full access to other APIs. And so do all the other MCP servers. Furthermore the MCP server may go to arbitrary Web pages and download JS. And that JS e.g. from a strangers Github issue or Web search gets executes with full API privileges. <cute animal interject> This isn't something MCP can fix. It is built into the dice rolling nature of LLMs. Turning predictions into privileged executions. And those dice can be loaded by any MCP server. Or imagine surfing the Web using a 2001 browser with no protections against cross domain scripting. Then having a page where you choose what init scripts to run and then it cascades from there. You are logged into your bank at the time! This is what worries me. It's not USBC. It's sort of USBC but where you are ordering all your peripherals from Amazon, Ali express and Temu and the house is made of tinder.
- simulacra8 1y agowhat Anthropic did right with MCP that Google didn't with A2A?
- zzo38computer 1y agoAlthough it has a benefit that it is possible to use like that (e.g. in case you do not have a better system), I think it isn't the best way to do. USB, HTTP, MCP, etc have many problems, despite whatever benefit they may have (including unintentional ones).
- metalrain 1y agoMCP works for small, well defined actions (like examples in the article), but enterprise APIs can have hundreds/thousands of endpoints/schemas for different concepts and variations of operations. For example how would you MCP Google Ads rpc API https://developers.google.com/google-ads/api/reference/rpc/v20/overview https://developers.google.com/google-ads/api/reference/rpc/v... so that LLM and user will understand that? Seems like we can't escape complexity.
- spauldo 1y agoThere's a reason no one uses cigarette lighters in cars anymore. If you actually try to use a cigarette lighter in a modern car, you'll likely melt your dashboard. They don't make them for that purpose anymore.
- thiht 1y agoCan someone help me find an actual explanation of what MCP does? The official MCP documentation completely fails at explaining how it works and what it does. For example the quick start for server developers[1] doesn’t actually explain anything. Sure in the Python examples they add @mcp annotations but WHAT DOES IT DO? I feel like I’m going crazy reading their docs because there’s nothing of substance in there. Let’s assume I want to write an MCP HTTP server without a library, just an HTTP handler, how do I do it? What’s its schema? If I want to call an MCP server from curl what endpoint do I call? Can someone help me find where this is documented? [1]: https://modelcontextprotocol.io/quickstart/server https://modelcontextprotocol.io/quickstart/server
- troupo 1y agoMCP is a server that exposes API endpoints (new vibe term is "tools") MCP clients can query these endpoints (new vibe term is "invoke tools") That is almost the entirety of it. The difference with traditional API endpoints is: they are geared towards LLMs, so LLMs can ask servers to list "tools" and can call these tools at will during execution. It's a vibe-coded spec for an extremely hype-based space.
- thiht 1y agoYes I understand that, but how do I write these endpoints myself without using magic @mcp annotations? After like an hour of searching I finally found the Lifecycle page: https://modelcontextprotocol.io/specification/2025-06-18/basic/lifecycle#initialization https://modelcontextprotocol.io/specification/2025-06-18/bas... and I think it contains the answers I’m looking for. But I feel this should be roughly explained in the first introduction. Agree that most of the pages feel LLM generated, and borderline unreadable
- troupo 1y agoI would use Elixir and ash_ai :)) https://youtu.be/PSrzruaby1M?si=EEEQtQPOSMaLFJcM https://youtu.be/PSrzruaby1M?si=EEEQtQPOSMaLFJcM (Sorry, I know this isn't really a helpful answer)
- 1y ago
- alex-moon 1y agoI always say this whenever anyone asks about whether something is "just hype". One day I will write a blog post on it. Long story short: every piece of new tech is "just hype" until the surrounding ecosystem is built for it. Trains are just hype until you cover the country in railway lines. Telephony is just hype until everyone has a telephone. Email is just hype until everyone has a personal computer (and a reason to sit in front of it every day). Typically, in these kinds of developments there are two key things that need to appear at the same time: 1. Ubiquitous hardware, so e.g. everyone buys a car, or a TV, or a toaster. 2. An "interface" (whether that's a protocol or a UI or an API or a design standard) which is hyper low cognitive load for the user e.g. the flush button on a toilet is probably the best example I've ever seen, but the same can be said for the accelerator + brake + steering wheel combo, or indeed in digital/online it's CSV for me, and you can also say the same about HTTP like this article does. Obviously these two factors feed into each other in a kind of feedback loop. That is basically what the role of "hype" is, to catalyse that loop.
- purerandomness 1y agoThe differentiating factor is when the hype is justified with the implementation of the actual implementation. Then it's "hype", followed by adaptation and commoditization. With "just hype" however, there is no such step. It's hype without the following implementation: NFTs, the "Metaverse", Blockchain and "smart contracts", and of course their ancestors (tulip bulbs, 3D VRML worlds, ...) weren't simply new technology: They were solutions in search of a problem; a Ponzi Scheme where it was clear that there will be no actual implementation following, because it wouldn't make sense.
- alex-moon 1y agoI'm inclined to agree on Blockchain myself. I'd happily be proven wrong, I just think there was no conceivable "ecosystem" that would make it useful.
- DonHopkins 1y ago>P.S. If you build an MCP server that makes your computer emit the smell of fresh bread, we need to talk. https://news.ycombinator.com/item?id=29225777 https://news.ycombinator.com/item?id=29225777 DonHopkins on Nov 15, 2021 | parent | context | favorite | on: Xerox scanners/photocopiers randomly alter numbers... The iSmell developers were hoping to make money the same way, by selling big smell combination pack cartridges that you have to entirely replace after any one of the smells ran out. https://en.wikipedia.org/wiki/ISmell https://en.wikipedia.org/wiki/ISmell >The iSmell Personal Scent Synthesizer developed by DigiScents Inc. is a small device that can be connected to a computer through a Universal serial bus (USB) port and powered using any ordinary electrical outlet. The appearance of the device is similar to that of a shark’s fin, with many holes lining the “fin” to release the various scents. Using a cartridge similar to a printer’s, it can synthesize and even create new smells from certain combinations of other scents. These newly created odors can be used to closely replicate common natural and manmade odors. The cartridges used also need to be swapped every so often once the scents inside are used up. Once partnered with websites and interactive media, the scents can be activated either automatically once a website is opened or manually. However, the product is no longer on the market and never generated substantial sales. Digiscent had plans for the iSmell to have several versions but did not progress past the prototype stage. The company did not last long and filed for bankruptcy a short time after. This Wired Magazine article is a classic Marc Canter interview. I'm surprised they could smell the output of the iSmell USB device over the pungent bouquet from all the joints he was smoking: You've Got Smell! https://web.archive.org/web/20160303130915/https://www.wired.com/1999/11/digiscent/ https://web.archive.org/web/20160303130915/https://www.wired... >DigiScent is here. If this technology takes off, it's gonna launch the next Web revolution. Joel Lloyd Bellenson places a little ceramic bowl in front of me and lifts its lid. "Before we begin," he says, "you need to clear your nasal palate." I peer into the bowl. "Coffee beans," explains Bellenson's partner, Dexster Smith. […] >"You know, I don't think the transition from wood smoke to bananas worked very well." -Marc Canter The failed quest to bring smells to the internet (thehustle.co) https://thehustle.co/digiscents-ismell-fail https://thehustle.co/digiscents-ismell-fail https://news.ycombinator.com/item?id=17476460 https://news.ycombinator.com/item?id=17476460 DigiScent had a booth at the 1999 Game Developers Conference, with scantily dressed young women in skunk costumes. I told them about a game called "The Sims" I had been working on for a long time, and was hoping to finish and release some time soon. They unsuccessfully tried to convince me to make The Sims support the iSmell, and even gave me a copy of the SDK documentation, because they thought it would enrich the player's experience of all those sweaty unwashed sims, blue puddles of piss on the floor, stopped up toilets in the bathroom, and plates of rotting food with flies buzzing around on the dining room table.
- mehulashah 1y agoYup. Makes sense. The biggest value of MCP is that everyone is using MCP. This too is not a new insight.
- orliesaurus 1y agoMCP over stdio MCP over SSE MCP over streamable HTTP Authorization? Hahaha nah just put a token in your config file Actually never mind. Let's add OAuth... Oh wait why are 90% of the server still using studio Oh no Let's deprecate SSE now
- mseepgood 1y agoIs it some kind of CORBA?
- dgrabla 1y agoIf MCP gets used this way I see big trouble when people hardcode stuff and then the provider updates the endpoints. MCP does not have versions as the list-tools is a living document, you are supposed to fetch and read the current version. AI would be totally fine with it because it would be able to reason the change and adapt, but the hardcoded app is going to break badly.
- tomqueue 1y agoExactly my thoughts after reading the article. I am surprised that so few have pointed this out because it entirely invalidates the article’s conclusion for any serious usage. To stay at the USB-C example: it‘s like plugging in a Toaster into a monitor but the Toaster changes its communication protocol every time it gets reconnected.
- cpard 1y agoI wonder how this interoperability hype in the industry, induced by MCPs, will affect companies where the lack of interoperability is almost a moat. I remember when I first interacted with Marketo and I was wondering why people even bother trying to use this tool just to learn that Marketo has the best integration with Salesforce and thus, it’s almost a certainty that as you scale you’ll get to use it. Salesforce in particular, relies a lot on the vendor ecosystem built on a platform that is so painful to inter operate with. I’m very curious to see what effect this will have to them.
- thegreatwhale8 1y agoOfftopic: The article reads very much like it's chatgpt generated. But it's not surprising giving the subject matter. I just dislike how a computer tries to be entertaining and uses this default "voice" when writing anything. I hope there will be some way to personalize the output text, so it will be correct, but not soulless.
- ls-a 1y agoI like how all the jokes/memes about what customers ask for vs. what developers produce, now apply to what developers ask for vs. what AI produces.
- fennecbutt 1y agoOmg I wish people would just shut up about mcp already. It's not magic, it's just smashing tool descriptions into your prompt, and the implementation sucks for various reasons, including there being no standard for tool use tags, nor the mcp spec including a common way of handling function call responses. It's literally just "json into prompt & then it's all you buddy!" batteries NOT included, lmao