Agent Identity Protocol (AIP)

Agent Identity Protocol (AIP)

Provides cryptographic identity and signing capabilities for AI agents, enabling them to create persistent identities, sign actions with private keys, and allow external systems to verify the authenticity and provenance of agent-initiated operations.

Category
Visit Server

README

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 create_identity...

"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 get_identity...

"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 sign_message...

"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.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured