MCP Server(Claude Desktop / Code / Cursor)

MCP対応クライアントからEntity Enricherを使用して、モデルの知識やドキュメントを構造化データに変換します。スキーマを設計し、複数の言語でエンティティをエンリッチし、モデルをフュージョンし、セマンティックIDをキュレーションし、品質をベンチマークし、リレーショナルテーブルを自社データベースへ同期できます。

スキーマ検証やモデル間の一致は、事実の正確性や情報の新しさを保証するものではありません。ソース、失敗、データベースへの部分的な反映結果をご確認ください。MCPは対話によるアクセスを提供し、n8nとMakeは同じサービス上でワークフロー自動化を提供します。

クイックスタート

オプション 1 — OAuth(推奨)

claude.ai、Claude Code、Cursor、および標準の OAuth フローに対応するあらゆる MCP クライアント向けです。作成や貼り付けが必要な API キーはありません。クライアントが認可サーバーを自動的に検出します。

  1. Entity Enricher をコネクタとして追加します(claude.ai の場合: 設定 → コネクタ → カスタムコネクタを追加、またはディレクトリから選択)。URL は https://entityenricher.ai/api/mcp/ です。
  2. ブラウザで Entity Enricher の同意画面が開きます。必要に応じてサインインし、認可するをクリックしてください。この接続はご自身のロールで、あなたに代わって動作します。
  3. 接続はいつでも API Keys → Connected Apps から管理または取り消しできます。取り消すとアクセスは即座に遮断されます。
  1. 1許可の対象となる組織
  2. 2接続は常にご自身のロールで動作し、それより広い権限になることはありません
  3. 3連携アプリからいつでも取り消せます
OAuth の経路で表示される唯一の Entity Enricher 画面です。許可の対象となる組織と、実行時に使われるロール(あなた自身のロール)が示されます。

オプション 2 — API キー(静的な JSON 設定)

インタラクティブなサインインではなく JSON ファイルで設定するクライアント(Claude Desktop、Continue、Zed)向けです。

  1. 1. API キーを作成する
    Entity EnricherのWeb UIで: Settings → API Keys → New organization access key。ロールを選択します(読み取り中心ならoperator、スキーマの作成/編集ならeditor、フル制御ならowner)。ent_…の値をコピーしてください。一度しか表示されません。
  2. 2. MCP クライアントに登録する

    Claude Desktopの場合は、~/Library/Application Support/Claude/claude_desktop_config.json(macOS)または%APPDATA%\Claude\claude_desktop_config.json(Windows)を編集してください:

    {
      "mcpServers": {
        "entityenricher": {
          "url": "https://entityenricher.ai/api/mcp/",
          "headers": { "X-API-Key": "ent_your_key_here" }
        }
      }
    }

    上記のエンドポイントとヘッダーを、クライアントのリモートMCP設定で使用してください。設定の記法やHTTPトランスポートの対応状況はクライアントによって異なります。

試してみる

新しいチャットで: 「Entity Enricher のスキーマを一覧表示し、Claude Sonnet を使って製薬会社スキーマに対して Sanofi をエンリッチしてください。」クライアントはツールを検出し、それらを使ってスキーマを選択し、エンリッチメントを実行できます。確認プロンプト、進捗表示、リソースへのアクセスはクライアントに依存します。

ツール

58 個のツールが、スキーマ作成、エンリッチメント、ベンチマーク、Database Sync、セマンティックIDをカバーします。これらは検証・課金・処理のためにバックエンドサービスを再利用します。各ツールは独自のサポート対象パラメーターを公開します。長時間実行される処理(バッチエンリッチメント、サンプル生成、ベンチマーク実行)は非同期です。開始ツールが job_id を返し、クライアントは get_job_statusをポーリングして、生成されたレコードまたはベンチマーク結果を読み取ります。成功を報告する前に、失敗や部分的な結果を確認してください。

