🚀 GLEIF MCP Server
1つの質問で任意の企業の法的身元を検証します。公式のGLEIFデータベースを使用して、LEIコードを検索し、取引相手を検証し、企業の所有構造を追跡します。200以上の法域にまたがる280万以上のエンティティをカバーしています。

LEI検索、エンティティ検索、BIC/SWIFT相互参照、企業所有権、および一括検証のための29のツールがあります。Claude Desktop、Claude Code、Cursor、VS Code、Windsurf、およびその他のMCP互換ツールと連携します。
🚀 クイックスタート
このサーバーを使用することで、様々な金融関連の情報を簡単に取得できます。以下に、具体的な使い方やインストール方法を紹介します。
✨ 主な機能
コア機能
- LEI検索:LEIコードからエンティティの詳細情報を取得します。
- 一括検索:一度に複数のLEIを検索できます(最大100件)。
- エンティティ検索:企業名で曖昧検索が可能で、ページネーションもサポートしています。
- LEI検証:形式、チェックデジット(ISO 17442)、登録状態を検証します。
金融識別子
- BIC/SWIFT検索:BICコードから銀行のLEIを検索します。
- ISIN検索:ISINコードから証券発行者のLEIを検索します。
- 国別閲覧:法域別にエンティティを一覧表示します。
関係性とコンプライアンス
- 企業所有権:親会社、子会社、最終親会社の関係を把握できます。
- ファンド関係:ファンドマネージャー、傘型ファンド、サブファンドの関係を取得します。
- 報告例外:レベル2のデータ例外と理由を表示します。
- LEI発行者:すべてのローカル運営ユニット(LOU)の一覧と詳細を表示します。
パフォーマンスと信頼性
- 高速応答:結果はローカルにキャッシュされるため、繰り返しのクエリは即座に返されます。
- APIキー不要:GLEIFの公開APIをそのまま使用できます。
- エラーの適切な処理:タイムアウトや一時的な障害が発生した場合、自動的にリトライします。
- 制限内での動作:組み込みのレート制限により、GLEIFのクォータを超えることが防止されます。
📦 インストール
バイナリのダウンロード
リリースページから、すべてのプラットフォーム用の事前構築済みバイナリをダウンロードできます。
| プラットフォーム |
バイナリ |
| macOS (Apple Silicon) |
gleif-mcp-server-darwin-arm64 |
| macOS (Intel) |
gleif-mcp-server-darwin-amd64 |
| Linux (x64) |
gleif-mcp-server-linux-amd64 |
| Linux (ARM64) |
gleif-mcp-server-linux-arm64 |
| Windows (x64) |
gleif-mcp-server-windows-amd64.exe |
chmod +x gleif-mcp-server-darwin-arm64
ソースからビルド
Go 1.25以上が必要です。
git clone https://github.com/olgasafonova/gleif-mcp-server.git
cd gleif-mcp-server
go build -o gleif-mcp-server .
Goを使用してインストール
go install github.com/olgasafonova/gleif-mcp-server@latest
AIエージェントのセットアップ
最速の開始方法:Claude Desktopを使用している場合は、以下の設定を追加して再起動してください。CursorなどのIDEを使用している場合は、設定ファイルが異なりますが、同じ考え方です。以下からお使いのツールを選択してください。
Claude Desktop
ステップ1: バイナリのダウンロード
リリースページにアクセスし、お使いのシステム用のバイナリをダウンロードします。
- Mac (Apple Silicon M1/M2/M3/M4):
gleif-mcp-server-darwin-arm64
- Mac (Intel):
gleif-mcp-server-darwin-amd64
- Windows:
gleif-mcp-server-windows-amd64.exe
ステップ2: Macのみ - ファイルの実行を許可する
macOSはダウンロードしたファイルをブロックします。ターミナルを開き、以下のコマンドを実行します。
chmod +x ~/Downloads/gleif-mcp-server-darwin-arm64
xattr -d com.apple.quarantine ~/Downloads/gleif-mcp-server-darwin-arm64
ステップ3: 設定ファイルを開く
Mac:Finderを開き、Cmd + Shift + Gを押し、以下のパスを貼り付けます。
~/Library/Application Support/Claude/
Windows:Win + Rを押し、以下のパスを貼り付けます。
%APPDATA%\Claude
claude_desktop_config.jsonを開きます。存在しない場合は、作成してください。
ステップ4: 設定を追加する
Mac(YOUR_USERNAMEを実際のユーザー名に置き換えてください):
{
"mcpServers": {
"gleif": {
"command": "/Users/YOUR_USERNAME/Downloads/gleif-mcp-server-darwin-arm64"
}
}
}
Windows(YOUR_USERNAMEを置き換えてください - ダブルバックスラッシュに注意):
{
"mcpServers": {
"gleif": {
"command": "C:\\Users\\YOUR_USERNAME\\Downloads\\gleif-mcp-server-windows-amd64.exe"
}
}
}
ユーザー名を確認するには、Macの場合はターミナルを開き、whoamiと入力します。Windowsの場合は、C:\Users\を確認します。
ステップ5: Claude Desktopを再起動する
完全に終了し(MacではCmd + Q)、再度開きます。
ステップ6: テストする
Claude Desktopに以下を入力します。
Look up Apple's LEI using GLEIF
ClaudeがGLEIFツールを呼び出し、会社のデータを返すはずです。
Claude Code (CLI)
claude mcp add gleif /path/to/gleif-mcp-server
claude mcp add --scope user gleif /path/to/gleif-mcp-server
Cursor IDE
プロジェクトの.cursor/mcp.jsonまたはグローバル設定の~/.cursor/mcp.jsonに以下を追加します。
{
"mcpServers": {
"gleif": {
"command": "/path/to/gleif-mcp-server"
}
}
}
VS Code with Continue Extension
.continue/config.jsonに以下を追加します。
{
"experimental": {
"modelContextProtocolServers": [
{
"name": "gleif",
"transport": {
"type": "stdio",
"command": "/path/to/gleif-mcp-server"
}
}
]
}
}
Windsurf
~/.codeium/windsurf/mcp_config.jsonに以下を追加します。
{
"mcpServers": {
"gleif": {
"command": "/path/to/gleif-mcp-server"
}
}
}
Cline (VS Code Extension)
ClineのMCP設定を通じて、または.vscode/cline_mcp_settings.jsonに以下を追加します。
{
"mcpServers": {
"gleif": {
"command": "/path/to/gleif-mcp-server",
"args": []
}
}
}
Antigravity
~/.antigravity/mcp.jsonに以下を追加します。
{
"mcpServers": {
"gleif": {
"command": "/path/to/gleif-mcp-server"
}
}
}
動作しない場合:何が難しかったか教えてください — 1文でも助けになります。
📚 詳細ドキュメント
ツールリファレンス
コア検索ツール
| ツール |
説明 |
パラメータ |
lei_lookup |
特定のLEIの詳細情報を取得します |
lei(必須):20文字のLEIコード |
validate_lei |
形式、チェックデジット、およびステータスをチェックします |
lei(必須):検証するLEI |
batch_lei_lookup |
複数のLEIを一度に検索します |
leis(必須):カンマ区切りのLEI(最大100件) |
検索ツール
| ツール |
説明 |
パラメータ |
search_entity |
会社名で検索します |
query(必須)、limit(デフォルト20)、page(デフォルト1)、fuzzy(デフォルトtrue) |
search_by_bic |
BIC/SWIFTからLEIを検索します |
bic(必須):8または11文字のコード |
search_by_isin |
ISINから発行者のLEIを検索します |
isin(必須):12文字のISIN |
search_by_country |
国別にエンティティを一覧表示します |
country(必須):ISO 2文字コード、limit(デフォルト20) |
autocomplete |
エンティティ名の候補を表示します |
prefix(必須):最小2文字、limit(デフォルト10) |
関係性ツール
| ツール |
説明 |
パラメータ |
get_relationships |
企業/ファンドの関係を取得します |
lei(必須)、type:direct-parent、ultimate-parent、children、fund-manager、umbrella-fund、sub-funds |
LEI発行者ツール
| ツール |
説明 |
パラメータ |
get_lei_issuer |
LOUの詳細情報を取得します |
issuer_id(必須):LOU識別子 |
list_lei_issuers |
世界中のすべてのLOUを一覧表示します |
なし |
コンプライアンスツール
| ツール |
説明 |
パラメータ |
get_reporting_exceptions |
レベル2の報告例外を取得します |
lei(必須):チェックするLEI |
💻 使用例
基本的なLEI検索
プロンプト:"Look up LEI HWUPKR0MPOU8FGXBT394"
返却値:Apple Inc.の完全なエンティティ詳細情報。法人名、本社住所、法域(US-CA)、エンティティステータス、登録ステータス、管理LOU、および次回更新日が含まれます。
ページネーション付きの会社検索
プロンプト:"Search for Deutsche Bank, show page 2"
ツール呼び出し:
{
"name": "search_entity",
"arguments": {
"query": "Deutsche Bank",
"limit": 20,
"page": 2,
"fuzzy": true
}
}
返却値:ページネーション情報(総件数、現在のページ、次のページがあるか)付きの一致するエンティティのリスト。
一括LEI検索
プロンプト:"Look up these LEIs: HWUPKR0MPOU8FGXBT394, 5493006MHB84DD0ZWV18, 549300GKFG0RYRRQ1414"
返却値:3つのエンティティの概要。LEI、法人名、国、都市、およびステータスが含まれます。
BICから銀行を検索
プロンプト:"Find the LEI for BIC DEUTDEFF"
返却値:Deutsche Bank AGのLEIレコードの詳細情報。
証券発行者を検索
プロンプト:"Who issued ISIN US0378331005?"
返却値:Apple Inc.(AAPL株の発行者)。
企業構造
プロンプト:"Who is the ultimate parent of this subsidiary?"
ツール呼び出し:
{
"name": "get_relationships",
"arguments": {
"lei": "549300GKFG0RYRRQ1414",
"type": "ultimate-parent"
}
}
LEI検証
プロンプト:"Is LEI HWUPKR0MPOU8FGXBT394 valid?"
返却値:
{
"lei": "HWUPKR0MPOU8FGXBT394",
"valid": true,
"status": "ISSUED",
"entityStatus": "ACTIVE",
"nextRenewal": "2025-08-15"
}
報告例外のチェック
プロンプト:"Why is parent info missing for this company?"
ツール呼び出し:
{
"name": "get_reporting_exceptions",
"arguments": {
"lei": "5493006MHB84DD0ZWV18"
}
}
返却値:例外カテゴリと理由(例:NON_CONSOLIDATING、NATURAL_PERSONS)。
すべてのLEI発行者を一覧表示
プロンプト:"Show me all LEI issuers"
返却値:LOU(ローカル運営ユニット)の完全なリスト。名前、国、ステータス、および支援するLEIの数が含まれます。
レスポンス形式
すべてのツールは関連するフィールドを含むJSONを返します。エンティティレコードの例:
{
"lei": "HWUPKR0MPOU8FGXBT394",
"legalName": "Apple Inc.",
"country": "US",
"city": "Cupertino",
"status": "ACTIVE",
"regStatus": "ISSUED"
}
検索結果にはページネーションが含まれます。
{
"count": 20,
"results": [...],
"pagination": {
"currentPage": 1,
"perPage": 20,
"total": 156,
"lastPage": 8
},
"hasMore": true
}
エラー処理
サーバーは構造化されたエラーを返します。
| エラーコード |
説明 |
再試行可能 |
not_found |
LEI/エンティティがGLEIFデータベースに見つかりません |
いいえ |
invalid_format |
無効なLEI/BIC/ISIN形式 |
いいえ |
rate_limited |
GLEIF APIのレート制限を超えました |
はい |
timeout |
リクエストがタイムアウトしました |
はい |
server_error |
GLEIF APIエラー |
ステータスによる |
network_error |
接続に失敗しました |
はい |
エラーレスポンスの例:
{
"code": "not_found",
"message": "LEI not found in GLEIF database",
"statusCode": 404,
"retryable": false
}
🔧 技術詳細
アーキテクチャ
gleif-mcp-server/
├── main.go # エントリーポイント、MCPサーバーの設定
├── internal/gleif/
│ ├── client.go # キャッシュとレート制限付きのGLEIF APIクライアント
│ ├── client_test.go # クライアントと検証テスト
│ ├── cache.go # TTL付きのLRUキャッシュ
│ ├── types.go # APIレスポンスのデータ構造
│ └── errors.go # 構造化されたエラータイプ
└── tools/
├── definitions.go # ツールのメタデータとパラメータ仕様
├── handlers.go # MCPツールの実装
└── handlers_test.go # モックサーバーを使用したハンドラーテスト
開発者向けの詳細設定
| 設定 |
値 |
| キャッシュ期間 |
15分 |
| キャッシュ容量 |
1000エンティティ、500検索 |
| レート制限 |
50リクエスト/分(GLEIFは60を許可) |
| リトライ戦略 |
指数関数的バックオフで3回試行 |
| コネクションプール |
最大100アイドル、ホストごとに10 |
APIリファレンス
このサーバーは公開GLEIF APIをラップしています。
- ベースURL:https://api.gleif.org/api/v1
- 認証:不要
- レート制限:60リクエスト/分
- ドキュメント:https://www.gleif.org/en/lei-data/gleif-api
トラブルシューティング
サーバーが起動しない場合
- バイナリに実行権限があることを確認してください:
chmod +x gleif-mcp-server
- MCP設定内のパスが絶対パスであることを確認してください。
"Rate limit exceeded"エラーが発生する場合
- サーバーは自動的にレート制限を処理し、リトライします。
- エラーが解消されない場合は、同時リクエストを減らすか、数分待ってから再試行してください。
有効なLEIで"LEI not found"エラーが発生する場合
- GLEIFデータベースは毎日更新されるため、最近発行されたLEIはすぐに表示されないことがあります。
- LEIの形式が正しいことを確認してください(正確に20文字の英数字)。
応答が遅い場合
- 最初のリクエストはキャッシュの初期化のために遅くなることがあります。
- GLEIF APIに一時的なレイテンシーのスパイクが発生することがありますが、自動的にリトライされます。
Claude Desktopにサーバーが表示されない場合
- 設定を編集した後、Claude Desktopを再起動してください。
- 設定ファイルのJSON構文を確認してください。
- バイナリのパスが存在し、実行可能であることを確認してください。
開発
go test ./...
go test -coverprofile=coverage.out ./...
go tool cover -html=coverage.out
go test -race ./...
go build -o gleif-mcp-server .
コントリビューション
コントリビューションを歓迎します。提案する変更については、まずイシューを開いて議論してください。
📄 ライセンス
MITライセンス - 詳細はLICENSEを参照してください。
その他のMCPサーバー
他のMCPサーバーもチェックしてみてください。
謝辞