get_record
Fetch a specific Salesforce record by providing the object name and record ID, ensuring accurate data retrieval for targeted queries.
Instructions
Retrieves a specific record by ID
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| object_name | Yes | The name of the Salesforce object (e.g., 'Account', 'Contact') | |
| record_id | Yes | The ID of the record to retrieve |
Implementation Reference
- src/salesforce/server.py:343-358 (handler)The handler logic for the 'get_record' tool within the @server.call_tool() function. It extracts object_name and record_id from arguments, validates them and the Salesforce connection, retrieves the object dynamically using getattr, calls .get(record_id), and returns the result as formatted JSON text content.elif name == "get_record": object_name = arguments.get("object_name") record_id = arguments.get("record_id") if not object_name or not record_id: raise ValueError("Missing 'object_name' or 'record_id' argument") if not sf_client.sf: raise ValueError("Salesforce connection not established.") sf_object = getattr(sf_client.sf, object_name) results = sf_object.get(record_id) return [ types.TextContent( type="text", text=f"{object_name} Record (JSON):\n{json.dumps(results, indent=2)}", ) ] elif name == "create_record":
- src/salesforce/server.py:138-155 (registration)The registration of the 'get_record' tool in the @server.list_tools() function, including its name, description, and input schema for object_name and record_id.types.Tool( name="get_record", description="Retrieves a specific record by ID", inputSchema={ "type": "object", "properties": { "object_name": { "type": "string", "description": "The name of the Salesforce object (e.g., 'Account', 'Contact')", }, "record_id": { "type": "string", "description": "The ID of the record to retrieve", }, }, "required": ["object_name", "record_id"], }, ),