数据库管理协议服务器

PocketBase MCP Server是一个允许AI代理与PocketBase实例交互的服务器,提供数据管理和模式管理功能。

  • by tomaslefever
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 tomaslefever/iagents-store-mcp

使用说明

PocketBase MCP服务器

该MCP服务器(Model Context Protocol)允许AI代理与 PocketBase,包括数据管理和模式管理。

🤖 代理能力

通过该MCP,代理可以执行以下操作:

1.模式管理和初始化

  • 读取BD结构:代理可以访问资源 pocketbase://schema 读取文件 pb_schema.json 完成。这使您能够理解:
    • 有哪些收藏(例如: users, products, orders).
    • 字段类型(文本、日期、关系、文件等)。
    • 访问规则(API规则)和验证。
  • 应用架构更改:通过工具 apply_schema,代理可以自动导入在 pb_schema.json 到PocketBase实例。这是理想的:
    • 在空环境中的初始部署。
    • 还原数据库结构。
    • 在不丢失数据的情况下更新现有集合(多亏了无损导入模式)。

2.数据处理(CRUD)

代理完全控制任何集合的记录:

  • 查询数据(get_records):
    • 获取记录列表。
    • 过滤器:使用本地PocketBase语法(例如: status = 'active' && created > '2023-01-01').
    • 排序:对结果进行排序(例如: -created, name).
    • 分页:控制器 page y perPage 处理大量数据。
  • 创建数据(create_record):在任何集合中插入新记录,根据架构验证数据。
  • 更新数据(update_record):使用其ID修改现有记录的特定字段。
  • 删除数据(delete_record):删除单个记录。

3.探索

  • 列出收藏(list_collections):获取当前实例中可用于初始扫描的所有集合的快速列表。

🚀 部署到EasyPanel

该存储库已准备好作为服务部署到EasyPanel中。

  1. 新服务:创建“应用程序”类型的服务或从Git导入。
  2. 环境变量:
    • POCKETBASE_URL:您的PocketBase实例的URL(例如: https://pb.tu-dominio.com o内部 http://pocketbase:8090).
    • POCKETBASE_EMAIL:给管理员发电子邮件。
    • POCKETBASE_PASSWORD:管理员密码。
  3. 码头工人:EasyPanel将自动检测 Dockerfile.

🛠️ 地方发展

  1. npm install
  2. 复制 .env.example 一 .env 调整你的证件。
  3. npm run build
  4. npm start