MurphyA/hacker-news huggingface dataset:
Show HN: MCP Mesh – one endpoint for all your MCP servers (OSS self-hosted)
by gadr90 | 2025-12-30 16:42:46+00:00
Hey HN! I’m Gui from deco (decocms.com). We’ve been using this tool internally as the foundation for a few customer AI platforms, and today we’re open-sourcing it as MCP Mesh.

MCP is quickly becoming the standard for agentic systems, but… once you go past a couple servers it turns into the same problems for every team:

- M×N config sprawl (every client wired to every server, each with its own JSON + ports + retries)
- Token + tool bloat (dumping tool definitions into every prompt doesn’t scale)
- Credentials + blast radius (tokens scattered across clients, hard to audit, hard to revoke)
- No single place to debug (latency, errors, “what tool did it call, with what params?”)

MCP Mesh sits between MCP clients and MCP servers and collapses that mess into one production endpoint you can actually operate.

What it does:

- One endpoint for Cursor / Claude / VS Code / custom agents → all MCP traffic routes through the mesh
- RBAC + policies + audit trails at the control plane (multi-tenant org/workspace/project scoping)
- Full observability with OpenTelemetry (traces, errors, latency, cost attribution)
- Runtime strategies as “gateways” to deal with tool bloat: Full-context (small toolsets), Smart selection (narrow toolset before execution), Code execution (load tools on-demand / run code in a sandbox)
- Token vault + OAuth support, proxying remote servers without spraying secrets into every client
- MCP Apps + Bindings so apps can target capability contracts and you can swap MCP providers without rewriting everything

A small but surprisingly useful thing: the UI shows every call, input/output, who ran it, and lets you replay calls. This ended up being our “Wireshark for MCP” during real workflows.

It’s open-source + self-hosted (run locally with SQLite; Postgres or Supabase for prod).

You can start with `npx @decocms/mesh` or clone + run with Bun.

We’d love your feedback!

Links below:

Repo: https://github.com/decocms/mesh

Landing: https://www.decocms.com/mcp-mesh

Blog post: https://www.decocms.com/blog/post/mcp-mesh

edit: layout
by egberts1 | 2025-12-30 16:42:48+00:00
So, a clueless Luddite like me went and pulled the temperature reading database since 1903 and did the following:

- search for all United States
- excluded all 14,200 US stations installed since 1973
- average/median them the rest

Trend? Largely flat.

Did I jump the gun?

Were excluded stations like number 80238 (Arcadia, FL) being installed near heat-producing objects (air conditioning condenser unit, nuclear cooling towers, new parking lots) the cause? A valid cause?
Show HN: Cck ClaudeCode file change tracking and auto Claude.md
by takawasi | 2025-12-30 16:43:11+00:00
Every Claude Code session starts fresh. You re-explain your project structure, build commands, and conventions. Every. Single. Time.

I built cck to solve this. Two modes:

*1. CLAUDE.md Generation*
```bash
git clone https://github.com/takawasi/claude-context-keeper && cd claude-context-keeper && pip install .
cck sync
```
Scans your codebase, generates CLAUDE.md. Claude reads it at session start.

*2. Per-Turn Context Injection (the real power)*
```bash
cck setup --cb-style
cck watch --with-history &
cck hook install --use-history
```
This tracks every file change in SQLite and injects recent changes on every turn:
```
[CCK] Recent changes:
15:23:45 ~ src/main.py
15:22:30 + src/utils/helper.py
15:20:12 ~ tests/test_main.py
```

Claude sees exactly what you just edited. No more "I just changed X" explanations.

Built from 300+ Claude Code sessions. Zero AI calls, pure static analysis.

GitHub: https://github.com/takawasi/claude-context-keeper
by rep_lodsb | 2025-12-30 16:43:35+00:00
So every Linux distribution should compile and distribute packages for every single piece of open source software in existence, both the very newest stuff that was only released last week, and also everything from 30+ years ago, no matter how obscure.

Because almost certainly someone out there will want to use it. And they should be able to, because that is the entire point of free software: user freedom.
by theshrike79 | 2025-12-30 16:43:38+00:00
> you never know if it's actually correct

With software you can check this. Have automated tests. Tests pass? Good enough.

