Live data from Hacker News

MCP doesn't need tools, it needs code

lucumr.pocoo.org

141–146 of 146 posts

Re: MCP doesn't need tools, it needs code

#141

I agree MCP has these flaws, idk why we need MCP servers when LLMs can just connect to the existing API endpoint Started on working on an alternative protocol, which lets agents call native endpoints directly (HTTP/CLI/WebSocket) via “manuals” and “providers,” instead of spinning up a bespoke wrapper server: https://github.com/universal-tool-calling-protocol/python-ut... even connects to MCP servers if you take a loo…

Why do we need GraphQL when we have REST APIs?

Both serve a different purpose, but both can achieve the exact same thing.

Re: MCP doesn't need tools, it needs code

#142
post #73

Yeah I quite agree with this take. I don't understand why editors aren't utilizing language servers more for making changes. Crazy to see agents running grep and sed and awk and stuff, all of that should be provided through a very efficient cursor-based interface by the editor itself. And for most languages, they shouldn't even be operating on strings, they should be operating on token streams and ASTs

It's so weird that codex/claude code will manually read through sometimes dozens of files in a project because they have no easy way to ask the editor to "Find Usages". Even though efficient use of CLI tools might make the token burn not too bad, the models will still need to spent extra effort thinking about references in comments, readmes, and method overloading.

Also, the business models are incentivized towards efficient token usage.

Re: MCP doesn't need tools, it needs code

#143

The promise of MCP is that it “connects your models with the world”[0]. In my experience, it’s actually quite the opposite. By giving an LLM a set of tools, 30 in the Playwright case from the article, you’re essentially restricting what it can do. In this sense, MCP is more of a guardrail/sandbox for an LLM, rather than a superpower (you must choose one of these Stripe commands!). This is good for some cases, where y…

Given the security issues that come with MCP [1], I think it's a bad idea to call MCP a "guardrail/sandbox". Also, there are MCP servers that allow running any command in your terminal, including apt install / brew install etc. [1] https://simonwillison.net/2025/Jun/16/the-lethal-trifecta/

Different issues. Let's take a look at a technology that nearly every coding agent needs to use - git or any other version control tool. Sure, agent can use git by running shell scripts, but how do I limit what part of git it can do? For example, IDGAF what commits it makes on a feature branch because it will be squashed and merged later.

With MCP server, I can just expose commit functionality and add it to allow list. The fact that security for remote MCP servers (i.g. not stdin) is a separate issue. The fact that there isn't an easy way to provide credentials to an MCP server is also a separate issue.

Re: MCP doesn't need tools, it needs code

#144
post #23

I’ve posted this before[1], and have searched, but still haven’t found it: I wish someone would write a clear, crisp explanation for why MCP is needed over simply supporting swagger or proto/grpc. [1] https://news.ycombinator.com/item?id=44848489

I'll give you one simple reason, APIs designed for machines are not suitable for LLMs to use consistently.

Llms need a carefully designed interface which exposes tools at the intent level, most APIs are too low level for llms to perform user actions in a single call.

Re: MCP doesn't need tools, it needs code

#145
post #99
post #73

Yeah I quite agree with this take. I don't understand why editors aren't utilizing language servers more for making changes. Crazy to see agents running grep and sed and awk and stuff, all of that should be provided through a very efficient cursor-based interface by the editor itself. And for most languages, they shouldn't even be operating on strings, they should be operating on token streams and ASTs

Strings are a universal interface with no dependencies. You can do anything in any language across any number of files. Any other abstraction heavily restricts what you can accomplish. Also, LLMs aren't trained on ASTs, they're trained on strings -- just like programmers.

generating code that doesn't run is just a waste of electricity.

Re: MCP doesn't need tools, it needs code

#146
post #21
post #12

Earlier quoted context omitted.

Are you referring to MCP? If so, it's fully spelled out in the first sentence of the first paragraph, and links to a more thorough post on the subject. That meets 2 of the 3 criteria you've dictated.

That was not the case when I commented. It has obviously been updated since then.

Assuming that's true, how would it be obvious to someone who hadn't seen the original?
Post reply on HN