quickbase_get_record
Retrieve a specific record by ID from a QuickBase table. Provide the table ID, record ID, and optional field IDs to fetch targeted data efficiently.
Instructions
Get a specific record by ID
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| fieldIds | No | Specific field IDs to retrieve | |
| recordId | Yes | Record ID | |
| tableId | Yes | Table ID |
Implementation Reference
- src/quickbase/client.ts:169-181 (handler)Core implementation of quickbase_get_record tool: Queries QuickBase records endpoint with where clause `{3.EX.${recordId}}` to fetch specific record by ID (field 3 is record ID), optionally selecting specific fields.async getRecord(tableId: string, recordId: number, fieldIds?: number[]): Promise<any> { const params: any = { from: tableId }; if (fieldIds) { params.select = fieldIds; } const response = await this.axios.post('/records/query', { ...params, where: `{3.EX.${recordId}}` }); return response.data.data[0] || null; }
- src/index.ts:231-247 (registration)MCP server tool call handler registration in switch statement that validates args and delegates to QuickBaseClient.getRecord() method.case 'quickbase_get_record': if (!args || typeof args !== 'object') { throw new Error('Invalid arguments'); } const record = await this.qbClient.getRecord( args.tableId as string, args.recordId as number, args.fieldIds as number[] ); return { content: [ { type: 'text', text: JSON.stringify(record, null, 2), }, ], };
- src/tools/index.ts:267-279 (schema)Tool metadata and JSON input schema definition for quickbase_get_record, used for tool listing and validation.{ name: 'quickbase_get_record', description: 'Get a specific record by ID', inputSchema: { type: 'object', properties: { tableId: { type: 'string', description: 'Table ID' }, recordId: { type: 'number', description: 'Record ID' }, fieldIds: { type: 'array', items: { type: 'number' }, description: 'Specific field IDs to retrieve' } }, required: ['tableId', 'recordId'] } },