You think it's not? Then have better tests.

> Also I really dislike that (for now) using an LLM means selling your soul to some dubious company. Even if you use only the free tier you still need to upload your code and let the LLM do whatever with it. If an LLM is an indispensible part of being a programmer, everybody will be held hostage by the large techfirms (even more...).

LLMs should replace tasks, not jobs.

Use this bubble of practically free LLM time to build tools for yourself. Every single utility and automation you've been thinking of can be built in minutes, permanently.

If you build something that uses a cloud LLM, build it so that you can switch it to use a local model at any point. Even if the bubble bursts one way or another, the local models will still be there.
by SilasX | 2025-12-30 16:43:50+00:00
Probably not, or they don't go by it, since there seems to be a massive problem with people being unable to hear dialogue well enough to not need subtitles.

https://news.ycombinator.com/item?id=37218711

It was a real eye(ear?)-opener to watch Seinfeld on Netflix and suddenly have no problem understanding what they're saying. They solved the problem before, they just ... unsolved it.
by conqrr | 2025-12-30 16:44:13+00:00
TV in the past didn't try to gaslight you into guilt or show all kinds of viral content and instant reactions. Except for news channels, most were slightly addictive at best. Even popular TV shows, you would have to wait for a week for the next episode and you couldn't binge. Screen time today is way different than even 20 years ago.
by cornholio | 2025-12-30 16:44:25+00:00
In truth, I have never seen a company doing such an insane 180 against it's traditional suppliers as Google is doing against the websites populating its search pages which now Google milks as mere training data. Google Search is dead, from the perspective of the websites, and there is less and less incentive to spend effort and money to appear on the first pages.

Google better have a good strategy because this is bound to have 2nd order effects down the road, like, why would I pay money for advertising on a dead internet search engine? If AI is killing organic results, then AI better make money itself, because dead websites don't buy ads.
by fiyec30375 | 2025-12-30 16:44:27+00:00
I thought this was going to be a longer rant about how python needs to... Go away. Which, as a long time python programmer and contributor, and at one time avid proponent of the language, I would entertain the suggestion. I think all of ML being in Python is a collosal mistake that we'll pay for for years.

The main reasons being it is slow, its type system is significantly harder to use than other languages, and it's hard to distribute. The only reason to use it is inertia. Obviously inertia can be sufficient for many reasons, but I would like to see the industry consider python last, and instead consider typescript, go, or rust (depending on use case) as a best practice. Python would be considered deprecated and only used for existing codebases like pytorch. Why would you write a web app in Python? Types are terrible, it's slow. There are way better alternatives.
by bootlooped | 2025-12-30 16:46:03+00:00
I used to feel this way, at least about having the TV do zero processing.

Something that recently changed my viewpoint a little bit was that I was noticing that 24-30 fps content was appearing very choppy. I couldn't figure out why it looked like that. It turns out it's because modern OLED TVs can switch frames very cleanly and rapidly, CRTs or older LCDs were not like that, and their relative slowness in switching frames created a smoothing or blending effect.

Now I'm considering turning back on my TVs motion smoothing. I'm just hoping it doesn't do full-blown frame interpolation that makes everything look like a Mexican soap opera.
by stevanfreeborn | 2025-12-30 16:46:16+00:00
Hello HN,

I built Term Tier because I wanted a way to organize and rank items without leaving my terminal. It is a TUI tier list maker written in Go using the Bubble Tea framework.

Key features:

Vim-like navigation (h/j/k/l)

Drag and drop style reordering within the terminal

Save/Load functionality (persistence) to JSON

I built this to practice state management in Bubble Tea and because I found existing web-based tier list makers too bloated for simple ranking tasks.

The code is open source (GPLv3), and binaries are available in the releases. I would love to hear your feedback on the UX or the code structure!
by yesfitz | 2025-12-30 16:46:22+00:00
I think the library system does a good job of that. For example, here's the WorldCat entry for Thinking in PostScript[1] that shows its 4 editions physically available at 107 libraries. It's also available as an eBook and (since 2024) on Archive.org[2]

Which highlights why Archive.org is so important as an archival and lending library. It's like the idealized version of microfiche. The content of the books have been made so small that not only can they be trivially stored, but beamed to your pocket at any time, almost anywhere in the world.

