-
Notifications
You must be signed in to change notification settings - Fork 2.6k
docs: add Docker MCP Gateway streaming transport documentation #6558
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,60 @@ | ||
| # Docker MCP Gateway - Streaming Transport Configuration | ||
|
|
||
| ## Overview | ||
|
|
||
| When using the Docker MCP Gateway with the `streaming` transport mode, it's important to understand the correct URL configuration to avoid connection errors. | ||
|
|
||
| ## Issue | ||
|
|
||
| When connecting an MCP client to the Docker MCP Gateway using the `streaming` transport (`docker mcp gateway run --transport streaming`), the connection will fail with errors like "Invalid session ID" if the client is configured to connect to the root URL (e.g., `http://localhost:8080`). | ||
|
|
||
| ## Root Cause | ||
|
|
||
| The Docker MCP Gateway, when running in `streaming` mode, does not serve its MCP functionality from the root path of the server. Instead, it expects all MCP requests to be sent to the `/mcp` endpoint. | ||
|
|
||
| ## Solution | ||
|
|
||
| ### Correct Configuration | ||
|
|
||
| When configuring your MCP client to connect to a Docker MCP Gateway running with streaming transport, you must include the `/mcp` path in the URL: | ||
|
|
||
| ```json | ||
| { | ||
|
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The JSON examples use tabs for indentation, which is inconsistent with typical JSON formatting standards. Consider using 2 or 4 spaces instead: |
||
| "mcpServers": { | ||
| "Docker_MCP_Gateway_streaming": { | ||
| "type": "streamable-http", | ||
| "url": "http://localhost:8080/mcp" | ||
| } | ||
| } | ||
| } | ||
| ``` | ||
|
|
||
| ### Incorrect Configuration (Will Fail) | ||
|
|
||
| ```json | ||
| { | ||
| "mcpServers": { | ||
| "Docker_MCP_Gateway_streaming": { | ||
| "type": "streamable-http", | ||
| "url": "http://localhost:8080" // Missing /mcp path | ||
| } | ||
| } | ||
| } | ||
| ``` | ||
|
|
||
| ## Quick Reference | ||
|
|
||
| | Transport Type | Correct URL Format | | ||
|
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The quick reference table only shows the streaming transport. Consider either:
This would make the documentation more comprehensive. |
||
| | -------------- | --------------------------- | | ||
| | Streaming | `http://localhost:8080/mcp` | | ||
|
|
||
| ## Additional Notes | ||
|
|
||
| - This requirement is specific to the `streaming` transport mode | ||
|
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Is this path requirement specific only to the streaming transport? It would be helpful to clarify whether other transport modes have different requirements or if this applies universally. |
||
| - The port number (8080) may vary based on your Docker configuration | ||
| - Always ensure the `/mcp` path is included when using streaming transport | ||
|
|
||
| ## Related Links | ||
|
|
||
| - [MCP Documentation](https://docs.roocode.com/advanced-usage/mcp) | ||
| - [Docker MCP Toolkit Documentation](https://docs.roocode.com/advanced-usage/mcp#docker-mcp-toolkit) | ||
|
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Consider adding a troubleshooting section with common error messages users might encounter (like "Invalid session ID") and their solutions. This would help users debug issues more effectively. |
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The document mentions but doesn't show a complete example. Would it be helpful to add a full command example with all necessary parameters for starting the gateway?