mcpField
M
Model Context Protocol and Fireproof Demo: JSON Document Collection Server

Model Context Protocol and Fireproof Demo: JSON Document Collection Server

本地服务
github.com/jimpick数据库095 周前更新

关于 Model Context Protocol and Fireproof Demo: JSON Document Collection Server

这是一个基于 Fireproof 管理多个 JSON 文档数据库的 MCP 服务示例,适合将结构化数据接入 AI 系统;支持文档增删改查、按字段排序查询及通过 Fireproof Cloud 共享数据库。

主要功能

  1. 01创建多个 JSON 文档数据库
  2. 02对文档执行增删改查
  3. 03按任意字段查询和排序
  4. 04通过 Fireproof Cloud 共享数据库

适用场景

  1. 01按主题分别存储文档集合
  2. 02添加、更新或删除 JSON 文档
  3. 03按字段排序检索文档
  4. 04通过 Fireproof Cloud 共享数据库

MCP 相关

该服务向 MCP 客户端提供数据库创建、文档增删改查、查询、排序和云端共享能力。README 介绍了在 Claude Desktop 中配置此服务。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"json-db-collection-server": {
"command": "npx",
"args": [
"-y",
"@jimpick/mcp-json-db-collection-server"
]
}
}
}
启动命令npx -y @jimpick/mcp-json-db-collection-server

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@jimpick/mcp-json-db-collection-server

工具

8

收录的工具列表 · 更新于 3 周前

参数类型必填说明
databaseNamestring是

详细介绍

模型上下文协议与 Fireproof 演示:JSON 文档集合服务

Fireproof ❤️ MCP

这是一个示例,展示如何在 模型上下文协议 服务中使用 Fireproof 数据库(用于将代码和数据接入 Claude Desktop 等 AI 系统)。

此服务:

  • 允许创建多个“JSON 文档数据库”(使用 Fireproof 实现)
  • 在任意数据库中实现基本的 CRUD 操作(创建、读取、更新、删除),并支持按任意字段排序查询文档。
  • 允许使用 Fireproof Cloud 服务和控制面板与他人共享任意数据库

前期项目:此项目基于 https://github.com/fireproof-storage/mcp-database-server,并新增了多数据库支持以及同步到云端的功能。

运行服务

首先,构建它:

npm install
npm build

要在 Claude Desktop 中使用,请添加服务配置:

在 MacOS 上:~/Library/Application Support/Claude/claude_desktop_config.json

在 Windows 上:%APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "json-db-collections": {
      "command": "<base-dir>/mcp-json-db-collection-server/build/index.js"
    }
  }
}

Claude Desktop 聊天会话示例

下面是使用 Claude Desktop 创建 3 个文档数据库并将它们同步到云端的示例会话:

1. 聊天会话:元素数据库

human(2024 年 12 月 29 日,03:59 PM)

创建一个名为 elements 的 JSON 文档数据库

assistant(2024 年 12 月 29 日,04:00 PM)

我来帮你创建一个名为“elements”的 JSON 文档数据库。

数据库已成功创建。你现在可以使用此数据库存储和管理 JSON 文档。要向其中添加文档吗?

human(2024 年 12 月 29 日,04:00 PM)

将元素周期表中的稀有气体作为单独的文档添加进去

assistant(2024 年 12 月 29 日,04:00 PM)

我来帮你将稀有气体作为单独的文档添加到 elements 数据库中。我会为每种稀有气体添加关键属性。

我已将七种稀有气体(氦、氖、氩、氪、氙、氡和鿫)全部添加到数据库中。每种元素都包含以下信息:

  • 名称和符号
  • 原子序数和原子质量
  • 周期、族和区
  • 电子排布
  • 熔点和沸点(单位为开尔文)
  • 密度(单位为 g/cm³)

请注意,鿫的某些物理性质标记为 null,因为它是一种合成元素,半衰期极短,其性质尚未通过实验准确测定。

你想从数据库中查询这些稀有气体的哪些具体信息吗?

