{"_id":"@alexruck/pocketbase-mcp-server","_rev":"3-c7f888598d1f95ab07fd13f536d06fef","name":"@alexruck/pocketbase-mcp-server","dist-tags":{"dev":"0.0.0-development","latest":"1.1.0"},"versions":{"0.0.0-development":{"name":"@alexruck/pocketbase-mcp-server","version":"0.0.0-development","keywords":["mcp","modelcontextprotocol","pocketbase","backend","database","admin"],"license":"MIT","_id":"@alexruck/pocketbase-mcp-server@0.0.0-development","maintainers":[{"name":"alexruck","email":"alexruck@outlook.de"}],"bin":{"pocketbase-mcp-server":"dist/index.js"},"dist":{"shasum":"76cd788e30982fb60ff85b5ff81cb8cb0c70941e","tarball":"https://registry.npmjs.org/@alexruck/pocketbase-mcp-server/-/pocketbase-mcp-server-0.0.0-development.tgz","fileCount":47,"integrity":"sha512-6uWC6QckyW6ozmBhEbL388w3FK/UWqcnKVC7SZR5t0JINKEm1aXIh3QcqyI+AN+FlQ+hflpkHuR9bbUVF2W3kA==","signatures":[{"sig":"MEQCIGE6wiG/h53PwHPz035T/hs1BwQr/iOjBcEm4MtUG7oSAiBD6SEhEEj4VTklIsCjB/SHKfg9/7/SMV8Bw9mPIJRF+w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":62236},"type":"module","engines":{"node":">=20"},"gitHead":"c7771064ebea5be2bd68b23459af84f70214c474","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc && shx chmod +x dist/*.js","start":"node dist/index.js","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"alexruck","email":"alexruck@outlook.de"},"_npmVersion":"11.14.1","description":"MCP server for PocketBase - exposes the full PocketBase JS SDK as MCP tools","directories":{},"_nodeVersion":"24.15.0","dependencies":{"zod":"^4.2.0","pocketbase":"^0.27.0","@modelcontextprotocol/server":"^2.0.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4.0","vitest":"^3.0.0","typescript":"^5.8.0","@types/node":"^22.0.0","semantic-release":"^24.0.0","@semantic-release/npm":"^12.0.0","@semantic-release/github":"^11.0.0","@semantic-release/commit-analyzer":"^13.0.0","@semantic-release/release-notes-generator":"^14.0.0"},"_npmOperationalInternal":{"tmp":"tmp/pocketbase-mcp-server_0.0.0-development_1786183584427_0.4419473515553738","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@alexruck/pocketbase-mcp-server","version":"1.0.1","keywords":["mcp","modelcontextprotocol","pocketbase","backend","database","admin"],"license":"MIT","_id":"@alexruck/pocketbase-mcp-server@1.0.1","maintainers":[{"name":"alexruck","email":"alexruck@outlook.de"}],"bin":{"pocketbase-mcp-server":"dist/index.js"},"dist":{"shasum":"cd58f11cfb065c909122a78ccddb979e2a210248","tarball":"https://registry.npmjs.org/@alexruck/pocketbase-mcp-server/-/pocketbase-mcp-server-1.0.1.tgz","fileCount":47,"integrity":"sha512-y1jFCSj3fku24V5I/9aR8ZENPKF2mkm9SrqZYSwVmrn23wPpKLk7AXa6c8ZQ3ZBwgUvlnaeobKvRIscByB10dw==","signatures":[{"sig":"MEQCIAJ3XWCg0i3H1OxL3gh+8yP0btizgweoHsmMAH0D4aWLAiBO4ZNkDhI7vkPagTZTI0HmktXh+i56BbTG3NQl4Phceg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":62224},"type":"module","engines":{"node":">=20"},"gitHead":"e15afa48e750f064dbe5ae51669371946418367e","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc && shx chmod +x dist/*.js","start":"node dist/index.js","typecheck":"tsc --noEmit","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f9513a44-32de-4657-8af4-ddaee78d4ee8"}},"_npmVersion":"11.19.0","description":"MCP server for PocketBase - exposes the full PocketBase JS SDK as MCP tools","directories":{},"_nodeVersion":"22.23.1","dependencies":{"zod":"^4.2.0","pocketbase":"^0.27.0","@modelcontextprotocol/server":"^2.0.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4.0","vitest":"^3.0.0","typescript":"^5.8.0","@types/node":"^22.0.0","semantic-release":"^25.0.0","@semantic-release/npm":"^13.0.0","@semantic-release/github":"^12.0.0","@semantic-release/commit-analyzer":"^13.0.0","@semantic-release/release-notes-generator":"^14.0.0"},"_npmOperationalInternal":{"tmp":"tmp/pocketbase-mcp-server_1.0.1_1786209831481_0.2997259792667468","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@alexruck/pocketbase-mcp-server","version":"1.1.0","description":"MCP server for PocketBase - exposes the full PocketBase JS SDK as MCP tools","type":"module","bin":{"pocketbase-mcp-server":"dist/index.js"},"scripts":{"build":"tsc && shx chmod +x dist/*.js","dev":"tsc --watch","typecheck":"tsc --noEmit","test":"vitest run","test:watch":"vitest","start":"node dist/index.js","prepublishOnly":"npm run build"},"keywords":["mcp","modelcontextprotocol","pocketbase","backend","database","admin"],"license":"MIT","engines":{"node":">=20"},"dependencies":{"@modelcontextprotocol/server":"^2.0.0","pocketbase":"^0.27.0","zod":"^4.2.0"},"devDependencies":{"@semantic-release/changelog":"^7.0.0","@semantic-release/commit-analyzer":"^13.0.0","@semantic-release/github":"^12.0.0","@semantic-release/npm":"^13.0.0","@semantic-release/release-notes-generator":"^14.0.0","@types/node":"^22.0.0","semantic-release":"^25.0.0","shx":"^0.4.0","typescript":"^5.8.0","vitest":"^3.0.0"},"gitHead":"194eef9581a40d798c7556df9d50dd027fac1415","_id":"@alexruck/pocketbase-mcp-server@1.1.0","_nodeVersion":"22.23.1","_npmVersion":"11.19.0","dist":{"integrity":"sha512-MTgn+hNlvZR07sw19adg/BisAlZGmsQeZTQYTmqiIviz8E+Wg/z3Kq5TH6UathzREssnGzALKCcxjytQ6o1MRQ==","shasum":"dad4bac5b7cc54c637ab3242bb99d8763cc907b9","tarball":"https://registry.npmjs.org/@alexruck/pocketbase-mcp-server/-/pocketbase-mcp-server-1.1.0.tgz","fileCount":47,"unpackedSize":69714,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCRH6LxwkrmfRWZ0DRbLo9S3oPwBPhN40SgIvfHNcYR6AIgfJTPdQ/a2nD0CtEReJ/r4JkzXMvq0h50tyddth764Jo="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f9513a44-32de-4657-8af4-ddaee78d4ee8"}},"directories":{},"maintainers":[{"name":"alexruck","email":"alexruck@outlook.de"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/pocketbase-mcp-server_1.1.0_1786211493853_0.4749518174628118"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-08T10:06:24.161Z","modified":"2026-08-08T17:51:34.132Z","0.0.0-development":"2026-08-08T10:06:24.586Z","1.0.1":"2026-08-08T17:23:51.649Z","1.1.0":"2026-08-08T17:51:33.988Z"},"license":"MIT","keywords":["mcp","modelcontextprotocol","pocketbase","backend","database","admin"],"description":"MCP server for PocketBase - exposes the full PocketBase JS SDK as MCP tools","maintainers":[{"name":"alexruck","email":"alexruck@outlook.de"}],"readme":"# pocketbase-mcp-server\n\nMCP (Model Context Protocol) server for [PocketBase](https://pocketbase.io/) — exposes the full PocketBase JS SDK as MCP tools for AI-powered database management.\n\n## Features\n\n- **51 MCP tools** covering the entire PocketBase JS SDK\n- **Admin operations**: collection management, settings, logs, backups, crons, SQL\n- **Record CRUD**: create, read, update, delete with filtering, sorting, and pagination\n- **Authentication**: password auth, OAuth2, OTP, impersonation, token refresh, verification, email change flows\n- **Batch operations**: transactional multi-record operations across collections\n- **MCP Resources**: collection schemas, health, and settings exposed as ambient context\n- **Full TypeScript** with strict type checking\n\n## Installation\n\n```bash\nnpm install -g pocketbase-mcp-server\n```\n\n## Configuration\n\nAdd to your MCP client configuration (e.g., `mcp.json`, Claude Desktop config, etc.):\n\n```json\n{\n  \"mcpServers\": {\n    \"pocketbase\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"pocketbase-mcp-server\"],\n      \"env\": {\n        \"POCKETBASE_URL\": \"http://localhost:8090\",\n        \"POCKETBASE_ADMIN_EMAIL\": \"admin@example.com\",\n        \"POCKETBASE_ADMIN_PASSWORD\": \"your-password\"\n      }\n    }\n  }\n}\n```\n\n### Environment Variables\n\n| Variable | Required | Description |\n|----------|----------|-------------|\n| `POCKETBASE_URL` | Yes | Your PocketBase instance URL |\n| `POCKETBASE_ADMIN_EMAIL` | Yes | Superuser/admin email |\n| `POCKETBASE_ADMIN_PASSWORD` | Yes | Superuser/admin password |\n\n## Available Tools\n\n### Collections (Admin)\n\n| Tool | Description |\n|------|-------------|\n| `pb_collections_list` | List collections with pagination and filtering |\n| `pb_collections_get` | Get a single collection by name or ID |\n| `pb_collections_create` | Create a new collection (base, auth, or view) |\n| `pb_collections_update` | Update an existing collection |\n| `pb_collections_delete` | Delete a collection |\n| `pb_collections_import` | Bulk import collection definitions |\n| `pb_collections_truncate` | Delete all records from a collection |\n| `pb_collections_get_scaffolds` | Get scaffold templates for collection types |\n| `pb_collections_dry_run_view_query` | Test a SQL query as a view collection |\n| `pb_collections_oauth2_providers` | List all configured OAuth2 providers |\n\n### Records (CRUD)\n\n| Tool | Description |\n|------|-------------|\n| `pb_records_get_list` | List records with pagination, filtering, sorting |\n| `pb_records_get_full_list` | Fetch all records (auto-paginates) |\n| `pb_records_get_first` | Get first record matching a filter |\n| `pb_records_get_one` | Get a single record by ID |\n| `pb_records_create` | Create a new record |\n| `pb_records_update` | Update a record (partial) |\n| `pb_records_delete` | Delete a record |\n| `pb_filter_build` | Build a filter expression with parameter substitution |\n\n### Settings (Admin)\n\n| Tool | Description |\n|------|-------------|\n| `pb_settings_get_all` | Get all application settings |\n| `pb_settings_update` | Update application settings |\n| `pb_settings_test_s3` | Test S3 filesystem connection |\n| `pb_settings_test_email` | Send a test email |\n\n### Logs (Admin)\n\n| Tool | Description |\n|------|-------------|\n| `pb_logs_get_list` | List application logs |\n| `pb_logs_get_one` | Get a single log entry |\n| `pb_logs_get_stats` | Get hourly log statistics |\n\n### Health\n\n| Tool | Description |\n|------|-------------|\n| `pb_health_check` | Check server health status |\n\n### Authentication\n\n| Tool | Description |\n|------|-------------|\n| `pb_auth_with_password` | Authenticate a user with password |\n| `pb_auth_refresh` | Refresh admin auth token |\n| `pb_auth_list_methods` | List available auth methods |\n| `pb_auth_request_password_reset` | Send password reset email |\n| `pb_auth_confirm_password_reset` | Confirm password reset |\n| `pb_auth_request_verification` | Send email verification |\n| `pb_auth_confirm_verification` | Confirm email verification |\n| `pb_auth_request_email_change` | Request email change |\n| `pb_auth_confirm_email_change` | Confirm email change |\n| `pb_auth_with_oauth2_code` | Authenticate with OAuth2 authorization code |\n| `pb_auth_request_otp` | Send a one-time password to a user's email |\n| `pb_auth_with_otp` | Authenticate with a one-time password |\n| `pb_auth_impersonate` | Impersonate a record (superuser only) |\n\n### Files\n\n| Tool | Description |\n|------|-------------|\n| `pb_files_get_url` | Build file URL for a record's file field |\n| `pb_files_get_token` | Get private file access token |\n\n### Backups (Admin)\n\n| Tool | Description |\n|------|-------------|\n| `pb_backups_list` | List all backup files |\n| `pb_backups_create` | Create a new backup |\n| `pb_backups_delete` | Delete a backup |\n| `pb_backups_restore` | Restore from a backup |\n| `pb_backups_upload` | Upload a backup file from a local path |\n| `pb_backups_download_url` | Generate a download URL for a backup |\n\n### Crons (Admin)\n\n| Tool | Description |\n|------|-------------|\n| `pb_crons_list` | List registered cron jobs |\n| `pb_crons_run` | Manually trigger a cron job |\n\n### SQL (Admin)\n\n| Tool | Description |\n|------|-------------|\n| `pb_sql_run` | Execute raw SQL (superuser only) |\n\n### Batch Operations\n\n| Tool | Description |\n|------|-------------|\n| `pb_batch_create` | Execute multiple operations transactionally |\n\n## MCP Resources\n\nThe server exposes these resources for ambient context:\n\n- `pocketbase://collections` — All collection schemas with fields and rules\n- `pocketbase://health` — Current server health status\n- `pocketbase://settings` — Current application settings\n\n## Development\n\n```bash\n# Clone and install\ngit clone <repo-url>\ncd pocketbase-mcp\nnpm install\n\n# Build\nnpm run build\n\n# Type check\nnpm run typecheck\n\n# Test\nnpm test\n\n# Run locally\nPOCKETBASE_URL=http://localhost:8090 \\\nPOCKETBASE_ADMIN_EMAIL=admin@example.com \\\nPOCKETBASE_ADMIN_PASSWORD=secret \\\nnpm start\n\n# Test with MCP Inspector\nnpx @modelcontextprotocol/inspector node dist/index.js\n```\n\n## Requirements\n\n- Node.js >= 20\n- PocketBase instance (v0.23.0+ recommended for superuser collection support)\n\n## License\n\nMIT\n","readmeFilename":"README.md"}