There are at least ~158 Million books in existence as of 2023[3], and between 2 and 4 million added every year. To ask that each library be an unopinionated store of physical books is too much, and reduces their function to a well-organized warehouse, when the real power of libraries are its librarians. They are research specialists available to anyone and everyone, and well worth a conversation the next time you want to know just about anything.

1: https://search.worldcat.org/title/22114396
2: https://archive.org/details/thinkinginpostsc0000reid
3: https://isbndb.com/blog/how-many-books-are-in-the-world/
by epistasis | 2025-12-30 16:46:38+00:00
It's a show of power that, for the US, is lessening that power.

Most of the US's power is from being a land of opportunity and of high ideals, with military power being secondary backup. As the US lessens opportunity and openly betrays its ideals, that power disappears. The Greenland and Canada threats alone probably require $500B-$1T/year in additional military spending to try to gain through force wha was previously given freely to the US. Add in the huge cost to the US from the tariff idiocy and cutting things like USAID and we could never spend enough militarily to make up for it.

Look at Putin's weakness in Ukraine. He tried to take by force what was not his, and ended up costing himself far more in lost trust than he could ever have gained with the war, and he has gained so little in the war. Putin had a better chance by continuing to try to divide Ukrainian society internally and have the majority of society side with Russia. Much like what is happening in the US right now.... but attack with bombs and the charade disappears. The US is going to discover the same loss of power through its attempts and threat of force.
Ask HN: What do you use to manage your coding projects?
by SunshineTheCat | 2025-12-30 16:47:16+00:00
I feel like I change what "tool" I use to manage/juggle my projects on a monthly basis these days.

That's likely a me problem; getting bored with the tool itself, but I often find myself reverting back to a pen and notepad, paper, notecard, etc.

This usually happens after using an app/software that is needlessly complex and ends up requiring me to manage it rather than it providing any organizational or "productivity" value. (A lot easier to write a task at the top of a notecard rather than assigning 27 "priority" tags, deadlines, location, categories, etc. to the thing)

I know everyone is different in this realm, but very interested in what's been working for you.
by matklad | 2025-12-30 16:47:21+00:00
In

const recv_buffers = try ByteArrayPool.init(gpa, config.connections_max, recv_size);
const send_buffers = try ByteArrayPool.init(gpa, config.connections_max, send_size);

if the second try throws, than the memory allocation created by the first try is leaked. Possible fixes:

A) clean up individual allocations on failure:

const recv_buffers = try ByteArrayPool.init(gpa, config.connections_max, recv_size);
errdefer recv_buffers.deinit(gpa);

const send_buffers = try ByteArrayPool.init(gpa, config.connections_max, send_size);
errdefer send_buffers.deinit(gpa);

B) ask the caller to pass in an arena instead of gpa to do bulk cleanup (types & code stays the same, but naming & contract changes):

const recv_buffers = try ByteArrayPool.init(arena, config.connections_max, recv_size);
const send_buffers = try ByteArrayPool.init(arena, config.connections_max, send_size);

C) declare OOMs to be fatal errors

const recv_buffers = ByteArrayPool.init(gpa, config.connections_max, recv_size) catch |err| oom(err);
const send_buffers = ByteArrayPool.init(gpa, config.connections_max, send_size) catch |err| oom(err);

fn oom(_: error.OutOfMemory) noreturn { @panic("oom"); }

You might also be interesting in https://matklad.github.io/2025/12/23/static-allocation-compi..., it's essentially a complimentary article to what @MatthiasPortzel says here https://news.ycombinator.com/item?id=46423691
by RajT88 | 2025-12-30 16:47:23+00:00
My wife is the same way - the "best by" date is just a date they put for best "freshness". "Sell by" date is similar. It's not about safety.

My wife grew up in a hot and humid climate where things went bad quickly, so this tendency doesn't come from nowhere. Her whole family now lives in the US midwest, and there are similar arguments between her siblings and their spouses.
by f30e3dfed1c9 | 2025-12-30 16:47:48+00:00
"The typeface was developed with banality in mind..."

