Live data from Hacker News

MCP doesn't need tools, it needs code

lucumr.pocoo.org

11–20 of 146 posts

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

#11
Agree on that it should be composable. Even better if MCP tooling wouldn't yield huge amounts of output that pollutes the context and the output of one can be input to the next, so indeed that may as well be code.

Would be nice if there was a way for agents to work with MCPs as code, preview or debug the data flowing through them. At the moment it all seems not a mature enough solution and Id rather mount a Python sandbox with API keys to what it needs than connect an MCP tool on my own machine.

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

#12
post #2

First rule of writing about something that can be abbreviated: First have some explanation so people have an idea of what you are talking about. Either type out what the abbreviation stands for, have an explanation or at least a link to some other page that explain what is going on. EDIT: This has since been fixed in link, so it is outdated.

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.

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

#13
post #6
post #3

Earlier quoted context omitted.

> or at least a link to some other page that explain what is going on There is a link to a previous post by the same author (within the first ten words even!), which contains the context you're looking for.

A link to a previous post is not enough, though of course appreciated. But it would be something I click on after I decide if I should spend time on the article or not. I'm not going on goose chases to figure out what the topic is.

this is a wild position. it would have taken you the same amount of time to type your question(s) into your favorite search engine or LLM to learn what the terms mean as you now have spent on this comment thread. the idea that every article should contain all prerequisite knowledge for anybody at any given level of context about any topic is absurd

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

#14
post #2

First rule of writing about something that can be abbreviated: First have some explanation so people have an idea of what you are talking about. Either type out what the abbreviation stands for, have an explanation or at least a link to some other page that explain what is going on. EDIT: This has since been fixed in link, so it is outdated.

MCP is Model Context Protocol, welcome to the land of the living. Make sure you turn the lights off to the cave. :) It’s pretty well known by now what MCP stands for, unless you were referring to something else…

> It’s pretty well known by now what MCP

Minecraft Coder Pack

https://minecraft.fandom.com/wiki/Tutorials/Programs_and_edi...

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

#15
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 look, would love your thoughts

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

#16
Here is why MCP is bad, here i am trying to use MCP to build a simple node cli tool to fetch documentation from Context7: https://pastebin.com/raw/b4itvBu4 And it doesn't work even after 10 attemps.

Fails and i've no idea why, meanwhile python code works without issues but i can't use that one as it conflicts with existing dependencies in aider, see: https://pastebin.com/TNpMRsb9 (working code after 5 failed attempts)

I am never gonna bother with this again, it can be built as a simple rest API, why we even need this ugly protocol?

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

#17
post #2

First rule of writing about something that can be abbreviated: First have some explanation so people have an idea of what you are talking about. Either type out what the abbreviation stands for, have an explanation or at least a link to some other page that explain what is going on. EDIT: This has since been fixed in link, so it is outdated.

MCP is Model Context Protocol, welcome to the land of the living. Make sure you turn the lights off to the cave. :) It’s pretty well known by now what MCP stands for, unless you were referring to something else…

Master Control Program:

https://www.youtube.com/watch?v=atmQjQjoZCQ

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

#18
post #5

Earlier quoted context omitted.

MCP is Model Context Protocol, welcome to the land of the living. Make sure you turn the lights off to the cave. :) It’s pretty well known by now what MCP stands for, unless you were referring to something else…

I, for one, still need to look it up every time I see it mentioned. Not everyone is talking or thinking about LLMs every waking minute.

Are you looking up what the abbreviation stands for, or what an MCP is?

The first case doesn't matter at all if you already know what an MCP actually is.

At least for the task of understanding the article.

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

#19
A few weeks back, I actually started working on an MCP server that is designed to let the LLM generate and execute JavaScript in a safe, sandboxed C# runtime with Jint as the interpreter.

https://github.com/CharlieDigital/runjs

Lets the LLM safely generate and execute whatever code it needs. Bounded by statement count, memory limits, and runtime limits.

It has a built in secrets manager API (so generated code can make use of remote APIs) can, HTTP fetch analogue, JSONPath for JSON handling, and Polly for HTTP request resiliency.

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

#20
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 you want your “agent”[1] to have exactly some subset of tools, similar to a line worker or specialist.

However it’s not so great when you’re using the LLM as a companion/pair programmer for some task, where you want its output to be truly unbounded.

[0]https://modelcontextprotocol.io/docs/getting-started/intro

[1]For these cases you probably shouldn’t use MCP, but instead define tools explicitly within one context.

Post reply on HN