MCP servers
An MCP server is a tool provider that agents use through the llm command's mcp field. The agent server reads the list of tools from the MCP server and offers them to the model.
Settings
| Field | Type | Default | Description |
|---|---|---|---|
secretsUsed | list of string | The secret names this profile's expressions read (sys.secret['NAME']). Worked out by the cloud when the profile is saved and sent with the profile to agent servers; anything sent in this field is ignored. | |
namerequired | string | The name agents use to refer to this MCP server. | |
doc | string | Free-text notes about this server, for whoever maintains the configuration. | |
urlrequired | dynamic string | The URL of the MCP server. | |
headers | object of string → dynamic string | Headers sent with every call, including any authentication. | |
retryableErrorCodes | list of integer | [-32600, -32601, -32602] | MCP (JSON-RPC) error codes treated as recoverable: the error is given back to the LLM to correct itself instead of failing the agent. Defaults to -32600 (invalid request), -32601 (method not found) and -32602 (invalid params). |
The name is what agents write: git.search_code for one tool, or git for every tool the server offers. The UI lists a server's tools next to the server. A server cannot be named function; that name is reserved for the agent's own functions in tool calls.
An MCP server's name is letters and digits only, up to 16 characters. It is the one name in Search2o that cannot contain an underscore. The name becomes part of the tool name the model sees, in the form mcp_{server}_{tool}, so an underscore in the server's name would make that split ambiguous. The 16-character limit leaves room inside the 64 characters model providers allow for a function name.
When a tool call fails with one of the retryable error codes, the error is returned to the model so that it can correct the call. Any other error fails the command.

