MCP results
Put the facts the agent needs in the text. Do not rely on an image.
API results
If your API answers with a JSON body, send
Content-Type: application/json. A JSON body with another content type
arrives as text. An answer can be up to 1 MB. A larger one counts as no answer.
If your answer contains the key that ImpelLabs sent, ImpelLabs replaces it with [hidden] before the agent sees it.
Write clear errors
The agent reads the error text and decides what to do next. Say what is wrong and what to change, in one or two sentences. An error message reaches the agent up to 2000 characters. Do not put secrets or stack traces in it.Side effects
A tool with the riskwrite, send or money changes something outside ImpelLabs. For those, your workspace rules
decide whether the call runs, waits on a card for a person to approve, or is refused. The card shows the operation, the
connection and the fields the call would send.
When a call may have run, the agent gets: “It may have run. Check before you try again.” This happens for an MCP server
that answers 5xx, 408 or 429 or does not answer, and for an API in the cases above. A tool call runs once.
ImpelLabs does not retry it.
Make your side safe for a repeated call:
- Give the agent a read operation that shows the current state, so it can check before it tries again.
- Accept a client-chosen id or key in create operations, and ignore a second request with the same one.
- Return the final state, not only “ok”.