human(2024 年 12 月 29 日,04:01 PM)

显示文档

assistant(2024 年 12 月 29 日,04:01 PM)

我来查询 elements 数据库中的所有文档,并按原子序数排序。

以下是数据库中的所有稀有气体,按原子序数从高到低排列:

  1. 鿫(Og)— 元素 118
  2. 氡(Rn)— 元素 86
  3. 氙(Xe)— 元素 54
  4. 氪(Kr)— 元素 36
  5. 氩(Ar)— 元素 18
  6. 氖(Ne)— 元素 10
  7. 氦(He)— 元素 2

每个文档都包含该元素的详细信息,包括原子质量、密度、熔点和沸点(已知时),以及电子排布。你想查看哪些具体性质,或比较这些元素的哪些方面吗?

2. 聊天会话:曲奇原料数据库

用户(Dec 29, 2024, 04:01 PM)

创建名为 cookie_ingredients 的 JSON 文档数据库

助手(Dec 29, 2024, 04:01 PM)

我将创建一个名为 "cookie_ingredients" 的新 JSON 文档数据库。

数据库已成功创建。你想在其中添加一些原料吗?

用户(Dec 29, 2024, 04:02 PM)

将巧克力豆曲奇食谱中的原料作为单独的文档添加进去

助手(Dec 29, 2024, 04:02 PM)

我将把巧克力豆曲奇的常见原料作为单独的文档添加,并附上它们的常用用量和属性。

我已为经典巧克力豆曲奇食谱添加了所有必需原料。每种原料都包含:

  • 名称和用量
  • 计量单位
  • 类型(干性、湿性、膨松剂等)
  • 在食谱中的作用
  • 可能的替代品
  • 重量计量
  • 使用注意事项

你想从数据库中查询这些原料的特定信息吗?

用户(Dec 29, 2024, 04:02 PM)

以表格形式显示原料

助手(Dec 29, 2024, 04:03 PM)

我将查询原料并将其整理为 Markdown 表格。

原料用量单位类型作用重量/单位
通用面粉2¼杯干性形成结构120g/杯
无盐黄油1杯脂肪口感和风味227g/杯
砂糖¾杯甜味剂甜味和口感200g/杯
红糖¾杯甜味剂保湿和风味220g/杯
大鸡蛋2个黏合剂形成结构并增加浓郁口感每个 50g
香草精1茶匙调味料提升风味5g/茶匙
盐1茶匙调味料提升风味6g/茶匙
小苏打1茶匙膨松剂使饼干膨起并摊开4.8g/茶匙
巧克力豆2杯混入原料风味和口感170g/杯

我已按类型整理原料,并列出了用量、单位、作用和重量计量。你想查看任何特定原料的更多详情吗?

3. 聊天会话:马匹品种数据库

用户(Dec 29, 2024, 04:03 PM)

创建名为 horse_breeds 的新 JSON 文档数据库

助手(Dec 29, 2024, 04:03 PM)

我将创建一个用于存储马匹品种的新 JSON 文档数据库。

数据库已成功创建。你想在其中添加一些马匹品种吗?

用户(Dec 29, 2024, 04:03 PM)

是

助手(Dec 29, 2024, 04:04 PM)

我将添加几种常见马匹品种,并附上它们的主要特征、起源和典型用途。

我已向数据库添加了六种各具特色的马匹品种:

  1. 阿拉伯马——以耐力和优雅著称
  2. 纯血马——以赛马能力和运动天赋闻名
  3. 克莱兹代尔马——强壮的挽马
  4. 夸特马——美国用途广泛的牧场马
  5. 弗里斯兰马——来自荷兰的优雅黑马
  6. 阿帕卢萨马——以斑点花纹和美洲原住民文化渊源著称

每条记录都包含以下信息:

  • 起源和类型
  • 身高范围(以掌为单位——1 掌 = 4 英寸)
  • 常见毛色
  • 身体特征
  • 典型用途
  • 性情
  • 显著特征

