
Advanced PocketBase MCP Server

2025.03.22
1
JavaScript数据库管理数据操作用户认证数据库
pocketbase-mcp-server 是一个基于 Model Context Protocol (MCP) 的高级 PocketBase 数据库服务,提供了一系列强大的工具来管理和操作 PocketBase 数据库。它支持集合管理、记录操作、用户管理和数据库操作等核心功能,适用于需要高级数据库管理和数据操作的场景。
View on GitHub
Overview
产品定位
pocketbase-mcp-server 是一个专门为 PocketBase 数据库设计的 MCP 服务,旨在提供高级的数据库操作和管理功能。
核心功能
- 集合管理:创建和管理带有自定义模式的集合,支持模式迁移、索引管理和模式验证。
- 记录操作:支持记录的增删改查(CRUD),高级查询(过滤、排序、聚合),批量导入/导出。
- 用户管理:用户认证、令牌管理、账户管理、基于角色的访问控制和会话处理。
- 数据库操作:数据库备份和恢复,支持多种导出格式(JSON/CSV),数据迁移工具和批量操作。
适用场景
- 需要高级数据库管理和操作的应用程序。
- 需要复杂查询和数据聚合的业务场景。
- 需要用户认证和权限管理的系统。
- 需要数据迁移和备份的数据库维护任务。
工具列表
- 集合管理工具:
create_collection
:创建带有自定义模式的新集合。get_collection_schema
:获取集合的模式详情。migrate_collection
:迁移集合模式并保留数据。manage_indexes
:创建、删除或列出集合索引。- 记录操作工具:
create_record
:在集合中创建新记录。list_records
:列出记录,支持过滤和分页。update_record
:更新现有记录。delete_record
:删除记录。query_collection
:高级查询,支持过滤、排序和聚合。import_data
:将数据导入集合,支持创建/更新/插入模式。- 用户管理工具:
authenticate_user
:认证用户并获取认证令牌。create_user
:创建新用户账户。list_auth_methods
:列出所有可用的认证方法。authenticate_with_oauth2
:使用 OAuth2 认证用户。authenticate_with_otp
:使用一次性密码认证用户。- 数据库操作工具:
backup_database
:创建 PocketBase 数据库的备份,支持多种格式。import_data
:导入数据,支持多种模式。
常见问题解答
- 如何配置服务器?
- 需要设置环境变量
POCKETBASE_URL
为 PocketBase 实例的 URL。 - 可选环境变量包括
POCKETBASE_ADMIN_EMAIL
、POCKETBASE_ADMIN_PASSWORD
和POCKETBASE_DATA_DIR
。 - 如何安装?
- 可以通过 Smithery 自动安装:
npx -y @smithery/cli install pocketbase-server --client claude
。 - 如何开发?
- 克隆仓库,安装依赖,配置
.env
文件,构建并启动 PocketBase 实例。
使用教程
使用依赖
- 确保已安装 Node.js 和 npm。
- 确保已安装 PocketBase 实例并运行。
安装教程
- 通过 Smithery 安装:
bash npx -y @smithery/cli install pocketbase-server --client claude
- 或手动安装:
- 克隆仓库:
git clone <repository-url>
- 安装依赖:
npm install
- 配置
.env
文件:cp .env.example .env
- 构建:
npm run build
调试方式
- 启动 PocketBase 实例。
- 确保 MCP 服务器已连接到 PocketBase 实例。
- 使用提供的工具进行测试,例如:
typescript await mcp.use_tool("pocketbase", "create_collection", { name: "posts", schema: [ { name: "title", type: "text", required: true } ] });
- 检查错误日志以解决任何问题。