MCP
Your systems, one tool call away
Model Context Protocol servers expose your APIs as tools. Add one to an agent and it can look up an order, check stock or open a ticket in the middle of an answer, and you see every call it makes.
200 free credits when you sign up. No card needed.
How it works
The model sees your tools' names, descriptions and input schemas alongside the question. When it decides a tool would help, SentientOne calls your server, hands the result back and lets the model carry on. It can take several rounds.
- Tools from all of an agent's MCP servers are offered together.
- Each round is its own span in the trace, with the tool's input, output and timing.
- Tool calls cost nothing extra: the reply is 1 credit however many tools it uses.
Connecting a server
On the agent's Tools tab, add the server's URL and how to authenticate.
| Transports | Streamable HTTP and SSE. Servers must be reachable over the internet; local stdio servers can't be called from the cloud |
|---|---|
| Authentication | None, bearer token, an API key in a header you name, or basic (user and password) |
| Custom headers | Any extra headers your server expects |
| Secrets | Tokens and passwords are encrypted at rest with AES-256-GCM and never shown again in full |
| Servers per agent | Unlimited |
Tool discovery
When you add or refresh a server, SentientOne lists its tools and stores them with the agent, so a chat doesn't wait on discovery. The tool list is cached for five minutes at a time; refresh the server after you add tools to it.
Tool calls in the stream
Your app sees what the agent did, as it does it: a tool_call event with the arguments, then a tool_result with what came back, then the answer.
data: {"type": "tool_call", "id": "call_1", "name": "get_order", "input": {"order_id": "10482"}}data: {"type": "tool_result", "id": "call_1", "name": "get_order", "output": "{\"status\": \"shipped\", \"carrier\": \"AusPost\", \"eta\": \"2026-10-27\"}"}data: {"type": "delta", "content": "Your order shipped with AusPost and should arrive on 27 October."}The same calls show in the Playground beside each reply and in Tracing.
Network guard
An MCP server URL is a URL someone typed, so every connection is checked before it's made.
- The host name is resolved once; private, loopback, link-local, carrier-grade NAT and other non-public addresses are refused.
- The connection goes to the address that was checked, so DNS rebinding can't swap it.
- Redirects aren't followed and no proxy settings are used.
- A refused server fails with: MCP servers must be on a public internet address.
MCP in workflows
An MCP tool call block calls one tool directly with arguments you set, without asking a model. Use it when the step is always the same, and an Agent step when the model should decide.
Connect your first MCP server
Sign up and you get 200 free credits, no card needed. Create an agent, add your knowledge, try it in the Playground, then call it from your code or put it on your website.