你想以特定方式查看这些信息,或了解某个特定品种的更多信息吗?

4. 聊天会话:同步到云端

human(2024 年 12 月 29 日,下午 04:04)

列出 JSON 文档数据库

assistant(2024 年 12 月 29 日,下午 04:04)

我来列出已创建的所有 JSON 文档数据库。

目前有三个 JSON 文档数据库:

  1. horse_breeds
  2. elements
  3. cookie_ingredients

每个数据库都包含与其特定主题相关的文档:

  • horse_breeds 包含不同马匹品种的信息
  • elements 包含稀有气体的数据
  • cookie_ingredients 包含巧克力豆曲奇原料的详细信息

你想查询这些数据库中的特定信息吗?

human(2024 年 12 月 29 日,下午 04:04)

将 horse_breeds 同步到云端

assistant(2024 年 12 月 29 日,下午 04:04)

我来帮你将 horse_breeds 数据库连接到云同步服务。

horse_breeds 数据库已成功连接到云端。你可以使用上方提供的 URL 访问控制面板。通过云端界面,你可以查看和管理马匹品种数据。你还想将其他数据库同步到云端吗?

human(2024 年 12 月 29 日,下午 04:05)

显示 URL

assistant(2024 年 12 月 29 日,下午 04:05)

以下是 horse_breeds 数据库的控制面板 URL:

https://dashboard.fireproof.storage/fp/databases/connect?endpoint=fireproof%3A%2F%2Fcloud.fireproof.direct%2F&localName=horse_breeds&remoteName=019414e1-2db0-70aa-b9a4-2e2f78a7adce

你可以使用此 URL 通过云端界面访问和管理马匹品种数据。

human(2024 年 12 月 29 日,下午 04:05)

将 elements 数据库同步到云端

assistant(2024 年 12 月 29 日,下午 04:05)

我来将 elements 数据库连接到云同步服务。

elements 数据库已成功连接到云端。你可以通过以下 URL 访问控制面板:

https://dashboard.fireproof.storage/fp/databases/connect?endpoint=fireproof%3A%2F%2Fcloud.fireproof.direct%2F&localName=elements&remoteName=019414e1-db52-75e7-b8d0-21ce605176a7

你还想同步 cookie_ingredients 数据库吗?

human(2024 年 12 月 29 日,下午 04:05)

想

assistant(2024 年 12 月 29 日,下午 04:05)

我来将 cookie_ingredients 数据库连接到云同步服务。

以下是 cookie_ingredients 数据库的控制面板 URL:

https://dashboard.fireproof.storage/fp/databases/connect?endpoint=fireproof%3A%2F%2Fcloud.fireproof.direct%2F&localName=cookie_ingredients&remoteName=019414e2-1f47-72d7-bf8f-a721d29a24c7

现在,三个数据库(horse_breeds、elements 和 cookie_ingredients)都已同步到云端,可通过各自的控制面板 URL 访问。

5. 聊天会话:清理

human(2024 年 12 月 29 日,下午 04:06)

删除所有数据库

assistant(2024 年 12 月 29 日,下午 04:06)

我来帮你删除所有三个数据库。

所有三个数据库均已成功删除:

  1. horse_breeds
  2. elements
  3. cookie_ingredients

我来确认它们是否都已删除。

已确认,系统中没有剩余数据库。你想创建新数据库吗?

转换为 Markdown 的工具:https://simonwillison.net/2024/Aug/8/convert-claude-json-to-markdown/

未来开发构想

  • 提示词
  • 资源
  • 支持带权限的多用户
  • 索引
  • 使用 Firebase npm 库,通过 Claude Desktop 生成静态网站

开发

pnpm install
pnpm build
pnpm run inspector
# To reset, do: rm -rf ~/.fireproof /tmp/dist

~/Library/Application\ Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "json-db-collections": {
      "command": "<base-dir>/mcp-json-db-collection-server/build/index.js"
    }
  }
}

许可证

MIT 或 Apache 2

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。