That's completely wrong. Times New Roman was designed for legibility at small sizes, in narrow columns, on absorbent newsprint, printed at high speed. That is, it was designed explicitly for a very specific purpose, which it fills admirably.

None of that should be taken as any kind of comment on the current brouhaha.
by damnitbuilds | 2025-12-30 16:47:58+00:00
TL;DR:
If don't like the politics of one of the creators of a distro, that makes that distro bad and makes anyone who interacts with that distro also bad.

Response:
These hateful morons were never going to buy a Framework product, they are just searching for witches to burn wherever they can find them.

Fuck off back to the social science building, you demented bigots.
by JeremyNT | 2025-12-30 16:48:32+00:00
> After working with agent-LLMs for some years now, I can confirm that they are completely useless for real programming

This is a bit of no-true-scottsman, no? For you "real programming" is "stuff LLMs are bad at," but a lot of us out in the real world are able to effectively extract code that meets the requirements of our day jobs from tossing natural language descriptions into LLMs.

I actually find the rise of LLM coding depressing and morally problematic (re copyright / ownership / license laundering), and on a personal level I feel a lot of nostalgia for the old ways, but I simply can't levy an "it's useless" argument against this stuff with any seriousness.
by __float | 2025-12-30 16:49:14+00:00
> Yet software developed in C, with all of the foibles of its string routines, has been sold and running for years with trillions of USD is total sales.

This doesn't seem very relevant. The same can be said of countless other bad APIs: see years of bad PHP, tons of memory safety bugs in C, and things that have surely led to significant sums of money lost.

> It's also very easy to get this wrong, I almost wrote `hostname[20]=0;` first time round.

Why would you do this separately every single time, then?

The problem with bad APIs is that even the best programmers will occasionally make a mistake, and you should use interfaces (or...languages!) that prevent it from happening in the first place.

The fact we've gotten as far as we have with C does not mean this is a defensible API.
by sebastianconcpt | 2025-12-30 16:50:17+00:00
I feel more like is forcing to write better engineering not just the code.

The disruption comes from the economics of cognitive labor, the synthetic assistants are making feasible things that before were unbearably cognitively costly so manually we invested all that energy into the code parts.

I've made this to leverage that:

https://github.com/sebastianconcept/ai-squads
by ImPrajyoth | 2025-12-30 16:50:24+00:00
OP here. this is a cursed project lol, but i wanted to see: What happens if you replace the OS scheduler with an LLM?

With Groq speed (Llama 3 @ 800t/s), inference is finally fast enough to be in the system loop.

i built this TUI to monitor my process tree. instead of just showing CPU %, it checks the context (parent process, disk I/O) to decide if a process is compiling code or bloatware. It roasts, throttles, or kills based on that.

Its my experiment in "Intelligent Kernels" how they would be. i used Delta Caching to keep overhead low.
by zingar | 2025-12-30 16:50:54+00:00
AI influencers on YouTube were going wild with demos for about 2 weeks around the middle of this year. It was enough to get me to sign up to the manus wait list but by the time they told me I was in I’d realised how superficial the recommendations from the YouTube crowd were. Also I’d seen a few waves of hype like that and realised how bogus the content was.
by AndrewKemendo | 2025-12-30 16:51:16+00:00
By pillaging and conquering nations that have abundant resources through violence and coercion

Like this is the entire history of capitalism and it’s not even close

the fact that other organizations (USSR, China) do the same thing (horde property and then use consolidated resources to enforce economic heirarchy) but don’t call it capitalism doesn’t make it any less true

