Skip to content

Comments

✨ chore: Add FastMCP stdio support, update CLI, docs, and dependencies#8

Merged
Falamarcao merged 2 commits intomainfrom
dev
Sep 10, 2025
Merged

✨ chore: Add FastMCP stdio support, update CLI, docs, and dependencies#8
Falamarcao merged 2 commits intomainfrom
dev

Conversation

@Falamarcao
Copy link
Collaborator

@Falamarcao Falamarcao commented Sep 10, 2025

✨ chore: Add FastMCP stdio support, update CLI, docs, and dependencies

We did the thing.
The stdio thing.
And a bunch of other things.

This PR:

  • πŸ§‘β€πŸ’» Added FastMCP stdio server support (run_stdio and CLI integration)
  • πŸ› οΈ Refactored CLI helpers and constants for better modularity
  • 🧹 Removed legacy CLI utils/helpers, migrated logic to new helpers
  • 🏷️ Updated pyproject.toml and uv.lock with new dependencies (fastmcp, asgi-lifespan, etc.)
  • 🐍 Improved logger to redirect to stderr in stdio mode
  • πŸ§ͺ Added integration tests for stdio connect/disconnect and FastMCP in-memory client
  • πŸ§ͺ Updated test fixtures to use new command discovery helpers
  • πŸ“¦ Updated Dockerfile to use correct healthcheck and port
  • πŸ“š Improved README and CONTRIBUTING docs for stdio, Docker, and Kubernetes usage
  • 🏷️ Updated attribution, citation, and project metadata

βœ… Local Tests: all 126 tests passed successfully.

So yes, it works.
No, I don’t know how.
But the tests passed, so we ship.


πŸ” refactor: replace API_TOKEN=SERVER_AUTH_DISABLED with AUTH_ENABLED flag for cleaner auth handling

Remember that time we used API_TOKEN=SERVER_AUTH_DISABLED to turn off auth?

Yeah… that was a phase.

We’ve matured now. We use real flags like adults.

Introducing: AUTH_ENABLED=false

  • No more pretending a token value is a config flag
  • No more explaining β€œno, really, it’s not a bug”
  • Just clean, honest, AUTH_ENABLED=false energy

The server still starts.
The logs still scream in uppercase.
But now, at least, we’re not lying to ourselves.


πŸ€– PR Message Note
Yes, an AI helped write this.
No, it didn’t question my life choices β€” but it probably should have.
The code? Mine.
The tests? Green.

But for now β€” we merge.
And we move on.

Summary of changes:

πŸ§‘β€πŸ’» Added FastMCP stdio server support (run_stdio and CLI integration)
πŸ› οΈ Refactored CLI helpers and constants for better modularity
🧹 Removed legacy CLI utils/helpers, migrated logic to new helpers
🏷️ Updated pyproject.toml and uv.lock with new dependencies (fastmcp, asgi-lifespan, etc.)
🐍 Improved logger to redirect to stderr in stdio mode
πŸ§ͺ Added integration tests for stdio connect/disconnect and FastMCP in-memory client
πŸ§ͺ Updated test fixtures to use new command discovery helpers
πŸ“¦ Updated Dockerfile to use correct healthcheck and port
πŸ“š Improved README and CONTRIBUTING docs for stdio, Docker, and Kubernetes usage
🏷️ Updated attribution, citation, and project metadata

βœ… Local Tests: all 126 tests passed successfully.
@Falamarcao Falamarcao self-assigned this Sep 10, 2025
@Falamarcao Falamarcao merged commit edb1bc4 into main Sep 10, 2025
7 checks passed
@Falamarcao Falamarcao deployed to pypi-publishing September 10, 2025 02:55 — with GitHub Actions Active
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant