Beta: This feature is in beta. The API schema may change as we iterate on the design.
Basic Usage
Configuration Options
| Field | Type | Required | Description |
|---|---|---|---|
type | string | Yes | Must be "inline_mcp" for server configs passed in the request |
server_label | string | Yes | Unique identifier for the server (max 64 characters). Used for tool namespacing. |
server_url | string | Yes | HTTPS URL of the MCP streamable HTTP endpoint |
server_description | string | No | Description of what the server provides (max 500 characters) |
authorization | string | No | Value sent in the Authorization header when calling the MCP server (e.g., "Bearer token") |
Multiple Servers
You can connect multiple MCP servers in a single request. Each server’s tools will be available to the agent:How It Works
When you pass an MCP server in a converse request, Datagrid handles the full MCP lifecycle automatically:- Initialization: Datagrid sends
initializeto negotiate protocol version and capabilities, then confirms withnotifications/initialized - Tool Discovery: Datagrid calls
tools/listto discover available tools, withMCP-Session-IdandMCP-Protocol-Versionheaders - Tool Execution: When the agent decides to use a tool, Datagrid calls
tools/callwith the appropriate parameters and session headers - Session Recovery: If a session expires, Datagrid automatically re-initializes and retries the request
- Credential Isolation: Authorization values are scoped per server and never shared between servers
Security
- HTTPS Required: All MCP server URLs must use HTTPS
- SSRF Protection: Requests to private IP addresses, localhost, and internal domains are blocked
- Credential Isolation: Authorization tokens are isolated per-server and never shared between servers
- Ephemeral: Server configurations are not persisted - they only exist for the duration of the request
Building MCP Servers
To create an MCP server compatible with Datagrid, implement the Model Context Protocol specification using streamable HTTP transport. Your server must handle the following methods:initialize- Negotiates protocol version and capabilities. ReturnMCP-Session-Idin the response header.notifications/initialized- Accepts the initialization completion notificationtools/list- Returns available tools and their JSON Schema definitionstools/call- Executes a tool and returns the result
initialize will include MCP-Session-Id and MCP-Protocol-Version headers.