mcp-persona について
mcp-persona は、開発者向けの本人確認・KYC プラットフォーム Persona の MCP サーバーです。書書類、セルフィー、データベース、電話、銀行などの確認項目をテンプレートで組み合わせ、Persona がホストする流れで検証を行う仕組みを扱います。
主な機能
- 01inquiry の作成、取得、承認、否認
- 02永続的な account レコードの管理
- 03完全な検証詳細を含むレポートの取得
- 04調査用 case の作成とタグ付け
- 05inquiry テンプレートと webhook サブスクリプションの一覧表示
活用シーン
- 01ユーザーの本人確認を開始し、結果を追跡する
- 02複数回の検証セッションで account レコードを再利用する
- 03定期的な再確認や手動審査のために case を開く
- 04GDPR の削除要求に応じて inquiry データを削除する
MCP 対応
Persona の inquiry、account、report、case のエンドポイントを MCP ツールとして公開し、MCP クライアントから呼び出せるようにします。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @codespar/mcp-personaPERSONA_API_KEYシークレットPersona API key. Sent as 'Authorization: Bearer <value>'.PERSONA_API_VERSIONPersona API version pin (sent as 'Persona-Version' header). Defaults to '2023-01-05'.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
20掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| note | string | いいえ | Persona ダッシュボードに表示される内部メモ。 |
| fields | object | いいえ | inquiry の事前入力フィールド(例:{ name-first, name-last, birthdate, address-street-1, address-city, address-subdivision, address-postal-code, address-country-code, email-address, phone-number })。キーは Persona の kebab-case 規則に従います。 |
| account-id | string | いいえ | inquiry の紐付け先となる既存の Persona account ID(act_...)。指定は任意です。 |
| redirect-uri | string | いいえ | フロー完了後にユーザーをリダイレクトする URL。 |
| reference-id | string | いいえ | 内部ユーザー ID。webhook で返され、list_inquiries で絞り込みに使用できます。 |
| inquiry-template-id | string | はい | Persona ダッシュボードの inquiry テンプレート ID(itmpl_...)。フローで実行する内容を定義します。 |
| inquiry-template-version-id | string | いいえ | 特定のテンプレートバージョン(itmplv_...)を固定できます。指定は任意です。 |
詳細
@codespar/mcp-persona
Persona の MCP サーバー — 開発者を第一に考えた、モダンな本人確認と KYC を提供します。
Persona は、DX とテンプレート主導のワークフローを重視する、現代のスタートアップやフィンテック企業に支持されているプログラム可能なアイデンティティレイヤーです。固定の KYC パイプラインを使うのではなく、Persona のダッシュボードで照会テンプレートを作成し、ドキュメント、セルフィー、データベース、電話、銀行などの構成要素を再利用します。Persona はホスト型のフローをオーケストレーションします。
CodeSpar の identity カテゴリーにおける 4 番目のエントリーです。他のプロバイダーとの位置づけは次のとおりです。
| プロバイダー | 位置づけ |
|---|---|
| Unico | ブラジルのリーダー — 現地の PEP、裁判記録、Receita Federal の生体認証データベース |
| Onfido | グローバルな挑戦者 — 195 か国以上でのドキュメント確認と顔の類似度判定 |
| Jumio | グローバル企業向け — より高度な不正検知情報と、より長い運用実績 |
| Persona | 開発者を第一に考えたモダンなサービス — 優れた DX と、テンプレート主導のプログラム可能なワークフロー |
迅速にリリースし、ベンダーへの問い合わせなしにフローを反復改善し、自社プロダクトの画面に本人確認を組み込みたい場合は、Persona をお選びください。
ツール(20)
| ツール | 目的 |
|---|---|
create_inquiry | Persona の照会を作成します — Persona... で設定した照会テンプレートに紐づく本人確認セッションです |
retrieve_inquiry | ID で照会を取得します。 |
list_inquiries | 照会を一覧表示します。reference-id(内部ユーザー ID)またはステータスで絞り込めます。 |
approve_inquiry | 照会を承認済みにします。 |
decline_inquiry | 照会を却下済みにします。 |
redact_inquiry | 照会を編集・削除します(GDPR の消去権)。 |
create_account | Persona の永続アカウントを作成します — 複数の照会を関連付けられる、エンドユーザーの長期記録です。 |
retrieve_account | ID で Persona アカウントを取得します。概要 PII と、関連する照会/本人確認も含まれます。 |
list_reports | レポート(個別の本人確認資料)を一覧表示します(例: |
retrieve_report | ID で単一のレポートを取得します — 一致情報、スコア、生のソースデータなど、本人確認の詳細をすべて返します。 |
create_case | ケースを開始します — 1 つ以上の照会/アカウントに関連付けられた、進行中の調査用ワークスペースです。 |
resume_inquiry | 一時停止中の照会を再開します — エンドユーザーがフローを続行できるよう、新しいワンタイムセッショントークン/リンクを返します... |
update_account | 既存の Persona アカウントの属性を更新します(例: |
list_accounts | Persona アカウントを一覧表示します。reference-id(内部ユーザー ID)またはメールアドレスで絞り込めます。 |
run_report | Persona の単独レポートを作成して実行します — 照会フローには紐づきません。 |
retrieve_case | ID でケースを取得します — ステータス、担当者、関連オブジェクト、添付フィールド、タグなど、すべての詳細を含みます。 |
list_cases | 調査ケースを一覧表示します。ステータス、担当者、優先度で絞り込めます。 |
add_case_tag | ケースにタグを追加します。 |
list_templates | Persona のダッシュボードで設定した照会テンプレートを一覧表示します — 各テンプレートの ID(itmpl_...)、名前などを返します... |
list_webhooks | 設定済みの Webhook サブスクリプションを一覧表示します(Persona では「Webhook subscriptions」と呼びます)。 |
フロー
create_inquiry (inquiry-template-id=itmpl_...)
-> user completes Persona-hosted flow (doc + selfie + whatever the template runs)
-> retrieve_inquiry (poll until status = 'completed' | 'approved' | 'declined' | 'needs_review')
-> approve_inquiry / decline_inquiry (record your final decision)
-> list_reports / retrieve_report (for standalone reports like watchlist / adverse-media)
アカウント(create_account/retrieve_account)は照会をまたいでエンドユーザーの記録を保持します — create_inquiry の account-id で、今後のセッションを関連付けます。
ケース(create_case)は、継続的な調査(定期的な再本人確認、フラグが付いたユーザー、手動レビュー)用のワークスペースを作成します。
インストール
npm install @codespar/mcp-persona
環境
PERSONA_API_KEY="..." # API key (required, secret)
PERSONA_API_VERSION="2023-01-05" # Optional. Sent as Persona-Version header.
認証
Authorization: Bearer <PERSONA_API_KEY>
Persona-Version: 2023-01-05
サーバーは両方のヘッダーを自動的に処理します。
JSON:API エンベロープ
Persona は JSON:API 形式のリクエストエンベロープを使用します。すべての POST ボディは { data: { attributes: {...} } } でラップされます。このサーバーがラップ処理を行うため、ツール入力では内側の attributes の形をそのまま使い、Persona の規約に従ってキーをケバブケースで指定します。
{
"inquiry-template-id": "itmpl_ABC123",
"reference-id": "user_42",
"fields": {
"name-first": "Ada",
"name-last": "Lovelace",
"birthdate": "1815-12-10",
"address-country-code": "US"
}
}
サーバーは次の形式で送信します。
{ "data": { "attributes": { "inquiry-template-id": "itmpl_ABC123", ... } } }
実行
# stdio (default — for Claude Desktop, Cursor, etc)
npx @codespar/mcp-persona
# HTTP (for server-to-server testing)
MCP_HTTP=true MCP_PORT=3000 npx @codespar/mcp-persona
Persona と他の本人確認プロバイダーの選び方
| シグナル | 選択先 |
|---|---|
| 動きの速いスタートアップ/フィンテックで、DX が重要で、フローを反復改善したい | Persona |
| 書類+セルフィー+銀行+電話番号の認証を再利用するカスタムワークフローが必要 | Persona |
| ユーザーがブラジル人で、CPF+Receita Federal の生体認証照合が必要 | Unico |
| 195 か国以上をカバーし、規制対象のフィンテックで AML/PEP に対応する必要がある | Onfido |
| 高度な不正対策インテリジェンスを必要とする銀行/大規模な規制対象マーケットプレイス | Jumio |
エンタープライズ
エージェントによる支払いにガバナンス、予算制限、監査証跡が必要ですか?CodeSpar Enterprise は、これらの MCP サーバーにポリシーエンジン、支払いルーティング、コンプライアンステンプレートを追加します。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。