Skip to content

Add sse transport#1

Draft
oliver-reardon wants to merge 2 commits intoSimplyMinimal:mainfrom
oliver-reardon:add-sse-transport
Draft

Add sse transport#1
oliver-reardon wants to merge 2 commits intoSimplyMinimal:mainfrom
oliver-reardon:add-sse-transport

Conversation

@oliver-reardon
Copy link

Added

  • Port configuration support for Fleet MCP: The Fleet MCP server now dynamically respects the --port CLI argument and the FLEET_MCP_PORT environment variable at runtime. This fixes previous issues where the environment variable was ignored in Docker or CLI usage. You can set the port for HTTP-based transports (SSE and streamable-http) in any of the following ways:
    • fleet-mcp run --port 8001 (CLI argument takes precedence)
    • FLEET_MCP_PORT=8001 fleet-mcp run (environment variable is used if no CLI argument is given)
    • If neither is set, the default is port 8000.
    • This ensures correct port selection in Docker, Docker Compose, and all deployment scenarios.
  • SSE (Server-Sent Events) transport support: Fleet MCP now supports the sse transport, allowing real-time event streaming and compatibility with MCP clients that use SSE.

Changed

  • The Docker Compose and environment setup can now map any desired port to the Fleet MCP container, and the server will listen on the configured port.

See the README for usage details and updated configuration examples.

@SimplyMinimal SimplyMinimal self-assigned this Jan 27, 2026
@SimplyMinimal SimplyMinimal added the enhancement New feature or request label Jan 27, 2026
@SimplyMinimal
Copy link
Owner

Hey Oliver!

Thank you for sharing your pull request. After reviewing the PR, there's a couple of questions that came up:

  1. I do see a use case for specifying the port that the MCP server listens on. I could see port conflicts happening so that's useful especially if you're running other docker containers. Could you change the default network binding address from 0.0.0.0 to 127.0.0.1? This will at least prevent accidental exposure if anyone were to spin up this MCP server without being aware of this configuration. We could also set this as an environment variable/argument just for additional flexibility but would like to still default to localhost only out of the box unless the user explicitly wants to expose it.

  2. Could you update this PR to remove the code around SSE? It's marked as deprecated so would like to only support either stdio or streamable HTTP as per the protocol documentation:
    https://modelcontextprotocol.io/specification/2025-03-26/basic/transports
    https://gofastmcp.com/deployment/running-server

If there's a need to keep SSE and have an active use-case to keep it in, let me know.

When you're ready, please run the following and make sure it passes.

# Sort imports
uv run isort src tests

# Run only unit tests
uv run pytest -m unit

# Type check
uv run mypy src

uv run black --check src tests

Thanks again for taking an interest in this project and helping to make it better!

@SimplyMinimal SimplyMinimal marked this pull request as draft February 7, 2026 06:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants