CC Safety Net
A coding agent CLI safety layer that blocks destructive git and filesystem commands and secret file access before execution.
letsauth is an independent lab for agent authorization. It keeps one open dataset of what the agent protocols require and what public servers do, starting with the MCP auth atlas.
SecurityTypeScript · AstroGitHub @letsauthlabOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
An open, vendor-neutral lab for how AI agents are authorized: MCP auth atlas, standards map, delegation explorer and a passive scanner. Measured, not asserted.
Taken from the repository README
Loading the full README.
Read the full README ↗letsauth.eu is an open, vendor-neutral lab for how AI agents are authorized. It covers where MCP, A2A and agent delegation meet OAuth, OpenID Connect and workload identity, with EU law in view.
Open the MCP auth atlas · See the standards map · Step through a delegation chain · Read a scanner report · Get the data
Vendors explain agent authorization through their own product. Conformance testers run against one server, by its owner, pinned to an older revision of the spec. Nobody shows which public MCP servers validate the issuer, bind the audience or still rely on dynamic client registration, for all of them and over time. Nobody draws WIMSE, AAuth, ID-JAG, A2A and the EU acts on one map.
letsauth keeps one open dataset of what the agent protocols require and what real servers do:
| 🗺️ | MCP auth atlas | Which public MCP servers support which features of the MCP Authorization specification: one matrix of servers against requirements, with a page per server, per feature and per revision. Export: data.json. |
| 🕸️ | Agent auth atlas | The specifications, drafts and EU acts behind agent authorization as one map of what builds on, profiles, competes with and replaces what, with maturity and dated revisions per document. Export: data.json. |
| 🔗 | Delegation chain explorer | Scenarios of how authority travels from a person to an agent to an API, step by step, with the decoded token at each hop and toggles for the attacks and misconfigurations that break the chain. Every step cites a specification revision. Export: data.json. |
| 🩻 | Breach anatomy | Published vulnerabilities and incidents in how agents were authorized, each written from its advisory and traced to the control that was missing, the atlas requirements that stand for it, and a replay toggle in the explorer. Export: data.json. |
| 🔍 | Scanner | A passive scanner that reads each listed server's public OAuth metadata every night, checks it against the MCP Authorization specification and opens one pull request of observations. Nothing is graded: the atlas shows each status, and each server page counts them per requirement level and lists the requests behind them; the raw report is at . |
Next on the roadmap: more servers and more feature checks in the atlas, agentic checks for correctness and completeness, and talks built from the observations.
One shared model, many views. Specifications, features, servers, observations and the relations
between standards live as YAML under data/. A Zod schema validates them at build time,
and they change only through reviewed pull requests. The build pre-renders the site from that
data. The scanner is the one backend, and its output comes back into the repository as data. The full picture is in
docs/architecture.md.
You can download everything the site shows, under CC BY 4.0:
curl -s https://letsauth.eu/mcp/data.json | jq '.servers | length'
curl -s https://letsauth.eu/standards/data.json | jq '.relations[0]'
curl -s https://letsauth.eu/explorer/data.json | jq '.scenarios[0].toggles | length'
curl -s https://letsauth.eu/mcp/servers/notion/scan.json | jq '.summary'
Or read the YAML directly: one file per entity under data/, with the schema in
src/schema/ and the model explained in docs/data-model.md.
The most useful contribution is an observation: what a server you know does, with evidence a reviewer can open. Code, specs and relations are welcome too.
CONTRIBUTING.md: how to add data, specs, relations and code, and what a
pull request needs.docs/development.md: local setup, commands, tests and screenshots.docs/architecture.md: the stack, the repository layout and the data
flow..specify/memory/constitution.md: the principles every
change is checked against.Security problems go to the private channels in SECURITY.md, never to a public
issue.
Code is MIT. Data under data/ and the JSON exports are
CC BY 4.0. Jan Brennenstuhl runs the site in
Berlin as Let's Auth Labs. The imprint has the details.
/mcp/servers/<id>/scan.json