
Advanced PocketBase MCP Server

2025.01.03
0
JavaScript数据库管理数据操作数据库
Advanced PocketBase MCP Server 是一个高级的 MCP 服务器,专门用于与 PocketBase 数据库进行交互。它提供了丰富的数据库操作功能,包括集合管理、记录操作、用户管理和数据库操作等。该服务器通过 Model Context Protocol (MCP) 实现了高级的数据库操作和数据管理功能。
View on GitHub
Overview
基本能力
产品定位
Advanced PocketBase MCP Server 是一个高级的 MCP 服务器,专门用于与 PocketBase 数据库进行交互。它提供了丰富的数据库操作功能,包括集合管理、记录操作、用户管理和数据库操作等。
核心功能
- 集合管理:创建和管理具有自定义模式的集合,迁移集合模式并保留数据,高级索引管理,模式验证和类型安全,检索集合模式和元数据。
- 记录操作:记录的 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
:创建新用户账户。- 数据库操作:
backup_database
:创建 PocketBase 数据库的备份,支持多种格式。import_data
:以多种模式导入数据(创建/更新/更新插入)。
常见问题解答
- 错误处理:所有工具都包含全面的错误处理,并提供详细的错误消息。错误类型包括无效请求错误、认证错误、数据库操作错误、模式验证错误和网络错误。
- 类型安全:服务器包含所有操作的 TypeScript 定义,确保使用工具时的类型安全。每个工具的输入模式都经过严格类型化和验证。
使用教程
使用依赖
- 安装 Node.js 和 npm。
- 安装 PocketBase 实例。
安装教程
- 克隆仓库:
git clone <repository-url>
- 安装依赖:
npm install
- 复制
.env.example
到.env
并配置:POCKETBASE_URL="http://127.0.0.1:8090" POCKETBASE_ADMIN_EMAIL="[email protected]" POCKETBASE_ADMIN_PASSWORD="yourpassword" POCKETBASE_DATA_DIR="/path/to/data"
- 构建项目:
npm run build
- 启动 PocketBase 实例。
- MCP 服务器将自动连接到您的 PocketBase 实例。
调试方式
- 确保 PocketBase 实例正在运行。
- 检查
.env
文件中的配置是否正确。 - 运行
npm start
启动 MCP 服务器。 - 使用工具进行测试,例如:
typescript await mcp.use_tool("pocketbase", "create_collection", { name: "posts", schema: [ { name: "title", type: "text", required: true }, { name: "content", type: "text", required: true } ] });
- 检查控制台输出以查看是否有错误消息。