They can say “communism” all day but if the functional properties of the system of the Russian Federation or CCP are that Property control is limited to a small group of elites who then use those resources to create a command economy that is purely capitalist philosophy.
Show HN: Brainrot Translator – Convert corporate speak to Gen Alpha and back
by todaycompanies | 2025-12-30 16:51:33+00:00
Hey HN, I built this because the generational gap online is getting wider (and weirder). It’s an LLM-wrapper that translates "Boomer" (normal/corporate English) into "Brainrot" (Gen Alpha slang) and vice versa.
It also has an "Image-to-Rot" feature that uses vision to describe uploaded images in slang. It’s mostly for fun, but actually kind of useful for deciphering what your younger cousins are saying. Would love to hear what you think!
by esbranson | 2025-12-30 16:51:37+00:00
Cool. Having major distributions default to using binfmt_misc to register Wine for PE executables (EXE files) would be nice though. Next steps would obviously be for Windows apps to have their own OS-level identity, confined and permissioned per app using normal Linux security mechanisms, run against a reproducible and pinned Wine runtime with clearly managed state, integrated with the desktop as normal applications (launching, file associations, icons), and produce per-app logs and crash information, so they can be operated and managed like native programs. We have AI now, this should not be rocket science or require major investments. Only viable way Linux is replacing Windows.
by epistasis | 2025-12-30 16:51:38+00:00
Which geopolitical goals was it created for? Certainly not the ones it's being used for right now.

This sort of fallacy, of widening a category such that the initial meaning is lost, and then advancing an argument on that false category, is something I'm seeing a lot more these days in political topics. But I'm not sure I have a name for the fallacy.

It's like people that argue that the US civil wars was "actually" about states' rights and economic differences rather than slavery. It wasn't a war about the concepts of states rights in general, it was about the right of states to do one thing: legalize slavery. It wasn't about the idea of economic differences in general, it was about one specific economic difference: chattel slavery and whether those slaves get paid and have economic freedom.
by naberhausj | 2025-12-30 16:51:39+00:00
Don't have personal experience with these devices, but a passthrough EDID emulator might solve this. I expect it would make the TV unable to recognize the specific device you have plugged in.

Something like this:

https://a.co/d/4pVIpRV

I think you just find one with the same output specs as your PS5.
by AndyNemmity | 2025-12-30 16:51:41+00:00
But the skill includes the scripts to do things.

So in my nano banana image generation skill, it contains a python script that does all the actual work. The skill just knows how to call the python script.

We're attaching tools to the md files. This is at the granular level of how to hammer a nail, how to use a screw driver, etc. And then the agent, the handyman, has his tool box of skills to call depending on what he needs.
by sfn42 | 2025-12-30 16:52:18+00:00
Of course warming is accelerating. Emissions are accelerating and the second and third order effects of ice cap loss, thawing permafrost etc are setting in on top.

We have known about this for a century at this point and it's still being presented like a surprise. It's not a surprise. It's exactly what anyone who's paid attention has been expecting for decades.

Over a decade ago I decided not to have kids because I don't think they will have a world worth inheriting. I've mostly stopped following these kinds of news because it's depressing but it's not at all surprising.

They've been telling us this would happen for my entire life, and everyone has been sticking their heads in the sand thinking it'll be fine for the next few hundred years and looking at me like I'm a lunatic when I tell them it's happening during our lifetimes.
by mmmBacon | 2025-12-30 16:52:43+00:00
Why do you assume I don’t think that? Of course it will happen at some stage. But my comment wasn’t addressing the future, but now. Effectively ChatGPT is buying market share by not having ads; that’s clear. What’s not clear is whether there’s a more innovative model than inserting low-quality, mostly irrelevant ads into the body of the chat they way Google and YouTube do it today. In a Chat agent, advertising also will be an issue for credibility of results. So I think the ad model as we know it will need to change.
by ilamont | 2025-12-30 16:52:56+00:00
The US did this to a slate of Hong Kong administrators in 2020 for implementing China's repressive national security law. It didn't seem to act as a deterrent, as the US did it again to a different group of officials earlier this year.

https://hongkongfp.com/2025/04/01/us-sanctions-6-officials-i...

One of the sanctioned officials reportedly keeps "piles of cash" at her house.

https://news.bitcoin.com/unbanked-hong-kong-leader-carrie-la...
by zahlman | 2025-12-30 16:53:01+00:00
I get the impression that others didn't really understand your / the OP's idea there. You mean that the user should locally configure the machine to ensure that the standardized name points at something that can solve the problem, and then accepts the quirks of that choice, yes?

A lot of people seem to describe a PEP 723 use case where the recipient maybe doesn't even know what Python is (or how to check for a compatible version), but could be instructed to install uv and then copy and run the script. This idea would definitely add friction to that use case. But I think in those cases you really want to package a standalone (using PyInstaller, pex, Briefcase or any of countless other options) anyway.