PocketBase MCP Server

by mrwyndham
Verified

local-only server

The server can only run on the client’s local machine because it depends on local resources.

Integrations

  • Provides sophisticated tools for interacting with PocketBase databases, enabling collection management, record operations (CRUD with relationship support), user authentication, and database backup capabilities.

PocketBase MCP 服务器

一个基于 Dynamics 的 MCP 服务器,目前正在进行测试和改进。它提供了与 PocketBase 数据库交互的复杂工具。该服务器通过模型上下文协议 (MCP) 支持高级数据库操作、模式管理和数据操作。

为什么是这个而不是 DynamicsEndpoints?

这实际上已经在最新版本上测试过了。目前是 PocketBase 26.1 版本,它基于 JS-SDK 中的类型定义构建,而不是 Dynamics 中那些随意且错误的定义。很多方法甚至都无法正常工作。

本地设置 MCP 服务器(目前唯一支持的方式)

要在本地设置 MCP 服务器,您需要在cline_mcp_settings.json或您使用的任何文件(claude、cursor 等,配置看起来完全一样,您只需找到它的存储位置)中进行配置。操作方法如下:

  1. **找到你的cline_mcp_settings.json文件:**此文件通常位于你的 Cursor 用户设置目录中。例如: /Users/yourusername/Library/Application Support/Cursor/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
  2. **配置服务器:**cline_mcp_settings.json文件中的mcpServers对象中添加一个新条目。该条目的键应为服务器的唯一名称(例如,“pocketbase-server”),值应为包含服务器配置的对象。
    { "mcpServers": { "pocketbase-server": { "command": "node", "args": [ "build/index.js" ], "env": { "POCKETBASE_URL": "http://127.0.0.1:8090", "POCKETBASE_ADMIN_EMAIL": "admin@example.com", "POCKETBASE_ADMIN_PASSWORD": "admin_password" }, "disabled": false, "autoApprove": [ "create_record", "create_collection" ] } } }
    • command :启动服务器的命令(通常是node )。
    • args :传递给命令的参数数组。它应该指向 MCP 服务器已编译的 JavaScript 文件(例如build/index.js )。请确保路径正确。
    • env :包含环境变量的对象。
      • POCKETBASE_URL :你的 PocketBase 实例的 URL。此参数为必填项
      • POCKETBASE_ADMIN_EMAIL :您的 PocketBase 实例的管理员电子邮件(可选,但某些操作需要)。
      • POCKETBASE_ADMIN_PASSWORD :您的 PocketBase 实例的管理员密码(可选,但某些操作需要)。
    • disabled :是否在启动时禁用服务器。
    • autoApprove :自动批准的工具列表。
    • 调整env对象中的值以匹配您的 PocketBase 实例的设置。
  3. **启动服务器:**配置cline_mcp_settings.json文件后,您可以开始使用已配置的工具来使用 MCP 服务器。

特征

收藏管理

  • 使用自定义架构创建和管理集合
  • 检索集合架构和元数据

记录操作

  • 记录的 CRUD 操作
  • 关系扩展支持
  • 分页和基于光标的导航

用户管理

  • 用户身份验证和令牌管理
  • 用户帐户创建和管理
  • 密码管理

数据库操作

  • 数据库备份

可用工具

收藏管理

  • create_collection :使用自定义架构创建新集合
  • get_collection :获取集合的架构详细信息

记录操作

  • create_record :在集合中创建新记录
  • list_records :列出带有可选过滤器和分页的记录
  • update_record :更新现有记录
  • delete_record :删除记录

用户管理

  • authenticate_user :验证用户并获取身份验证令牌
  • create_user :创建一个新的用户帐户

数据库操作

  • backup_database :使用格式选项创建 PocketBase 数据库的备份

配置

服务器需要以下环境变量:

可选的环境变量:

  • POCKETBASE_ADMIN_EMAIL :用于某些操作的管理员电子邮件
  • POCKETBASE_ADMIN_PASSWORD :管理员密码
  • POCKETBASE_DATA_DIR :自定义数据目录路径

使用示例

// Create a new collection await mcp.use_tool("pocketbase", "create_collection", { name: "posts", schema: [ { name: "title", type: "text", required: true }, { name: "content", type: "text", required: true } ] }); // Authenticate with password await mcp.use_tool("pocketbase", "authenticate_user", { email: "user@example.com", password: "securepassword", collection: "users" });

贡献

  1. 分叉存储库
  2. 创建功能分支
  3. 提交你的更改
  4. 推送到分支
  5. 创建拉取请求
-
security - not tested
A
license - permissive license
-
quality - not tested

提供与 PocketBase 数据库交互的复杂工具,通过模型上下文协议 (MCP) 实现高级数据库操作、模式管理和数据操作。

  1. Why This And Not DynamicsEndpoints?
    1. Setup MCP Server Locally (Only Way Supported for Now)
      1. Features
        1. Collection Management
        2. Record Operations
        3. User Management
        4. Database Operations
      2. Available Tools
        1. Collection Management
        2. Record Operations
        3. User Management
        4. Database Operations
      3. Configuration
        1. Usage Examples
          1. Contributing
            ID: yl358xn6n9