// HACKER NEWS — CYBERSECURITY
Connecting every app to every other app
I've long envied Zapier's extensive connectors library. I wish our app –
Val Town, a vibe coding platform – could one-click connect
to every app.
This is a classic n² problem, connecting every app to every other app.
My dream has always been that there could be some protocol by which any app
could dynamically authenticate and authorize any other app.
The core n² problem remains: every app still needs to register as an OAuth
client for every other app.
At best, registering an OAuth client is 5 minutes of clicking around a developer
portal. But you never know. It can mean filling out some forms, making a demo
video, signing paperwork, or, horror of horrors, getting on a video call. It's a
ad-hoc, manual headache. And we all have to do it for every single app our users
want to connect to.
But there's reason for hope! Anthropic and OpenAI saw this problem coming. They
need a way to connect to all their customers' apps, but they didn't want to get
all those OAuth clients. So they put a little-known OAuth extension
into the spec for MCP:
Dynamic Client Registration (DCR).
DCR automates the client registration problem. Instead of requiring a human to
manually get an OAuth client, your app dynamically provisions one, and then
immediately starts the OAuth flow to this app it had never heard of before.
This is the dream!
At my startup Val Town, we learned about DCR while building
our MCP server / plugin, which
is what enables you to OAuth into Val Town from Claude and ChatGPT.
But the benefits don't end with just Claude and ChatGPT. Any app can
dynamically register an OAuth client with Val Town, and connect to their users'
Val Town accounts.
For example, on top of this primitive, we created
std/oauth, a middleware library that adds
"Login with Val Town" OAuth to your Val Town app in 2 lines of code. This is
literally a whole app: