Salesforce

Connect Salesforce

salesforce_connect · Changes data · Markdown

Connects the company's Salesforce org through its own connected app.

Free

This tool costs nothing to call.

An example

Connect our Salesforce. Here are the My Domain, the consumer key and the secret.

Your agent callssalesforce_connectFree

The example business is Hansen & Voss, a restaurant-equipment wholesaler in Hamburg with 60 staff. The reply is the one the tool really gives.

With these arguments
{
  "my_domain": "hansen-voss.my.salesforce.com",
  "client_id": "3MVG9example.consumer.key",
  "secret": "example-consumer-secret"
}
What comes back
{
  "salesforce": {
    "my_domain": "hansen-voss.my.salesforce.com",
    "connected_at": "2026-10-14T08:00:00+00:00"
  },
  "need_approval": [
    "salesforce_update"
  ]
}

Use it when

The company keeps its customers in Salesforce and wants the agent to work in them there.

What it does

Connect the company's own Salesforce org, which stays the source of truth: the agent queries, reads and changes its records. The company makes a connected app with the OAuth client credentials flow switched on and a run-as user whose profile limits what the agent may touch, and gives the org's My Domain and the app's consumer key and secret, which are checked before anything is kept. On accounts with an owner, changing an existing record waits for the owner's approval by default. Free.

What comes back

salesforce: my_domain and connected_at; need_approval, the tools that now wait for the owner. Every reply also carries cost_usd and balance_usd.

Inputs

NameTypeWhat it is
my_domainRequiredstringLike hansen-voss.my.salesforce.com. 10 to 200 characters.
client_idRequiredstring10 to 300 characters.
secretRequiredstringThe connected app's consumer secret. Never shown again. 8 to 500 characters.

The call

Over MCP, call salesforce_connect on https://api.conecto.chat/mcp/salesforce. Over REST:

Terminal
curl -X POST https://api.conecto.chat/v1/tools/salesforce_connect \
  -H "Authorization: Bearer $CONECTO_KEY" \
  -H "Content-Type: application/json" \
  -d '{"my_domain":"hansen-voss.my.salesforce.com","client_id":"3MVG9example.consumer.key","secret":"example-consumer-secret"}'

When it refuses

A refused call costs nothing and says what to do next.

CodeWhenWhat to do
invalid_input400my_domain is not a My Domain.Give one like acme.my.salesforce.com.
vendor_rejected502Salesforce refused the keys.Switch on the client credentials flow and set a run-as user.

Give this to your agent.

Set up Conecto from https://conecto.chat/SKILL.md