Skip to content
Confirm MCP server compatibility
Public Preview

MCP server compatibility and call contract

MCP server compatibility requirements and call contract rules, including supported protocol versions, authentication modes, and failure handling.

This reference covers MCP server compatibility, authentication modes, and the MCP call contract for Duale AI connections.

  • MCP server compatibility and protocol version requirements.
  • Authentication mode selection for a named Connection.
  • Reserved argument names and Tool incompatibility.
  • Synchronous call results, retry limits, and failure pause.

Summaries were generated by AI.

To set up a server, connect an MCP server. To read its states, operate Tools. To recover from a failure, troubleshoot Tools. MCP catalog and call limits lists the size and count limits.

Confirm MCP server compatibility

An MCP Connection supports Streamable HTTP at one exact public HTTPS URL. The server must negotiate MCP 2025-06-18, 2025-11-25, or 2026-07-28 and answer catalog and Tool requests at that URL. Duale AI uses HTTP/1.1, does not follow redirects, does not retain server cookies, requests an uncompressed response, and rejects a compressed response. A server that negotiates an older MCP revision, or that depends on a redirect, cookie state, compression, or HTTP/2, is not compatible.

A Tool that declares a dynamic transport header needs a server that negotiates 2026-07-28. On an earlier revision, Duale AI cannot send that header, so the Tool stays incompatible until the server offers 2026-07-28.

Choose one authentication mode

Choose no authentication, one bearer token, or one API key in an allowed custom header. The same credential applies to catalog checks and Tool Calls for that named Connection.

Understand the MCP call contract

Avoid reserved argument names

Duale AI reserves every top-level argument name that starts with two underscores (__). A remote Tool whose input schema declares one, as a property or in required, stays visible in Catalog as incompatible and is never offered to a model. The rule does not affect the Connection’s other Tools or nested fields. Reserved argument names explains how to recognize and fix the Tool.

Return one complete result

Duale AI supports synchronous MCP calls that return a complete text or structured result. It does not continue interactive input_required responses, queued MCP Tasks, or a task handle returned for later retrieval. Image, audio, embedded resource, and resource-link result blocks are not supported.

Duale AI cannot guarantee exactly-once execution for a remote MCP Tool. When Duale AI cannot rule out that the server received a request, it does not intentionally retry that call. If it also cannot prove the response, the call ends as Outcome unknown, as Read a Tool Call outcome defines. Make state-changing remote operations idempotent where possible. Check the destination system before any manual retry or compensation.

After three consecutive technical failures for one Tool, such as transport errors or invalid results, Duale AI pauses calls to that Tool on that Connection for 30 seconds. A call during the pause is not sent to the server; it reports that the Tool is temporarily paused, and Analytics counts it as Failed. Catalog checks and other Tools on the Connection continue. The next call after the pause can test the Tool again.