verifier
A lightweight and AI-friendly MCP server that allows any AI agent or MCP-compatible assistant to initiate and verify a PID (Personal Identity Data) credential presentation via OIDC4VP.
Documentation
🧠 MCP PID Wallet Verifier
A lightweight and AI-friendly MCP server that allows any AI agent or MCP-compatible assistant to initiate and verify a PID (Personal Identity Data) credential presentation via OIDC4VP.
This server is designed to support secure, QR-based wallet interactions and can be used with agents like Cline, OpenAI’s GPTs (via custom tools), or any custom client following the MCP protocol.
🚀 Features
- ✅ Supports OIDC4VP Draft-13 with `direct_post` response mode
- ✅ Two-step MCP REST tools for credential presentation
- ✅ Generates QR codes and openid-vc:// deep links
- ✅ Receives SD-JWT-based credentials from EUDI-compatible wallets
- ✅ Stateless via Redis session storage
- ✅ Fully MCP-compliant via `.well-known/mcp/tools`
🔧 Tools Exposed (MCP REST)
`1. initiate_pid_request`
Start an OIDC4VP presentation flow. Returns a QR code and session ID.
POST `https://verifier.wallet-provider.com/tools/initiate_pid_request`
Response
{
"status": "pending",
"instructions": "Scan this QR code with your wallet to present a credential.",
"session_id": "f1203ea7-d5...",
"presentation_url": "openid-vc://?client_id=...",
"qr_code_base64": "data:image/png;base64,..."
}`2. check_pid_result`
Poll the status of the credential presentation.
POST `https://verifier.wallet-provider.com/tools/check_pid_result`
Request
{
"session_id": "f1203ea7-d5..."
}Possible Responses
- Pending:
{ "status": "pending" }- Verified:
{
"status": "verified",
"verified_credential": {
"given_name": "Jean",
"family_name": "Dupont",
"birth_date": "1975-06-23"
}
}- Error:
{
"status": "error",
"error_description": "signature failed"
}🧠 Use Case
This server enables an AI agent to:
1. Ask a user to present their digital ID (PID)
2. Show them a scannable QR code
3. Wait for wallet response via OIDC4VP
4. Extract and use verified attributes (e.g., name, birth date)
Perfect for use in:
- Identity verification flows
- Onboarding
- Compliance & KYC automation
- Government-grade AI applications
🛠️ Tech Stack
- Python + Flask
- Redis for session handling
- `jwcrypto` for JWT signing/verification
- `qrcode` for base64-encoded QR image generation
- Compatible with EUDI-compliant wallets and SD-JWT
📄 MCP Tool Discovery
GET `https://verifier.wallet-provider.com/.well-known/mcp/tools`
Returns a JSON manifest describing available tools, input schema, and descriptions.
🧪 Demo Agent Available
You can test this server using a local or scripted agent that calls:
- `https://verifier.wallet-provider/tools/initiate_pid_request`
- `https://verifier.wallet-provider.com/tools/check_pid_result`
Or use a Custom GPT / Claude with support for MCP tools.
🛡️ Security Notes
- Temporary data is stored with expiration (`setex`)
- Signature verification via `verif_token()`
- Expiration (`exp`) and nonce handling included
- Designed for secure, audit-friendly digital identity operations
📬 Contact
Created by Talao
Maintainer: thierry.thevenet@talao.io
License: Apache V2.0
Frequently asked questions
What is verifier?
verifier is A lightweight and AI-friendly MCP server that allows any AI agent or MCP-compatible assistant to initiate and verify a PID (Personal Identity Data) credential presentation via OIDC4VP.
How do I install verifier?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is verifier open source?
Yes — it is hosted on GitHub at https://github.com/TalaoDAO/verifier.
Related MCP tools
🙌 OpenHands: Code Less, Make More for the Model Context Protocol. Enhance AI assistants with powerful integrations. Python-based implementation.
Universal memory layer for AI Agents; Announcing OpenMemory MCP - local and secure memory management. Python-based implementation.
基于大模型搭建的聊天机器人,同时支持 微信公众号、企业微信应用、飞书、钉钉 等接入,可选择ChatGPT/Claude/DeepSeek/文心一言/讯飞星火/通义千问/ Gemini/GLM-4/Kimi/LinkAI,能处理文本、语音和图片,访问操作系统和互联网,支持基于自有知识库进行定制企业智能客服。
An LLM agent that conducts deep research (local and web) on any given topic and generates a long report with citations. Built for the Model Context Protocol to
🚀 The fast, Pythonic way to build MCP servers and clients Trusted by 19900+ developers. Trusted by 19900+ developers. Trusted by 19900+ developers.
🔥 MaxKB is an open-source platform for building enterprise-grade agents. MaxKB 是强大易用的开源企业级智能体平台。 for the Model Context Protocol. Enhance AI assistants with po
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP