关于 Dataville
Dataville MCP 服务将十个公开数据集接入统一 API,供 MCP 客户端搜索和查询。它以来源说明、关键词检索及只读 SQL 查询覆盖研究、公共数据和公司信息场景。
主要功能
- 01搜索十个公开数据源
- 02查看来源与 SQL 表说明
- 03按关键词查找记录
- 04执行只读 SQL 查询
- 05支持 CSV 和 Parquet 导出
适用场景
- 01查找 arXiv 论文并获取摘要
- 02检索公司的 SEC 文件
- 03查询美国人口普查数据
- 04查看 USDA 食品营养信息
MCP 相关
该 MCP 服务通过工具向 MCP 客户端开放 Dataville 数据 API,包括来源列表、来源说明、关键词搜索和只读 SQL 查询。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://api.dataville.com/mcpclaude mcp add --transport http com-dataville-dataville https://api.dataville.com/mcp{"mcpServers":{"com-dataville-dataville":{"type":"http","url":"https://api.dataville.com/mcp"}}}在 Cursor 中打开{"servers":{"com-dataville-dataville":{"type":"http","url":"https://api.dataville.com/mcp"}}}在 VS Code 中打开{"mcpServers":{"com-dataville-dataville":{"type":"http","url":"https://api.dataville.com/mcp"}}}{"mcpServers":{"com-dataville-dataville":{"serverUrl":"https://api.dataville.com/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
https://api.dataville.com/mcp需要授权工具
2此工具无需参数。
详细介绍
dataville-mcp
将 Dataville 数据源 API 作为工具提供给 MCP 客户端(Claude Desktop、Claude Code 等)的 MCP 服务。
Dataville 是一个统一的 REST API,可通过单一接口和一个 API 密钥访问十个公共数据集—— Wikipedia、arXiv、Project Gutenberg、US Census、USDA FoodData、Papers with Code、 SEC EDGAR、OpenAlex、PyPI 和 Stack Exchange,并支持 CSV/Parquet 导出和 SQL 查询。 此软件包可让 MCP 客户端通过工具调用搜索这些数据源中的任意一个。
需要 Dataville API 密钥——请前往 Dataville 控制面板获取。
文档:docs.dataville.com · 连接 AI 工具 · 数据源。示例:dataville-wikimedia、dataville-sec-edgar、company-intelligence-agent。在线演示:app.dataville.com/demos。
工具
| 工具 | 功能 |
|---|---|
list_dataville_sources | 列出所有数据源,以及可供查询的 SQL 表(如有)。 |
describe_dataville_source | 查看某个数据源的关键词格式、可用示例及其表的列:{ source }。 |
search_dataville | 按关键词查找一项内容并获取最佳匹配:{ source, keywords, summary? }。 |
query_dataville | 对存储的表执行只读 SQL SELECT,用于列表、筛选、计数、联接和分页(使用 LIMIT/OFFSET):{ sql }。 |
这四种工具都只读取数据。query_dataville 涵盖所有存储的数据源,但 census 和
news 除外;这两个数据源会在每次搜索时实时获取。每次调用最多返回
1,000 行,并按返回行数计费。它读取的是 Dataville 存储的副本:某些数据源会批量加载,其他数据源只存有此前获取的记录,因此查找某个特定条目时,使用 search_dataville 更可靠。
你可以这样提问
连接后,用自然语言提问,客户端会选择数据源:
- “查找一篇关于检索增强生成的 arXiv 论文并总结。”
- “Apple 在最新的 SEC 文件中报告了什么?”
- “根据 US Census,德克萨斯州特拉维斯县的家庭收入中位数是多少?”
- “根据 USDA FoodData,100 g 熟扁豆含有多少蛋白质?”
- “在 PyPI 上查找
requests软件包——最新版本和许可证是什么?” - “列出 Jane Austen 的十本 Project Gutenberg 图书,并附上主题。”
- “列出五条名称中含有 ‘lentils’ 的 USDA FoodData 条目,并附上类别。”
设置
此软件包是一个本地(stdio)MCP 服务:客户端通过 npx 在你的机器上启动它。如果你不需要在本地运行它,改为连接 Dataville 托管的端点只需一行配置,无需安装。
一行连接托管服务(无需安装)
Dataville 也通过 HTTP 直接提供 MCP 服务,因此客户端无需在本地运行任何程序即可连接——不需要 Node、配置文件或重启:
claude mcp add --transport http dataville https://api.dataville.com/mcp
完全无需凭据即可使用(匿名额度有限)。添加
--header "Authorization: Bearer dataville_your_key_here" 即可获得完整额度。Cursor 和 VS Code 用户可以使用此页面顶部的安装按钮。其他客户端使用相同的 URL;应用的 Integrations 页面提供了各客户端对应的准确代码片段。除非你明确需要固定版本或离线使用,否则请使用托管端点——本节其余内容介绍本地设置。
前提条件
- 已安装 Node.js(LTS)——它用于运行
npx。如果没有,服务将无法启动。使用node --version检查。 - Dataville API 密钥——可从 https://app.dataville.com/api-keys 获取。
各处使用的配置块都相同;区别只在于放在哪里:
{
"mcpServers": {
"dataville": {
"command": "npx",
"args": ["-y", "@dataville/dataville-mcp"],
"env": {
"DATAVILLE_API_KEY": "dataville_your_key_here"
}
}
}
}
无需安装步骤——npx 会按需获取并运行软件包。
Claude Desktop
- 打开 Settings → Developer → Edit Config。这会打开
claude_desktop_config.json:- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
- 添加上面的配置块(如果文件中已有
mcpServers,则合并进去), 并填入你的真实密钥。 - 完全退出并重新打开 Claude Desktop——从菜单栏 / 系统托盘退出,不要只是关闭窗口。
- dataville 工具现在会显示在聊天框的工具图标下,且 Settings → Developer 中会显示
dataville正在运行。
注意:该服务显示为工具,而非 Connectors 目录中的连接器——该目录只会列出远程(托管)连接器,无法找到本地服务。像平常一样提出请求(“从 dataville 获取 Apple 最新营收”),客户端就会调用该工具。
Claude Code
claude mcp add dataville -e DATAVILLE_API_KEY=dataville_your_key_here -- npx -y @dataville/dataville-mcp
重启会话以加载工具。添加 -s user,即可让所有项目都能使用,而不仅限于当前项目。
配置
DATAVILLE_API_BASE_URL 是可选项,默认为 https://api.dataville.com;开发期间可将其设为 http://localhost:5000,以指向本地后端。
API 密钥的使用位置
服务会从环境中读取 DATAVILLE_API_KEY,并仅将其作为
Authorization: Bearer 标头发送到 DATAVILLE_API_BASE_URL,除非你更改设置,否则该地址为
https://api.dataville.com。服务绝不会记录密钥,也不会将其发送到其他任何位置。基础 URL 必须使用 https。仅当主机为 localhost、127.0.0.1 和 [::1] 时才接受普通 http,因此密钥不会以未加密的方式通过网络传输。
所有四个工具均为只读:它们会搜索和查询 Dataville,但不会创建、更改或删除任何内容。
从源代码运行
git clone https://github.com/datavilleorg/dataville-mcp.git
cd dataville-mcp
npm install
npm run build
检查是否正常工作
向你的客户端提出以下任一问题。每个答案都刻意设计成可核验的——跳过工具、凭记忆回答的模型听起来同样自信,因此仅凭回答本身无法证明什么。
| 提问 | 可证明之处 |
|---|---|
Which data sources does Dataville have? | 调用 list_dataville_sources 并列出全部 11 个数据源。 |
Using Dataville, what is the latest version of the requests package on PyPI? | 给出一个可在 pypi.org 上确认的版本——版本会变动,因此不可能来自记忆。 |
Using Dataville, get the latest SEC filing for AAPL and its revenue. | 给出表格类型、提交日期、收入数据,以及可打开的 sec.gov 链接。 |
Using Dataville, how much protein is in 100g of uncooked quinoa? | 给出 USDA 的确切数据:每 100 g 含 14.1 g。 |
Using Dataville SQL, list 5 Project Gutenberg books by Mark Twain. | 调用 query_dataville,并返回可在 gutenberg.org/ebooks/ 打开的书名和 Gutenberg ID。 |
客户端会显示工具何时运行。如果看不到相关提示,请在提示词中明确写上“use dataville”,并对照来源核验答案。
开发
npm run dev # tsx watch
npm test # node test runner
npm run build # tsc
发布
发布由 CI 执行。npm 使用可信发布(OIDC),因此不会存储 npm 令牌;MCP Registry 步骤使用 MCP_PRIVATE_KEY 仓库密钥登录。要发布新版本:升级版本号、更新 CHANGELOG.md,然后为新标签发布 GitHub Release。Publish 工作流会构建、测试并发布到 npm,然后将 server.json 发布到 MCP Registry(其版本号取自 package.json,因此不要手动升级)。
注册表名称 com.dataville/dataville-mcp 由 dataville.com 根域名上的 DNS TXT 记录授权(v=MCPv1; k=ed25519; p=<public key>),并通过 MCP_PRIVATE_KEY 仓库密钥(hex)中的 Ed25519 私钥进行验证。如果 mcp-registry 作业在登录时失败,请检查该记录和密钥,然后仅重新运行该作业。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。