Remote MCP integration lets you connect watsonx Orchestrate to external toolkits hosted on remote servers. Use this setup when your tools live outside your local environment, such as in cloud services or third-party APIs. You can import and manage them using the ADK CLI.

Importing remote MCP toolkits using ADK CLI

To import a remote MCP, run the orchestrate toolkits import command with the URL and transport protocol for the MCP server.
BASH
orchestrate toolkits import --kind mcp --name <toolkit-name> --description <toolkit-description>  --url <toolkit-url>  --transport <protocol-for-remote-mcp> --tools <tools>  --app-id <connection>
Examples:
This example connects watsonx Orchestrate to CoinGecko remote MCP server using SSE. For more information, see CoinGecko MCP Server
BASH
orchestrate toolkits import --kind mcp --name coingecko --description "coingecko toolkit"  --url "https://mcp.api.coingecko.com/sse"  --transport "sse" --tools "get_range_coins_market_chart"

Understanding the import process

During import, ADK connects to the remote MCP server to retrieve and validate available tools. ADK checks only the tool schemas for structural correctness and compatibility with watsonx Orchestrate. It doesn’t test tool execution at this stage. watsonx Orchestrate waits up to 30 seconds for the server to respond with the tool list. If the server responds in time, the import continues. If not, the process fails or times out. ADK doesn’t test individual tools during import, so no execution timeouts apply at this stage.

Choosing an MCP protocol

ADK supports two transport protocols for MCP: You must choose the transport protocol explicitly. ADK doesn’t support fallback or automatic switching between protocols. Any MCP server that follows the standard protocol and supports SSE or streamable HTTP works without extra configuration. When you use the ADK CLI, Remote MCP supports multiple authentication methods:
  • OAuth2 (without Dynamic Client Registration)
  • API Key
  • Bearer Token
  • Basic Auth
  • Key-value
Note:
  • When connecting to a remote MCP server that uses an API key with a custom name, use the key–value pair method.
  • For OAuth authentication, import the toolkit using Team credentials. To use the tool, you can either switch to Member credentials or continue using Team credentials.
For more information about connections, see Connections.

Using SSE protocol

When you use SSE, ADK starts the handshake with a 30-second timeout. This timeout applies during the callback phase of the import. ADK expects only standard SSE headers. The connection setup stays minimal and depends on the server for protocol compliance. ADK doesn’t enforce connection pooling or keep-alive settings. If your server supports them, ADK works with those features. During tool execution testing, you might see End of File (EOF) errors. These usually happen when the server times out or doesn’t respond in time.

Using streamable HTTP protocol

When you use streamable HTTP, ADK also starts the handshake with a 30-second timeout. ADK doesn’t expect SSE headers in this case. The setup remains minimal and relies on the server to follow the protocol.

Handling import errors

If the server returns an HTTP status code in the 4xx range, the import fails. These errors usually point to invalid requests, authentication issues, or missing resources. Other status codes may trigger warnings, depending on the server’s response. ADK doesn’t distinguish between import-time and runtime execution from the server’s perspective. All responses during import return in JSON format.