Skip to main content
Glama
DynamicEndpoints

Advanced PocketBase MCP Server

get_record

Retrieve specific records from PocketBase databases by executing queries with defined parameters to access stored data.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • Core handler function that executes the get_record tool logic by fetching the record from PocketBase using collection.getOne(id). Dispatched from the main tool call handler.
    private async getRecord(collection: string, id: string) { if (!this.pb) { throw new Error('PocketBase not configured'); } try { const record = await this.pb.collection(collection).getOne(id); return { content: [ { type: "text", text: JSON.stringify(record, null, 2) } ] }; } catch (error: any) { throw new Error(`Failed to get record: ${error.message}`); } }
  • Input schema for get_record tool defining required 'collection' and 'id' string parameters.
    name: "get_record", description: "Get a specific record by ID", inputSchema: { type: "object", properties: { collection: { type: "string", description: "Collection name" }, id: { type: "string", description: "Record ID" } }, required: ["collection", "id"] } },
  • Inline tool registration and handler for get_record in the simple agent implementation, using Zod schema validation and PocketBase getOne.
    'get_record', { description: 'Get a specific record by ID', inputSchema: { collection: z.string().describe('Collection name'), id: z.string().describe('Record ID') } }, async ({ collection, id }) => { await this.ensureInitialized(); if (!this.pb) { throw new Error('PocketBase not initialized'); } try { const record = await this.pb.collection(collection).getOne(id); return { content: [{ type: 'text', text: JSON.stringify(record, null, 2) }] }; } catch (error: any) { throw new Error(`Failed to get record: ${error.message}`); } } );
  • Tool handler for get_record in Cloudflare agent, supports optional expand parameter for relations.
    this.server.tool( "get_record", "Get a specific record by ID", { collection: z.string().describe('Collection name'), id: z.string().describe('Record ID'), expand: z.string().optional().describe('Relations to expand') }, async ({ collection, id, expand }) => { if (!this.pb) { throw new Error('PocketBase not initialized'); } const record = await this.pb.collection(collection).getOne(id, { expand }); return { content: [{ type: 'text', text: JSON.stringify(record, null, 2) }] }; }

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