Refresh a remote MCP connection’s tools
/connection/{id}/refresh-tools
Lists the tools the remote MCP server shows THIS connection (with its own credential) again, now, and applies the result to the connector’s registry; a tool new to it is usable at once. A remote MCP connection also refreshes when it becomes active and once a day; this is the on-demand one. No body. Same mutation bar as reconnect (`can_manage`); render controls on the connection’s `can_refresh_tools`, which is present only on a remote MCP connection. Rate limited to one per connection per minute: `429` with `Retry-After`. The `200` carries the diff as tool NAMES (`summary.added`, `changed`, `removed`, `tier_changed`, and `tier_changes` with each tier's direction), never definitions. `403` `connector_not_shared` when the connector's owner stopped sharing it; `409`: `not_remote_mcp`, `not_refreshable` (not active or not bound), `needs_reauth` (the server rejected the credential; the connection is moved to `needs_reauth`), or `tools_refresh_failed` (the message is safe to show and is also on the row as `tools_refresh_error`).
Path Parameters
Connection id (conn_…).
Response Body
Names new to the connector’s registry.
Names whose definition changed.
Names this connection stopped listing.
Names whose tier on this connection's own definition changed, in either direction.
The tier_changed tools with the direction each moved (from this connection's previous definition's tier, to its new one's).
3 properties
readwritedestructive
readwritedestructive
Tools this connection lists now.
curl -X POST 'https://api.elaichi.ai/connection/<id>/refresh-tools' \
-H 'Authorization: Bearer $ELAICHI_API_TOKEN' \
-H 'Content-Type: application/json'const response = await fetch('https://api.elaichi.ai/connection/<id>/refresh-tools', {
method: 'POST',
headers: {
'Authorization': 'Bearer ' + process.env.ELAICHI_API_TOKEN,
'Content-Type': 'application/json',
},
});
const data = await response.json();
console.log(data);import os
import requests
url = "https://api.elaichi.ai/connection/<id>/refresh-tools"
headers = {
"Authorization": f"Bearer {os.environ['ELAICHI_API_TOKEN']}",
"Content-Type": "application/json",
}
response = requests.post(url, headers=headers)
print(response.json())