quickbase_update_record
Modifies an existing record in QuickBase by specifying the table ID, record ID, and updated field values for precise data management.
Instructions
Update an existing record
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| fields | Yes | Field values to update as fieldId: {value: actualValue} pairs | |
| recordId | Yes | Record ID to update | |
| tableId | Yes | Table ID |
Implementation Reference
- src/quickbase/client.ts:201-209 (handler)Core handler function that executes the QuickBase API call to update a specific record using the provided table ID, record ID, and field updates.
async updateRecord(tableId: string, recordId: number, updates: Record<string, any>): Promise<void> { await this.axios.post('/records', { to: tableId, data: [{ '3': { value: recordId }, // Record ID field ...updates }] }); } - src/index.ts:265-282 (handler)MCP server dispatch handler case that validates arguments and delegates to QuickBaseClient.updateRecord method.
case 'quickbase_update_record': if (!args || typeof args !== 'object') { throw new Error('Invalid arguments'); } await this.qbClient.updateRecord( args.tableId as string, args.recordId as number, args.fields as Record<string, any> ); return { content: [ { type: 'text', text: `Record ${args.recordId} updated successfully`, }, ], }; - src/tools/index.ts:298-314 (registration)Tool registration definition including name, description, and input schema for the MCP tool list.
{ name: 'quickbase_update_record', description: 'Update an existing record', inputSchema: { type: 'object', properties: { tableId: { type: 'string', description: 'Table ID' }, recordId: { type: 'number', description: 'Record ID to update' }, fields: { type: 'object', description: 'Field values to update as fieldId: {value: actualValue} pairs', additionalProperties: true } }, required: ['tableId', 'recordId', 'fields'] } }, - src/tools/index.ts:52-56 (schema)Zod schema definition for input validation of the update_record tool parameters.
const UpdateRecordSchema = z.object({ tableId: z.string().describe('Table ID'), recordId: z.number().describe('Record ID to update'), fields: z.record(z.any()).describe('Field values to update as fieldId: value pairs') });