Skip to content
Elaichi Elaichi

crm

Salesforce

Connect Salesforce to Elaichi and hand every teammate a governed MCP endpoint — 17 tools ready to call from Claude, Cursor, or any MCP client, clamped by roles, restrictions, and an audit log.

Salesforce

AI tools

Salesforce tools for your AI agents

17 tools are ready to mint as an MCP endpoint the moment you connect Salesforce — governed by the same roles, restrictions, and audit log as everything else in Elaichi.

list_all_salesforce_custom_fields

List custom fields on a specific Salesforce object. Pass the object API name (e.g. Account, Contact, Invoice__c) in object_type. Returns field developer names, descriptions, help text, and timestamps.

get_single_salesforce_custom_field_by_id

Get details of a specific custom field by its Tooling API ID. Returns the full field definition including type, label, and configuration.

create_a_salesforce_custom_field

Create a new custom field on any standard or custom Salesforce object. FullName format is ObjectName.FieldName__c (e.g. Account.Priority__c). Metadata must include type (Text, Number, Picklist, Checkbox, Lookup, Currency, Date, DateTime, Email, Phone, Url, TextArea, LongTextArea, etc.) and label. Type-specific config varies: Text needs length, Number needs precision/scale, Picklist needs valueSet.

update_a_salesforce_custom_field_by_id

Update a custom field definition by its Tooling API ID. Can update label, description, help text, and some type-specific properties via the Metadata object.

delete_a_salesforce_custom_field_by_id

Delete a custom field. NOTE: Salesforce marks the Tooling API CustomField sObject as non-deletable (deletable: false), so this operation returns 'insufficient access rights on cross-reference id' for all callers. Custom fields must be deleted via the Metadata API or Salesforce Setup UI.

list_all_salesforce_query

Execute any SOQL query against Salesforce. Use this to read, aggregate, or filter data from any standard or custom object. Pass a complete SOQL query string in the q parameter. Examples: SELECT Id, Name FROM Account LIMIT 10 or SELECT Id, Email FROM Contact WHERE CreatedDate > 2024-01-01T00:00:00Z. Supports relationship queries like SELECT Id, Account.Name FROM Contact.

list_all_salesforce_objects

List all Salesforce objects available in the org, including standard objects (Account, Contact, Opportunity, etc.) and custom objects (ending with __c). Use this to discover which objects exist before running SOQL queries or creating/updating records. Returns object names, labels, and basic metadata.

get_single_salesforce_object_describe_by_id

Get the full schema and metadata for a specific Salesforce object. Returns all fields (with types, labels, picklist values), relationships, record type info, and permissions. Use this to understand an object structure before writing SOQL queries or creating/updating records. Pass the object API name as the id (e.g. Account, Contact, My_Custom_Object__c).

create_a_salesforce_record

Create a new record on a Salesforce object. Pass object_name (e.g. Account, Contact, Lead, Opportunity, Case, Task, Event, Campaign) and the field values as TOP-LEVEL arguments using exact CamelCase Salesforce field API names — e.g. object_name="Account", Name="Acme". Do not wrap fields in a body object and do not lowercase them: only the field names declared in the input schema are transmitted, everything else is silently dropped. Required fields by object: Account needs Name; Contact/Lead need LastName (Lead also Company); Opportunity needs Name, StageName, CloseDate. Returns the new record ID on success.

update_a_salesforce_record_by_id

Update an existing record on a Salesforce object. Pass object_name, the record ID as id, and the fields to change as TOP-LEVEL arguments using exact CamelCase Salesforce field API names (e.g. Phone="555-0100"). Do not wrap fields in a body object: only field names declared in the input schema are transmitted, everything else is silently dropped. Returns an empty response on success.

delete_a_salesforce_record_by_id

Delete a record from any Salesforce object. Pass the object API name in object_name and the record ID as id. The record moves to the Recycle Bin and is recoverable for 15 days. Use with caution.

get_single_salesforce_record_by_id

Get a single record from any Salesforce object by its ID. Pass the object API name in object_name and the record ID as id. Returns all accessible fields for the record.

list_all_salesforce_custom_objects

List all custom objects in the Salesforce org. Returns developer names, descriptions, namespace prefixes, and timestamps. Use this to discover existing custom objects before creating new ones or adding fields.

get_single_salesforce_custom_object_by_id

Get details of a specific custom object by its Tooling API ID. Returns the full object definition including all properties and metadata.

create_a_salesforce_custom_object

List/inspect custom objects via the Salesforce Tooling API. NOTE: creating and updating custom objects is NOT supported through the Tooling API REST endpoint — Salesforce exposes no createable fields on the CustomObject sObject. Custom objects must be created via the Metadata API or Salesforce Setup UI.

update_a_salesforce_custom_object_by_id

List/inspect custom objects via the Salesforce Tooling API. NOTE: creating and updating custom objects is NOT supported through the Tooling API REST endpoint — Salesforce exposes no createable fields on the CustomObject sObject. Custom objects must be created via the Metadata API or Salesforce Setup UI.

delete_a_salesforce_custom_object_by_id

Delete a custom object by its Tooling API ID. This permanently removes the object and all its data. Use with extreme caution.

How it works

From Salesforce account to governed MCP endpoint

Connect

Link a Salesforce account through Elaichi's hosted connect flow. Credentials are vaulted — nobody, including the AI, ever sees them.

Compose

The connection becomes a toolbox instantly. Curate which Salesforce tools are exposed, rename them, or freeze arguments.

Mint

Mint a personal MCP endpoint on that toolbox and paste it into Claude, Cursor, or any MCP client — governed by roles, restrictions, and audit logs.

Give every teammate a governed MCP server

Start a 14-day Gold trial — connect a product, curate a toolbox, and paste an endpoint into Claude or Cursor in minutes.