Ask in chat.
Verify with Fayda.

Let Claude, Cursor or any MCP agent verify a citizen through Fayda eSignet and get back a simple yes or no, never their personal data.

pip install fayda-mcp

Free to self-host. Sandbox config included. Your signing key never leaves your server.

Three steps to a verified answer.

  1. 01 · Install
    pip install fayda-mcp
  2. 02 · Configure
    fayda-mcp check-config --env-file .env
  3. 03 · Verify
    fayda-mcp run --env-file .env
agent session · fayda-mcpSimulated example
  1. →start_verification(purpose="kyc", checks=["identity_verified", "age_over_18"], …)
  2. ←request_id "vr_8c21f0" · authorization_url eSignet consent link
  3. ·The citizen signs in and consents on eSignet, outside the agent conversation.
  4. →get_verification_status("vr_8c21f0") → "verified"
  5. →get_verification_result("vr_8c21f0")
VerificationResultsynthetic
{
  "request_id": "vr_8c21f0",
  "status": "verified",
  "checks": {
    "identity_verified": true,
    "age_over_18": true
  },
  "reasons": {}
}
No name, date of birth, photo or tokens reach the agent.
Illustration with synthetic data. Not a live verification.Tool names and result shape from the fayda-mcp source.

Verification as tools. Results as booleans.

  • 11 MCP tools

    Start, check, fetch and cancel verifications from any MCP client.

  • eSignet OIDC

    Citizens sign in with Fayda. PKCE and private_key_jwt built in.

  • Privacy-first results

    Agents get booleans like age_over_18, never names or birth dates.

  • Offline QR

    Checks a card's signature with no network. It can't prove the holder is present.

  • Details matching

    Confirm what a customer told you, field by field, without seeing the values.

  • Your stack

    Headless Python core with optional FastAPI, Redis and PostgreSQL extras.

A few lines of Python.

# Core: MCP tools, eSignet OIDC, offline QR
pip install fayda-mcp

# Optional FastAPI, Redis and PostgreSQL adapters
pip install "fayda-mcp[fastapi,redis,postgres]"
Python 3.12+README ↗

Private by design.

  • Minimal predicates

    true, false or unavailable. Nothing more.

  • Data filtering

    Schemas reject extra fields. Stored details use AES-256-GCM.

  • Cryptographic checks

    PKCE S256, RFC 7523 assertions, JWKS and RS256 signatures.

  • Caller isolation

    Each tenant and principal sees only its own records.

Independent open-source project. Not an official Fayda product or a compliance certification. Production guide

Frequently asked questions.

What is Fayda MCP?

Fayda MCP is an open-source Python toolkit and Model Context Protocol (MCP) server that connects AI assistants and agents (such as Claude Desktop, Cursor, and custom multi-agent systems) to Ethiopia's Fayda national digital ID platform via eSignet.

How does privacy-preserving identity verification protect citizen data?

LLM context windows should never hold unnecessary personally identifiable information (PII). Fayda MCP evaluates identity claims on the server and returns minimal boolean predicates (such as age_over_18: true) rather than raw personal details like names, dates of birth, or identification numbers.

Which AI agents and MCP clients are compatible?

Any AI tool or framework supporting Anthropic's Model Context Protocol can use Fayda MCP out of the box via stdio or HTTP/SSE transports. Supported environments include Claude Desktop, Cursor, Continue, LangChain, LlamaIndex, and custom agent runtimes.

How does offline Fayda QR code verification work?

Fayda MCP can cryptographically verify the digital signature embedded inside an Ethiopian Fayda QR code without contacting a network server. It validates the issuer signature against public certificates and confirms data integrity instantly.

What architecture and backend adapters does Fayda MCP support?

Built in modern Python (3.10+), Fayda MCP provides a headless core along with optional production adapters for FastAPI (REST/webhooks), Redis (fast distributed session storage), and PostgreSQL (AES-256-GCM encrypted persistence).

Is Fayda MCP officially affiliated with the National ID Program of Ethiopia?

No. Fayda MCP is an independent open-source community project distributed under the Apache-2.0 license. It integrates with standard Fayda and eSignet protocol specifications, but is not officially endorsed by NIDP.

Start building identity-aware agents.

pip install fayda-mcp