Data.gouv.fr表格API MCP服务器
这是一个模型上下文协议(MCP)服务器,提供对 data.gouv.fr API表格。它允许您通过标准化的界面与法国开放数据进行交互。
特性
MCP服务器提供5个主要工具:
get_resource-获取特定资源的元数据和可用端点get_resource_profile-获取详细的列描述、类型和统计信息get_resource_data-通过过滤和排序功能获取分页数据search_resources-在data.gov.fr上搜索数据集和资源get_resource_swagger-获取显示可用过滤器和排序的API文档
安装
地方发展
- 安装依赖项:
yarn install- 构建项目:
yarn build- 启动服务器:
yarn dev服务器将在上运行 http://localhost:8000/mcp 默认情况下。
用法
查找资源ID
要使用大多数工具,您需要一个资源ID(rid)。以下是如何找到一个:
- 首选 data.gov.fr
- 搜索数据集
- 点击数据集
- 转到 元数据 资源选项卡
- 复制资源ID(看起来像:
1c5075ec-7ce1-49cb-ab89-94f507812daf)
示例资源ID
文档使用此示例资源ID来表示电影数据: 1c5075ec-7ce1-49cb-ab89-94f507812daf
工具示例
1.获取资源元数据
{
"tool": "get_resource",
"parameters": {
"rid": "1c5075ec-7ce1-49cb-ab89-94f507812daf"
}
}2.获取资源配置文件
{
"tool": "get_resource_profile",
"parameters": {
"rid": "1c5075ec-7ce1-49cb-ab89-94f507812daf"
}
}3.通过过滤获取资源数据
{
"tool": "get_resource_data",
"parameters": {
"rid": "1c5075ec-7ce1-49cb-ab89-94f507812daf",
"page": 1,
"page_size": 10,
"filters": {
"Producteur__exact": "20th Century Fox"
},
"sort": "Date de sortieau cinéma__sort=desc"
}
}4.搜索资源
{
"tool": "search_resources",
"parameters": {
"query": "films cinéma",
"limit": 5
}
}5.获取API文档
{
"tool": "get_resource_swagger",
"parameters": {
"rid": "1c5075ec-7ce1-49cb-ab89-94f507812daf"
}
}筛选选项
这 get_resource_data 该工具支持多种过滤运算符:
column_name__exact=value-完全匹配column_name__differs=value-不相等column_name__contains=value-包含(用于字符串)column_name__in=value1,value2,value3-在列表中column_name__less=value-小于column_name__greater=value-大于column_name__strictly_less=value-严格小于column_name__strictly_greater=value-严格大于
排序选项
使用 sort 参数为:
column_name__sort=asc-升序column_name__sort=desc-降序
支持的文件格式
API支持以下表格格式:
- CSV(最大100 MB)
- CSV。GZ(最大100 MB)
- XLS(最大50 MB)
- XLSX(最大12.5 MB)
速率限制
API的速率限制为每秒100个请求。
错误处理
该服务器包括全面的错误处理功能,用于:
- 网络超时(30秒)
- HTTP错误
- 资源ID无效
- API速率限制
发展
要在开发模式下运行:
yarn dev为生产而构建:
yarn build要清理构建工件,请执行以下操作:
yarn clean🌐 公共使用
一旦部署,您的MCP服务器将公开可用,任何人都可以使用。用户可以:
- 通过MCP客户端连接 使用您的服务器URL
- 访问法国开放数据 通过标准化的MCP接口
- 使用全部5个工具 用于数据探索和分析
公用服务器使用示例
{
"mcpServers": {
"datagouv-fr": {
"command": "npx",
"args": ["-y", "@huextrat/datagouv-tabular-api-mcp-server"],
"env": {
"MCP_SERVER_URL": "https://your-deployed-server.com/mcp"
}
}
}
}🤝 贡献
欢迎投稿!拜托:
- 分叉存储库
- 创建要素分支
- 进行更改
- 如果适用,添加测试
- 提交拉取请求
📄 许可证
该项目根据MIT许可证获得许可。data.gouv.fr API由法国政府根据开放数据政策提供。