カテゴリツール説明
検出list_models利用可能なモデルキー、公称能力、言語、ストラテジー、自動選択されたデフォルト、組織の profile_limits を一覧表示します。
スキーマgenerate_sampleスキーマ作成のために、自由記述のリクエストから編集可能なサンプル JSON を生成します。
スキーマlist_schemas組織内の保存済みスキーマを、ピン留めしたものから順に一覧表示します。
スキーマget_schema保存済みスキーマを、そのプロパティ、アノテーション、input_contract とともに取得します。
スキーマcreate_schema_from_sampleレビュー済みサンプルからスキーマを生成して自動保存し、schema_id、スキーマ内容、レコードリンクを返します。
スキーマsave_schema直接作成したスキーマを保存し、そのIDとリンクを返します。
スキーマupdate_schemaLLM を呼び出さずに、保存済みスキーマのメタデータを編集するか、schema_content 全体を置き換えます。
スキーマget_schema_part編集に必要なスキーマの断片だけを取得します。
スキーマget_enum_candidates各オープン列挙型の現在の語彙に含まれない観測値を、最近のエンリッチメントレコードでの件数とともに一覧表示します。
スキーマupdate_schema_propertyスキーマ全体を置き換えずに、パス指定で1つのプロパティを編集または削除します。
スキーマadd_schema_propertyルート(parent_path=')、オブジェクトパス、または '$defs.X' の配下にプロパティを追加します。
スキーマmove_schema_propertyプロパティを 1 つ、ルート、オブジェクトパス、または '$defs.X' に移動します。フラグと専門性は保持されます。
スキーマresolve_unify_proposalget_schema から返された保留中のエンティティタイプ統合提案を 1 件処理します。
スキーマnest_schema_regionget_schema の x-entityMap にあるフラットなエンティティ領域を、そのフィールドを保持するオブジェクトのサブオブジェクトにネストします。領域のフラットなメンバー(例: order 上の product_id、product_name…
スキーマpublish_schemaデータベースにリンクされたスキーマの作業コピーを、エンリッチメントとレプリカが使用するコントラクトとして公開します。
スキーマdelete_schema保存済み schema を UUID で論理削除します。
スキーマanalyze_sampleスキーマ生成の前に、サンプルのプロパティの曖昧さとリレーションシップのアイデンティティスコープを分析します。
スキーマanalyze_schema保存済みスキーマのプロパティの曖昧さとリレーションシップのアイデンティティスコープを分析し、注釈をスキーマに書き込みます。
エンリッチメントとフュージョンstart_batch_enrichmentschema_idまたはtarget_schemaのいずれか一方のみを指定して、エンティティリストの有償の非同期エンリッチメントを開始します。
エンリッチメントとフュージョンfetch_entitiesサーバーサイドの GET を使用して、外部 REST API からエンティティを取得します。
エンリッチメントとフュージョンenrich_entityschema_id または target_schema のいずれか一方のみを指定して1つのエンティティをエンリッチし、構造化出力、record_id、コスト、データベースの処理結果を返します。
エンリッチメントとフュージョンretry_expertises既存レコードのうち失敗した専門ドメインのみを再試行し、出力を更新して、その実行のフュージョン/同期を試みます。
エンリッチメントとフュージョンmerge_records同じエンティティの2つ以上のレコードをフュージョンして、新しい調停レコードを作成します。
ジョブ制御get_job_statusジョブのステータス、進捗、および保存済みレコード ID を含むコンパクトな終了時サマリーを取得します。
ジョブ制御cancel_job待機中、実行中、または一時停止中の LLM ジョブのキャンセルを要求します。
ジョブ制御answer_job_question一時停止中に返された質問への回答を渡して、ジョブを再開します。
レコードと統計list_records組織内のレコードをコンパクト形式・ページ単位で、新しい順に一覧表示します。
レコードと統計get_record保存済みレコード 1 件の structured_output、entity_input_data、検証エラー、専門性の判定、メトリクスを取得します。
レコードと統計get_stats組織全体のレコード総数、成功率、トークン数、コストのサマリーを取得します。
ベンチマークlist_benchmark_scenariosベンチマークシナリオの概要(コンパクト形式)と合計を一覧表示します。
ベンチマークget_benchmark_scenarioベンチマークシナリオ 1 件を、モデルごとの品質・コスト・速度の結果とともに取得します。
ベンチマークget_benchmark_scenario_resultsシナリオのモデル別ベンチマーク結果を絞り込み、並べ替え、件数を制限します。
ベンチマークcreate_benchmark_scenario必須のスコアリングジャッジを備えた、再利用可能なベンチマークを作成します。
ベンチマークupdate_benchmark_scenarioベンチマークのテスト定義またはスコアリング設定を編集します。
ベンチマークset_benchmark_referenceエンリッチメントまたはスキーマ生成ベンチマークの正解リファレンスを保存します。
ベンチマークdelete_benchmark_scenarioベンチマークシナリオと保存された結果を削除します。
ベンチマークrun_benchmarkベンチマークの有償の非同期実行とスコアリングを開始します。
添付ファイルupload_attachment再利用可能なソース素材としてbase64形式のファイルデータをアップロードします。idとrequires_capabilityを返します。
添付ファイルdelete_attachment組織内の添付ファイルを、保存されているファイルごと完全に削除します。
Database Synclist_database_syncs保存済みスキーマのデータベース登録、リンクされたスキーマ、オプション、同期ホストを一覧表示します。
Database Synclist_entity_states実行ごとのレコードではなく、スキーマの現在のマージ済みエンティティ行を閲覧します。
Database Synccreate_database_sync保存済みスキーマを PostgreSQL、MySQL、SQLite へのリレーショナル同期に登録します。
Database Syncassign_sync_hostDatabase Sync をプロビジョニングするホストを割り当て、または解除します。
Database Syncclassify_database_model連携済みスキーマに対して、データベースキー、SQL型、インデックス、リレーションの所有関係を提案する有償の分析を開始します。
Database Syncdelete_database_syncデータベース登録とキュー内の差分を削除し、そのフィードを停止します。
Database Synccreate_database_credential使い捨ての同期クライアント認証情報と、インストール・ペアリング・実行コマンドの候補を発行します。
Database Syncfetch_database_deltasデータベース同期について、順序付けされた次のウィンドウ分の SQL 差分と正規ペイロードを取得します。
Database Syncack_database_deltas適用が成功したら up_to_id ですべての差分に確認応答し、そのリースを解放します。
Database Syncsync_records_to_database保存済みまたは指定されたエンリッチメント結果を検証し、エンティティレイヤーおよび連携するデータベース同期に反映します。
セマンティックIDlist_semantic_conceptsエイリアス、使用回数、タイプ/モデルのファセット付きで組織の概念を閲覧します。
セマンティックIDget_semantic_conceptコンセプト 1 件のエイリアス、同一性ソースキー、リンクされたレコード、および同じタイプ/モデルのスライス内の最近傍を取得します。
セマンティックIDprobe_semantic_conceptコンセプトを追加したり使用回数を増やしたりせずに、同一性解決をプレビューします。
セマンティックIDadd_semantic_concept使用回数0のアイデンティティ概念を追加するか、alias_of を使ってテキストをエイリアスとして追加します。
セマンティックIDupdate_concept_aliasget_semantic_concept で取得したエイリアス ID を使って、コンセプトのエイリアスを削除または昇格します。
セマンティックIDimport_semantic_concepts1〜1000 件のテキストを 1 つのコンセプトタイプに対して解決します。
セマンティックIDmerge_semantic_concepts不採用のコンセプトを採用側のコンセプトに統合します。
セマンティックIDdelete_semantic_conceptsids、concept_types、または unused_only で選択した概念を削除します。
セマンティックIDmigrate_semantic_embeddings組織のコンセプト埋め込み空間を検査または移行します。

必要に応じて読み込まれるワークフローガイド

サーバー指示は利用可能なワークフローを、ツールの説明は個々の呼び出しを説明します。モデリングの判断やリカバリーが必要な場合、クライアントはenricher://docsのガイド索引を読み、MCPリソースからガイドを選択できます。ガイドを読んでもモデルは実行されません。以下のリンクからは、公開リポジトリにある同じ英語版ガイドを開けます。

リソース

リソースは、スキーマとレコードのデータ、およびワークフローガイドを Markdown として公開します。検出と読み込みの方法はクライアントが選択します。リソースの内容もモデルのコンテキストを消費する点にご注意ください。

URIテンプレート説明
enricher://docsワークフローガイドの一覧です。各ガイドは記載されたリソースURIで利用できます。
enricher://schemas/{schema_id}保存済みスキーマの作業コピーを Markdown 形式で取得します。有効なリンク済みコントラクトには、version="published" を指定して get_schema を使用してください。
enricher://records/{record_id}過去のエンリッチメントレコードをMarkdownとして表示したものです。メタデータ+構造化出力+検証エラー。

対話的な分類処理

enrich_entity に classification model の使用を依頼し、entity が schema のタイプと一致しない場合、ツールは構造化された詳細を含むエラーではないレスポンスを返します。Claude はそれを読み取り、理由をあなたに提示し、(あなたの確認のうえで)force_after_classification_warning=true で再試行します。この再試行では classifier が省かれます。

{
  "success": false,
  "error_code": "classification_warning",
  "message": "Pre-flight classification rejected the entity. ...",
  "classification": {
    "status": "mismatch",
    "reasoning": "Titan is a moon of Saturn, not a planet.",
    "confidence": 0.97
  },
  "job_id": "..."
}

MCPのレスポンスには分類の詳細が保持されるため、クライアントは新しい呼び出しを開始する前にその判断を説明できます。

同じ対話機能が 2 つ目のフローを支えます:generate_sample をソースドキュメント付きで実行すると、そのプランナーが構造に関する確認質問とともに一時停止することがあります。Claude はそれをあなたに伝え、answer_job_question で job を再開します——サンプルが生成されるまで、何度もやり取りを繰り返します。

エラーコード

ほとんどのツールエラーは error_code フィールドを含む構造化オブジェクトを返すため、クライアントはクォータ、分類、タイムアウト、プロバイダー障害を区別できます。古い一部のレスポンスには error または message フィールドしか含まれません。トランスポートのステータスだけでなく、実際の結果も確認してください。

error_codeタイミング
invalid_request不正な形式の UUID、相互排他的な引数(schema_id + target_schema)、またはリクエストボディの検証に失敗しました。
prompt_limit_reached日次/週次/月次のプロンプトクォータを使い切りました(HTTP 402)。ボディには period、limit、used、needed が含まれます。
insufficient_credits組織は請求が有効になっていますが、クレジット残高が低すぎてジョブを開始できません(HTTP 402)。本文には残高と購入URLが含まれます。
model_limit_exceededプランで許可されている数を超えるモデルが要求されました(HTTP 402)。制限値と要求値を返します。
language_limit_exceededプランで許可されている数を超える言語が要求されました(HTTP 402)。
concurrent_job_limit_reachedこの組織でアクティブなエンリッチメントジョブが多すぎます。お待ちいただくか、プランをアップグレードしてください。
classification_warning⚡ エラーではありません: 事前チェックのclassifierがentityを拒否しました。レスポンスにはclassificationのコンテキストが含まれるため、Claudeはユーザーに確認を求め、force_after_classification_warning=trueで再試行できます。
benchmarks_not_in_planこの組織のプランにはモデルベンチマークが含まれていません(HTTP 403)。ベンチマークを変更するツールでは、オーナー権限も確認されます。
ambiguity_check_disabled曖昧性チェックが無効になっているスキーマに対して analyze_schema が呼び出されました(HTTP 400)。まず update_schema で ambiguity_check_enabled=true を指定して再度有効にしてください。
enrichment_timeoutジョブが timeout_seconds を超えました。モデルを減らすか、エンティティを分割することをお勧めします。
schema_generation_timeoutスキーマ生成が timeout_seconds を超過しました。
schema_generation_failedスキーマ生成中にアップストリームのLLMエラーが発生しました(HTTP 502)。
model_output_invalidmodel がスキーマに一致しない出力を返しました(HTTP 502)。ボディには model 名、問題のあるプロパティパス、および retryable: true が示されます。ツールを再度呼び出すか、より強力な model を選択してください。
cancelledジョブが実行中にキャンセルされました (HTTP 499)。
not_foundスキーマまたはレコード ID が組織内に存在しません。
http_error構造化された詳細本文を持たない HTTP エラーの総括処理。

意図的な省略

関連項目