🚀 GLEIF MCP 服务器
通过一个问题即可验证任何公司的合法身份。利用官方 GLEIF 数据库查询 LEI 代码、验证交易对手并追踪公司所有权结构。覆盖 200 多个司法管辖区的 280 多万个实体。

提供 29 种工具,用于 LEI 查询、实体搜索、BIC/SWIFT 交叉引用、公司所有权查询和批量验证。可与 Claude Desktop、Claude Code、Cursor、VS Code、Windsurf 等 MCP 兼容工具配合使用。
🚀 快速开始
GLEIF MCP 服务器能够帮助用户通过官方 GLEIF 数据库,快速验证公司的合法身份、查询 LEI 代码等。以下将为你介绍其安装和使用的相关内容。
✨ 主要特性
核心功能
- LEI 查询:通过 LEI 代码获取完整的实体详细信息。
- 批量查询:在单个请求中查询多个 LEI(最多 100 个)。
- 实体搜索:通过名称模糊匹配和分页查找公司。
- LEI 验证:验证格式、校验位(ISO 17442)和注册状态。
金融标识符查询
- BIC/SWIFT 查询:从 BIC 代码查找银行 LEI。
- ISIN 查询:从 ISIN 代码查找证券发行人 LEI。
- 国家浏览:按司法管辖区列出实体。
关系与合规性
- 公司所有权:查询母公司、子公司和最终母公司。
- 基金关系:查询基金经理、伞形基金和子基金。
- 报告异常:提供二级数据异常及原因。
- 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"
}
}
}
带有 Continue 扩展的 VS Code
将以下内容添加到 .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 扩展)
通过 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"
}
}
}
如果无法正常工作:告诉我们遇到的问题 — 即使只有一句话也有帮助。
💻 使用示例
基本 LEI 查询
提示:"Look up LEI HWUPKR0MPOU8FGXBT394"
返回:苹果公司的完整实体详细信息,包括法定名称、总部地址、司法管辖区(美国加利福尼亚州)、实体状态、注册状态、管理 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"
返回:三个实体的摘要信息,包括 LEI、法定名称、国家、城市和状态。
通过 BIC 查找银行
提示:"Find the LEI for BIC DEUTDEFF"
返回:德意志银行股份公司的 LEI 记录及完整详细信息。
查找证券发行人
提示:"Who issued ISIN US0378331005?"
返回:苹果公司(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 数量。
📚 详细文档
工具参考
核心查询工具
| 工具 |
描述 |
参数 |
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 |
获取二级报告异常 |
lei(必需):要检查的 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 配置中的路径是否为绝对路径,而非相对路径
“速率限制超出”错误
- 服务器会自动处理速率限制并进行重试
- 如果问题持续存在,请减少并发请求或等待几分钟
有效 LEI 显示“LEI 未找到”
- 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 服务器:
致谢