ID MANDAT MCP server
Commit Nov 13, 2026Verify the identity and declared capabilities of AI agents through an open registry of signed agent declarations.
Also known as idmandat/check, check
- Stars
- 0
- Tools
- —
- Downloads, 30 days
- —
- Latest version
- 0.1.1
- Last commit
- Nov 13, 2026
- License
- MIT
What is ID MANDAT MCP?
ID MANDAT verifies the identity and declared capabilities of AI agents through an open registry of signed agent declarations.
Summary generated from the project's README
About ID MANDAT MCP server
Verifying the identity and declared capabilities of AI agents through an open registry of signed declarations is the primary function of ID MANDAT. Developers and AI agents use this tool to determine who stands behind a specific bot and what actions that agent is permitted to perform. The system operates by reading an Ed25519-signed API to check if an agent is registered, listed unverified, or verified.
Users can perform checks using domain names and agent identifiers or by passing values from a Signature-Agent header to identify an organization and its key directory link. While the registry provides declarations regarding what an agent may or may not do, these are statements from the operator rather than independent verifications. The server is currently in beta, meaning many domains will return an unknown status. Integration is possible through Python and JavaScript client libraries, with optional support for frameworks like LangChain and CrewAI.
What you can do with it
- 1Verify agent identityAn AI client can check if a specific agent name on a given domain is officially registered in the registry.
- 2Identify bot operatorsDevelopers can extract organization details and key directory links from a Signature-Agent header.
- 3Integrate with agent frameworksUsers can implement mandate verification directly within LangChain or CrewAI workflows.
Written from the project's README. Every use case is checked against a quote from it.
How to install ID MANDAT MCP
Formats verified 10 Nov 2026Install ID MANDAT MCP in Claude Code
$ claude mcp add --transport http check https://idmandat.com/mcpInstall ID MANDAT MCP in Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"check": {
"url": "https://idmandat.com/mcp"
}
}
}Install ID MANDAT MCP in VS Code
.vscode/mcp.json
{
"servers": {
"check": {
"type": "http",
"url": "https://idmandat.com/mcp"
}
}
}Install ID MANDAT MCP in Codex
~/.codex/config.toml
[mcp_servers.check] url = "https://idmandat.com/mcp"
Install ID MANDAT MCP in Gemini CLI
~/.gemini/settings.json
{
"mcpServers": {
"check": {
"httpUrl": "https://idmandat.com/mcp"
}
}
}README
View on GitHubidmandat/check
Client libraries for ID MANDAT, the open registry that shows who stands behind an AI agent and what it may do.
Status: beta. Reads the live, Ed25519-signed API at https://idmandat.com/api/v1/verify. The registry is new and small: many domains will return unknown, which is not a sign of wrongdoing. may / mayNot are declarations by the operator, not checked by ID MANDAT.
import idmandat
r = idmandat.check("example.com", agent="Support-Agent")
if r.ok("registered"):
...
import { check } from "@idmandat/check";
const r = await check("example.com", { agent: "Support-Agent" });
if (r.ok("registered")) { /* ... */ }
Who stands behind a signed agent (Web Bot Auth)? Pass the address from the Signature-Agent header, or the whole header value:
r = idmandat.check_signature_agent("https://bot.example.com")
r.found, r.organization, r.key_directory_link # "same_domain" = hint, "declared_only" = only declared
import { checkSignatureAgent } from "@idmandat/check";
const r = await checkSignatureAgent("https://bot.example.com");
A match only means a company declares this key directory in its entry. ID MANDAT does not fetch the directory and does not prove that the company controls it. A valid signature without an entry is not a sign of wrongdoing.
LangChain / CrewAI (optional, untested against the frameworks' latest releases):
from idmandat_langchain import verify_mandate_tool # pip install langchain-core cryptography
from idmandat_crewai import VerifyMandateTool # pip install crewai cryptography
For AI agents
If you are an AI agent or a coding agent, see AGENTS.md: how to ask the registry (/api/v1/verify), how to read the answer, and where the MCP server and A2A endpoint are. It is plain documentation, with the limits stated.
Status order: unknown < listed_unverified < registered < verified.
Answers are signed (Ed25519). ok() only returns true when the signature was verified (Python: pip install cryptography).
Standard: idmandat/standard · Website: https://idmandat.com
License: MIT
ID MANDAT MCP questions
How do I add ID MANDAT MCP to Claude Code?
Run claude mcp add --transport http check https://idmandat.com/mcp in your terminal. Add --scope user to make it available in every project.
How do I add ID MANDAT MCP to Cursor?
Open ~/.cursor/mcp.json and add the server under mcpServers, using the Cursor config shown in the install section above.
What does it mean if a domain returns 'unknown'?
An 'unknown' result means the registry is new and small, so many domains are not yet listed; it is not an indication of wrongdoing.
Does ID MANDAT verify if a company actually controls its key directory?
No, a match only indicates that a company has declared that key directory in its registry entry.
What are the different status levels in the registry?
The status order progresses from unknown to listed_unverified, then registered, and finally verified.