pocketbase-mcp
pocketbase-mcp
PocketBase 用の Model Context Protocol (MCP) サーバーです。ClaudeのようなAIアシスタントに、クリーンでPythonライクなインターフェースを通じてPocketBaseバックエンドへのフルアクセスを提供します。
概要
pocketbase-mcp は、LLMとPocketBaseインスタンスの橋渡しをします。接続すると、AIアシスタントはコレクションのリスト表示、レコードのCRUD操作、認証管理、ファイルアップロード、データベース管理をすべて自然言語で行えるようになります。
FastMCP(標準的なPython MCPフレームワーク)と、PocketBase REST APIとの非同期HTTP通信を行う httpx を使用して構築されています。
Related MCP server: PocketBase MCP Server
機能
レコード — あらゆるコレクション内のレコードのリスト表示、取得、作成、更新、削除、およびバッチ操作
コレクション — コレクションスキーマのリスト表示、検査、作成、更新、削除
認証 — メールアドレス/パスワードまたはAPIキーによるスーパーユーザーまたは一般ユーザーとしての認証
ファイル — ファイルトークンの生成およびオプションの画像変換を伴うファイルURLの取得
設定 — アプリケーション設定の読み取りと更新
フィルタリングとページネーション — PocketBaseのフィルタ式、ソート、展開、ページネーションパラメータを直接渡すことが可能
リアルタイム対応 — 将来的な拡張を見据え、SSEサブスクリプションパターンを考慮して設計
要件
Python 3.11以上
実行中のPocketBaseインスタンス(ローカルまたはリモート)
uv(推奨)またはpip
インストール
pipを使用する場合
pip install pocketbase-mcp設定
サーバーは環境変数を通じて設定されます:
変数 | 必須 | デフォルト | 説明 |
| はい | — | PocketBaseインスタンスのベースURL(例: |
| いいえ | — | 管理操作用のスーパーユーザーメールアドレス |
| いいえ | — | スーパーユーザーパスワード |
| いいえ | — | 長期間有効なAPIキー(メール/パスワードの代わり) |
.envファイルに設定するか、直接エクスポートしてください:
export POCKETBASE_URL=http://127.0.0.1:8090
export POCKETBASE_SUPERUSER_EMAIL=admin@example.com
export POCKETBASE_SUPERUSER_PASSWORD=your-passwordサーバーの実行
stdioトランスポート(デフォルト — Claude Desktop、Claude Codeなど用)
pocketmcpMCP Inspectorを使用する場合(開発およびテスト用)
# Terminal 1
pocketmcp
# Terminal 2
npx @modelcontextprotocol/inspector
# Connect to: http://localhost:8000/mcpClaudeへの接続
Claude Desktop
claude_desktop_config.json に以下を追加してください:
{
"mcpServers": {
"pocketbase": {
"command": "uv",
"args": ["run", "/absolute/path/to/pocketbase-mcp/server.py"],
"env": {
"POCKETBASE_URL": "http://127.0.0.1:8090",
"POCKETBASE_SUPERUSER_EMAIL": "admin@example.com",
"POCKETBASE_SUPERUSER_PASSWORD": "your-password"
}
}
}
}利用可能なツール
レコード
ツール | 説明 |
| フィルタリング、ソート、ページネーションを使用してコレクション内のレコードをリスト表示 |
| IDで単一のレコードを取得 |
| 新しいレコードを作成 |
| 既存のレコードを更新 |
| IDでレコードを削除 |
| 1つのリクエストで複数の作成/更新/アップサート/削除操作を実行 |
コレクション
ツール | 説明 |
| すべてのコレクションをリスト表示 |
| 名前またはIDでコレクションスキーマを取得 |
| フィールドとAPIルールを指定して新しいコレクションを作成 |
| コレクションのスキーマまたはルールを更新 |
| コレクションを削除 |
認証
ツール | 説明 |
| メールアドレスとパスワードでユーザーまたはスーパーユーザーを認証 |
| 長期間有効なAPIキーを使用して認証 |
| 現在の認証状態を返す |
ファイル
ツール | 説明 |
| レコードに添付されたファイルのURLを生成 |
| 保護されたファイルにアクセスするための短期間有効なトークンを作成 |
設定
ツール | 説明 |
| すべてのアプリケーション設定を取得 |
| アプリケーション設定を更新 |
プロジェクト構造
pocketbase-mcp/
├── server.py # MCP server entry point (FastMCP)
├── tools/
│ ├── records.py # Record CRUD tools
│ ├── collections.py # Collection management tools
│ ├── auth.py # Authentication tools
│ ├── files.py # File tools
│ └── settings.py # Settings tools
├── client.py # Async PocketBase HTTP client (httpx)
├── config.py # Environment variable loading
├── pyproject.toml
└── README.md使用例
Claudeに接続すると、自然言語を通じてPocketBaseインスタンスと対話できます:
「
postsコレクション内のstatus = 'published'であるすべてのレコードを、createdの降順でリスト表示して。」
「
usersに名前が'Alice'、ロールが'editor'の新しいレコードを作成して。」
「
productsコレクションのスキーマを見せて。」
「
commentsからIDがae40239d2bc4477のレコードを削除して。」
「PocketBaseの設定でアプリ名を'My App'に更新して。」
PocketBaseの互換性
このMCPサーバーは PocketBase v0.36.9+ を対象としています。バッチAPIを使用するには、PocketBaseダッシュボードの Settings → Application で明示的に有効にする必要があります。
セキュリティ上の注意
認証情報をバージョン管理にコミットしないでください。環境変数または
.envファイルを使用してください(.envを.gitignoreに追加してください)。本番環境へのデプロイでは、メール/パスワード認証よりもAPIキー認証を優先してください。
PocketBaseのコレクションAPIルールは、認証されたユーザーが実際にアクセスできる内容を制御します。
pocketbase-mcpはこれらのルールを尊重します。
貢献
貢献を歓迎します!大幅な変更を行う場合は、プルリクエストを送信する前にIssueを作成してください。
リポジトリをフォーク
フィーチャーブランチを作成 (
git checkout -b feat/my-feature)変更をコミット
プルリクエストを作成
ライセンス
MITライセンス。詳細は LICENSE を参照してください。
This server cannot be deployed
Maintenance
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Model Context Protocol server for the Apideck Unified API. Connect any MCP-compatible agent framework to 100+ accounting systems, HRIS platforms, file storage providers, and more through one integration. More information https://www.apideck.com/mcp-server
A Model Context Protocol server for Wix AI tools
API-first CRM for LLMs - contacts, companies, deals and activities over a native MCP server.
Related MCP Servers
- AlicenseDqualityNot gradedmaintenanceA comprehensive MCP server that provides sophisticated tools for interacting with PocketBase databases. This server enables advanced database operations, schema management, and data manipulation through the Model Context Protocol (MCP).14826 npm70MIT
- AlicenseNot gradedqualityDmaintenanceA comprehensive server that enables advanced database operations with PocketBase, providing tools for collection management, record operations, user management, and database administration through the Model Context Protocol.826 npmMIT
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that enables Claude AI to interact with PocketBase databases by listing and accessing collections through natural language.7 npm1MIT
- -licenseBqualityNot gradedmaintenanceA comprehensive Model Context Protocol server for PocketBase that provides both user and administrative functionality, enabling authentication, collection/record management, file operations, and system administration through a standardized interface.387 npm-