Skip to main content
Glama
DynamicEndpoints

Advanced PocketBase MCP Server

create_record

Generate new entries in PocketBase databases using Model Context Protocol, enabling structured and efficient data management for collections and records.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • Inline handler for 'create_record' tool using PocketBase collection.create()
    this.server.tool( "create_record", "Create a new record in a collection", { collection: z.string().describe('Collection name'), data: z.record(z.any()).describe('Record data') }, async ({ collection, data }) => { if (!this.pb) { throw new Error('PocketBase not initialized'); } const record = await this.pb.collection(collection).create(data); // Update activity time this.setState({ ...this.state, lastActivityTime: Date.now() }); return { content: [{ type: 'text', text: JSON.stringify(record, null, 2) }] }; } );
  • Inline handler for 'create_record' tool in simple agent using PocketBase collection.create()
    'create_record', { description: 'Create a new record in a collection', inputSchema: { collection: z.string().describe('Collection name'), data: z.record(z.any()).describe('Record data') } }, async ({ collection, data }) => { await this.ensureInitialized(); if (!this.pb) { throw new Error('PocketBase not initialized'); } try { const record = await this.pb.collection(collection).create(data); return { content: [{ type: 'text', text: JSON.stringify(record, null, 2) }] }; } catch (error: any) { throw new Error(`Failed to create record: ${error.message}`); } } );
  • Dedicated createRecord method called from tool dispatch handler, using PocketBase collection.create()
    private async createRecord(collection: string, data: any) { if (!this.pb) { throw new Error('PocketBase not configured'); } try { const record = await this.pb.collection(collection).create(data); return { content: [ { type: "text", text: JSON.stringify(record, null, 2) } ] }; } catch (error: any) { throw new Error(`Failed to create record: ${error.message}`); } }
  • Dispatch case in CallToolRequestSchema handler that routes to createRecord
    case "create_record": { if (!args || typeof args !== "object" || typeof (args as any).collection !== "string" || typeof (args as any).data !== "object") { throw new Error("'collection' (string) and 'data' (object) are required for create_record"); } return await this.createRecord((args as any).collection, (args as any).data); }
  • Input schema definition for create_record tool in ListTools response
    name: "create_record", description: "Create a new record in a collection", inputSchema: { type: "object", properties: { collection: { type: "string", description: "Collection name" }, data: { type: "object", description: "Record data" } }, required: ["collection", "data"] } },

Other Tools

Related Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/DynamicEndpoints/advanced-pocketbase-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server