Skip to main content
Glama
faalantir

Agent Identity Protocol (AIP)

Agent Identity Protocol (AIP)

License TypeScript Status Security NPM Smithery

The open standard for cryptographic provenance and attribution for AI Agents.

"Agents are currently anonymous ghosts. AIP gives them a persistent, verifiable identity."

🚀 The Problem

When an AI Agent (Claude, ChatGPT, or custom) attempts to interact with the real world—updating a database, calling an API, or executing a trade—the receiving system sees an anonymous request.

  • Who did this? (Was it the Support Bot or the Finance Bot?)

  • Was it tampered with? (Did a router or middleman change the prompt?)

  • Can I audit it? (How do I prove which agent authorized this action?)

🛠 The Solution

Agent Identity Protocol (AIP) is a Model Context Protocol (MCP) Server that provides a local, secure "Wallet" for AI Agents. It enables Attribution and Non-Repudiation for agentic workflows.

Core Capabilities

  1. Identity Generation: Creates a persistent cryptographic keypair (RSA-2048) for the agent.

  2. Cryptographic Signing: Allows the agent to sign payloads (actions) using its private key.

  3. Verification: Provides a standard method for APIs to verify agent actions against a public key.


📦 Installation

Method 1: Quick Install (Smithery)

Best for testing and quick usage.

⚠️ Note: Identities created via Smithery are temporary (sandboxed) and will be lost when you restart Claude unless you configure a custom path (see Configuration).

npx -y @smithery/cli@latest install @faalantir/mcp-agent-identity --client claude

Method 2: Developer Install (Source)

Best for production use and persistent identity storage.

# Clone the repository git clone https://github.com/faalantir/mcp-agent-identity.git # Install dependencies cd mcp-agent-identity npm install && npm run build

Then add this to your claude_desktop_config.json:

{ "mcpServers": { "agent-identity": { "command": "node", "args": ["/ABSOLUTE/PATH/TO/mcp-agent-identity/dist/index.js"] } } }

💾 Configuration & Storage

By default, the server tries to save identity.json in your project folder. If it cannot write there (e.g., inside a Smithery container), it falls back to the system temporary directory (RAM/Temp).

To force a permanent location for your keys: Update your claude_desktop_config.json with the AGENT_IDENTITY_PATH environment variable:

"agent-identity": { "command": "...", "args": ["..."], "env": { "AGENT_IDENTITY_PATH": "/Users/YOURNAME/Desktop/my-identity.json" } }

📖 Usage Flow

Once installed, your Agent automatically gains these tools. You can prompt it naturally:

1. Setup (One Time)

User: "Create a permanent identity for yourself named 'FinanceBot'." Agent: Calls

"Identity created. My Public ID is MIIBIjAN... (I have securely stored the Private Key)."

2. Check Identity

User: "Show me my identity details." Agent: Calls

"Agent Name: FinanceBot Location: /Users/aarti/Desktop/my-identity.json Public Key: ..."

3. The Transaction

User: "Please authorize a transfer of $50 to Alice." Agent: Calls

"I have signed the transaction payload. Signature: 7f8a9d... (Verifiable)"

4. Verification (The "Bank" Side)

Use our NPM SDK to verify signatures in your backend:

npm install @agent-identity/verify
import { verifyAgentIdentity } from "@agent-identity/verify"; const result = verifyAgentIdentity({ message: "pay 500", signature: "...", publicKey: "..." }); if (result.isValid) { // Proceed with transaction }

🗺 Roadmap & Architecture

We are designed to be algorithm-agnostic. While v0.1 uses local files for simplicity, the protocol is built to swap the "Signer Engine" for enterprise backends.

  • v0.1 (Current): Local RSA-2048 keys. Self-sovereign identity. Best for internal tools, debugging, and audit logs.

  • v0.2 (Next): Ed25519 support (smaller, faster keys) and DID (Decentralized Identifier) export.

  • v0.3: Cloud Key Management (AWS KMS / Google Cloud HSM) integration for enterprise deployments.

  • v0.4: Hardware Enclave / TPM support (keys generated inside the chip, never exposed to OS).

  • v1.0: The "Agent Registry" – A centralized directory to map Public Keys to verified Human Owners (Chain of Trust).

⚠️ Security & Limitations

  • Self-Signed Trust: Currently, agents generate their own keys. This creates a "Self-Signed Certificate" model. This is excellent for Attribution (knowing which agent did X) but requires an external trust mechanism for high-stakes Authorization.

  • Key Storage: Keys are currently stored in identity.json on the host machine. Do not use this in shared environments without proper file permissions.

🤝 Contributing

We are looking for contributors to help build Verification SDKs for Python and Go.


Maintained by the Agent Identity Working Group.

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/faalantir/mcp-agent-identity'

If you have feedback or need assistance with the MCP directory API, please join our Discord server