Guidance documentation comparing FastMCP (high-level) and Low-Level Server implementations for StreamableHTTP MCP servers in Python
Added comprehensive guidance documentation comparing FastMCP (high-level) and Low-Level Server implementations for StreamableHTTP MCP servers in Python, helping developers choose the right approach for their use case
Motivation and Context
Developers working with MCP in Python have two implementation approaches available: FastMCP for quick development and Low-Level Server for fine-grained control. Without clear guidance, developers may:
Choose an unnecessarily complex approach for simple use cases Miss important features and best practices Struggle with configuration and deployment decisions This documentation solves these problems by:
Clearly outlining when to use each approach Providing side-by-side comparisons with code examples Documenting stateful vs. stateless modes Explaining mounting strategies and path configurations Including practical examples for common scenarios
How Has This Been Tested?
Verified all code examples match existing examples in the repository ✅ Cross-referenced with actual implementations in [examples] ✅ Reviewed against FastMCP and Low-Level Server source code ✅ Tested markdown rendering and formatting ✅ Validated links and references to other documentation
Breaking Changes
None - This is a documentation-only addition with no impact on existing code or APIs
Types of changes
What types of changes does your code introduce? Put an x in all the boxes that apply: -->
- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to change)
- [X] Documentation update
Checklist
- [ X] I have read the MCP Documentation
- [X ] My code follows the repository's style guidelines
- [ X] New and existing tests pass locally
- [ X] I have added appropriate error handling
- [X ] I have added or updated documentation as needed
Additional context
File Structure:
Added: [guidance-fastmcp-vs-low-level-server.md](552 lines) Key Sections:
Overview of both approaches FastMCP features and advantages (high-level API) Low-Level Server features and use cases Side-by-side comparison table Stateful vs. Stateless mode comparison Migration guidance between approaches Decision flowchart and recommendations Documentation Strategy:
Uses practical code examples from the existing [examples] directory Includes comparison tables for quick reference Provides clear decision-making guidance Links to related documentation and examples This guidance fills a gap in the documentation by helping developers make informed architectural decisions early in their MCP server development process.