Build a KYC Verification Workflow with an AI Agent
An AI agent uses Didit's MCP server and Workflow Orchestrator to compose a Know Your Customer (KYC) workflow — ID, liveness, database, and AML — add a webhook, set conditional branching, and publish it, all from one prompt.
A Know Your Customer (KYC) workflow is more than a single verification. Real onboarding chains checks together — verify the ID document, confirm liveness, validate details against a database, screen for Anti-Money Laundering (AML) risk — and branches on the results, sending clean users straight through and flagged ones to review. Building that usually means clicking through a no-code editor or hand-rolling API calls. Didit's official Model Context Protocol (MCP) server plus the Workflow Orchestrator lets an AI agent do it from a prompt. Point an agent at https://mcp.didit.me/mcp and it can compose a multi-module workflow, wire in a webhook, set conditional branching, and publish it — no code, no clicking. This post shows how.
Key takeaways
- Didit's MCP server exposes 130+ tools across 11 categories over Streamable HTTP at
https://mcp.didit.me/mcp, including a Workflows & Questionnaires category. - An AI agent can compose a KYC workflow — ID verification, liveness, database validation, and AML screening — from one natural-language prompt.
- The Workflow Orchestrator is a visual no-code builder with conditional branching, A/B testing, webhooks, and one-click module activation; the agent drives it programmatically over MCP.
- Conditional branching lets the workflow route users by result — approve clean sessions, send borderline ones to manual review — and the agent sets those rules for you.
- Authentication is OAuth 2.1 + Proof Key for Code Exchange (PKCE) via business.didit.me, with no API key on the hosted server and access scoped to your console role.
- Connect Claude Code in one line:
claude mcp add --transport http didit https://mcp.didit.me/mcp— the MCP and Orchestrator layers are free.
Why compose a workflow instead of a single check
A one-off KYC session is fine for a prototype. Production onboarding needs orchestration: which modules run, in what order, and what happens on each outcome. Didit's Workflow Orchestrator handles that — it's a visual no-code builder with conditional branching, nested decisions, A/B testing, webhooks, and one-click module activation. Everything the MCP server exposes to an agent is the same capability you'd otherwise assemble by dragging modules on a canvas.
The advantage of the MCP path is speed of iteration. You describe the workflow you want, the agent builds it, you review it, and you adjust in conversation — "add a proof-of-address step before AML" — without leaving your editor.
The tools an agent uses
The Model Context Protocol is an open standard for AI agents to call external tools consistently. Didit's server is the official implementation, MIT-licensed at github.com/didit-protocol/mcp, served over Streamable HTTP at https://mcp.didit.me/mcp. Of its 130+ tools across 11 categories, a workflow build touches Discovery (to see available modules and existing workflows), Workflows & Questionnaires (to compose and publish), and Webhooks (to wire notifications). The Standalone Verification and Transaction Monitoring & AML categories back the individual modules you compose in.
A single prompt that builds the whole flow
Here's the kind of instruction that produces a complete, published workflow:
"Build a KYC workflow called 'Standard Onboarding' that runs ID verification, then passive liveness and face match, then database validation, then AML screening. If AML returns a hit, route the session to manual review instead of auto-approving. Add a webhook to https://example.com/didit/hooks for completed sessions, then publish it."
The agent composes the modules in order, sets the conditional branch on the AML result so hits go to review while clean sessions pass, registers the webhook so your backend gets notified on completion, and publishes the workflow so it's live. You can then ask it to "create a session against Standard Onboarding and give me the link" to test the whole thing end to end.
Follow-ups stay conversational: "add an A/B test that sends half of traffic through active liveness instead of passive," or "insert a custom questionnaire before the ID step." Each change is a prompt, and the agent edits the workflow in place.
Conditional branching, done in language
Branching is where workflows earn their keep, and it's the part that's fiddliest to build by hand. Over MCP you describe the rule and the agent encodes it. Approve on a clean pass. Route to manual review on an AML hit. Require a second liveness attempt on a low face-match score. Trigger a proof-of-address module only for users from higher-risk regions. Because the Orchestrator supports nested decisions, you can layer these — and because the agent is driving it, you can reason about the logic in plain English before committing.
The modules you can compose span the catalog: ID Verification at $0.15, passive liveness at $0.10, face match at $0.05, database validation, AML screening at $0.20, and more. A typical full KYC bundle — ID, passive liveness, face match, and IP analysis — lands at $0.33, and you compose exactly the modules your risk model needs.
Webhooks close the loop
A published workflow needs to tell your systems when something happens. The agent registers a webhook through the Webhooks tool category, so your backend receives an event when a session completes, gets approved, or gets flagged. That means the workflow the agent builds isn't a demo — it's connected to your infrastructure the moment it's published. You can ask the agent to list, update, or remove webhooks the same way you asked it to add one.
Connecting your client
Claude Code connects with one command:
claude mcp add --transport http didit https://mcp.didit.me/mcp
Run /mcp to complete the "Log in with Didit" OAuth 2.1 + PKCE flow through business.didit.me. There's no API key to manage on the hosted server, and every action the agent takes respects your console role across the didit:management and didit:verification scopes — so an agent can only build and publish workflows if your role already can.
For Claude Desktop, Cursor, VS Code, Windsurf, and Zed, add a JSON entry pointing at the same URL:
{
"mcpServers": {
"didit": {
"type": "http",
"url": "https://mcp.didit.me/mcp"
}
}
}
ChatGPT Developer Mode works through OpenAI's beta connector, so expect its steps to shift while that feature is in beta. The complete client matrix is in the MCP overview docs.
Pricing and what's free
The MCP server and the Workflow Orchestrator are both free — you pay only for the verifications a workflow runs. Every account gets 500 free verifications a month, and inference is sub-2-second across 220+ countries, 14,000+ document types, and 48+ languages. That's enough headroom to build a workflow with an agent, run real test sessions through it, and confirm every branch behaves before you send a single production user through.
Didit is Y Combinator W26, profitable, has raised $7.5M, and runs in production for 1,500+ companies — so a workflow an agent composes over MCP is built on the same orchestration engine those companies onboard on every day.
Start free
Point an AI agent at https://mcp.didit.me/mcp, describe the KYC workflow you want, and let it compose, branch, wire the webhook, and publish. Create your workspace and start free with 500 verifications every month, no card required. Read the MCP overview, browse the open-source server, or explore the developer hub to see every workflow tool an agent can reach.