> The MCP authorization spec is written entirely around user-delegated flows and does not define a machine-to-machine grant at all.
is slightly wrong. There's a blessed extension: https://modelcontextprotocol.io/extensions/auth/oauth-client...
97,828 karma · joined February 24, 2012
Senior Director, CIAM Strategy & Identity Standards at FusionAuth / https://fusionauth.io/
Personal site: https://www.mooreds.com, hn@mooreds.com, +1 720 560 8545 (email preferred).
@mooreds on Twitter. https://bsky.app/profile/mooreds.com on Blue Sky.
Editor/writer for https://letterstoanewdeveloper.com/
Writer at https://ciamweekly.substack.com/
LI: https://linkedin.com/in/mooreds
meet.hn/city/us-Boulder
> The MCP authorization spec is written entirely around user-delegated flows and does not define a machine-to-machine grant at all.
is slightly wrong. There's a blessed extension: https://modelcontextprotocol.io/extensions/auth/oauth-client...
It makes the difference between a tool that is a pleasure to use and one that causes dread.
https://danielmiessler.com/blog/keep-the-robots-out-of-the-g...
At FusionAuth, our mission is to make authentication and authorization simple and secure for every developer building web and mobile applications. We want devs to stop worrying about auth and focus on building something awesome.
There are a lot of companies in the auth space, but we feel like we have something special:
* a relatively unique deployment model (self-host on-prem, run in your cloud or let us operate it for you in ours)
* A well designed API first approach; one customer compared our APIs to petrichor
* a mature product (the code base is nine+ years old and we've found and fixed a lot of the sharp edges around core login use cases; but don't worry, there are plenty more features to add)
* a full featured free-as-in-beer version which makes the sales cycle easier; prospects often come in having prototyped an integration
Our core software is commercial. We open source much of our supporting infrastructure. Technologies and standards that you will work with: modern Java, PostgreSQL, Docker, Kubernetes, MySQL, OAuth, SAML, OIDC.
Learn more, including benefits and salaries, and apply here: https://fusionauth.io/careers/ ( Click/tap the 'View open positions' orange button. )
This terrifies me because there's no way for the services on the other side of the browser to know who is doing what.
How do you constrain the agent?
How do you keep track of what you have done vs the agent?
What am I missing? Am I just behind the times?
Edit, added reference to what terrifies me.
Native American Tribes Came Together to Secure Their Rights to Colorado River Water.
to
Native American Tribes Secured Rights to Colorado River; States Are Stalling
It's from 2015, so no idea if it reflects the current situation. But it digs into some of the same concerns (money, ethics, etc) you raise.
I don't think that is unique to the LLM era. The company I work for has been getting some form of spam vulnerability reports years before LLMs were a thing. Often similar to what you mention about 'bad CSS'.
Maybe the volume has increased a bit, but we've added in a filtering solution and I'm more distant from the reports now, so hard to be sure.
That's a great point. You need to give the manager enough info they can determine if it makes sense to intervene. Sometimes they have enough context that a date for a decision is all they need, other times you need to provide more details.
But let me know when you launch. My email is in my profile.
It seems like it might be something of what you are looking for, since it leverages HTML to tell agents about website functionality.
One issue I see with WebMCP is that agents basically free-ride on user identity and authentication, which is problematic in some scenarios.
By tools, do you mean skills? Or do I misunderstand you?
Thanks for sharing your solution. I clicked around and the information on your site is sparse. The postgresql page[0] doesn't really illustrate how your system works; just says that it does.
Regardless, there's a big difference between a proprietary way to inject skills and MCP, a standardized way to control access and deploy AI compatible logic.
Can you tell me more about this? With just-in-time client registration (DCR or CIMD) it seems like the MCP registration would be pretty simple.
Is it the configuration of the MCP client to know about the MCP server that is the issue?
Does the website need to be able to advertise "here's the corresponding MCP server" so that the "claude hits website" step becomes "claude hits website, discovers MCP server"?
Seems like the main use case is employees of companies. Is there an analogous use case/value for non-centralized users like customers or freemium users?
I'm struggling to think of one, but wonder what I'm missing.
Edit: I see you addressed this here: https://news.ycombinator.com/item?id=48594381
* centralized control
* ease of use for employees
* auditing/compliance
* deployment model
It seems the state of the art for deploying skills is "copy this file and put it in this place" or "check out this repo and add a symlink" or "run this slash command to install the skill". (I'm not aware of any solution that pushes skills out.)These options are simple, but not as easy as this extension makes rollout of a new MCP server to an employee.
I like one of the author's characterizations[0].
> Now employees no longer have to connect MCP servers manually and wait for a series of OAuth and login prompts. Once you log in to Claude from Okta, all the preconfigured MCP servers are already connected! It's not every day you get to improve both usability and security!
An alternative to the proxy you suggest is to generate a new Entra client id (with PKCE enabled) for every MCP client in a developer portal or similar, then have the user configure their client with that client id. Here's the CLI command I found to do this[2], but I bet there's an API too. Here are config instructions for Claude Code[3] and ChatGPT[4].
Client pre-registration is acceptable, but not optimal, for developers, and is a first class citizen in the spec[5]. If your main audience is internal and you can expect them to follow configuration instructions to get access to the MCP server, this approach can work.
But it's definitely not acceptable for widespread, public integrations if your audience is not developers. That is where a lot of the power and opportunity for MCP lies.
0: https://fusionauth.io/docs/extend/examples/controlling-acces...
1: https://github.com/FusionAuth/fusionauth-issues/issues/3230
2: https://learn.microsoft.com/en-us/cli/azure/ad/app?view=azur...
3: https://code.claude.com/docs/en/mcp
4: https://developers.openai.com/api/docs/guides/developer-mode
5: https://modelcontextprotocol.io/specification/2025-11-25/bas...
Seems to weed these folks out.
Basically, two sites that help devs understand JWTs, from two different companies.
No, they are a variety of blueberries.
> Why is it on-topic?
It would have been better to post something about how they were bred, but I just ran across them on that site and wanted to post. They look, as you said, like candy, and I thought that was weird and interesting.
Edit, just found this from 2023: https://fruitgrowersnews.com/article/pink-cosmo-berries-a-hi...
I searched the docs for authentication and mcp (one of the protocols which, among other things, handles some pieces of authentication/authorization) but didn't see any results.
What did I miss?