FastMCP
gofastmcp.com
WebsitesThe fast, Pythonic way to build MCP servers and clients.
llms.txt
FastMCP
The fast, Pythonic way to build MCP servers and clients.
Docs
- Architecture: How FastMCP apps work under the hood — from Python to pixels.
- Development: Preview and test your app tools locally without a full MCP host.
- Examples: Example apps you can run right now.
- FastMCPApp: Wire an interactive UI to backend tools with managed visibility and composition safety.
- Generative UI: Let the LLM build custom Prefab UIs on the fly.
- Custom HTML Apps: Build apps with your own HTML, CSS, and JavaScript using the MCP Apps extension directly.
- Apps: Give your tools interactive UIs rendered directly in the conversation.
- Interactive Tools: Turn your tools into interactive UIs with charts, tables, and dashboards.
- Approval: Human-in-the-loop approval gates for agent actions
- Choice: Present clickable options instead of free-text responses
- File Upload: Drag-and-drop file upload for any MCP server
- Form Input: Collect structured data from users via Pydantic models
- Quickstart: Build your first FastMCP app in under a minute.
- Changelog
- Auth Utilities: Create and validate CIMD documents for OAuth
- Client Commands: List tools, call them, and discover configured servers
- Generate CLI: Scaffold a standalone typed CLI from any MCP server
- Inspecting Servers: View a server's components and metadata
- Install MCP Servers: Install MCP servers into Claude, Cursor, Gemini, and other clients
- CLI: The fastmcp command-line interface
- Running Servers: Start, develop, and configure servers from the command line
- Bearer Token Authentication: Authenticate your FastMCP client with a Bearer token.
- CIMD Authentication: Use Client ID Metadata Documents for verifiable, domain-based client identity.
- OAuth Authentication: Authenticate your FastMCP client via OAuth 2.1.
- The FastMCP Client: Programmatic client for interacting with MCP servers through a well-typed, Pythonic interface.
- Client-Only Package: Use FastMCP's client without installing the full server framework.
- User Elicitation: Handle server requests for structured user input.
- fastmcp-remote: Bridge remote MCP servers into stdio-only MCP hosts with uvx fastmcp-remote.
- Server Logging: Receive and handle log messages from MCP servers.
- Notifications: Handle server-sent notifications for list changes and other events.
- Progress Monitoring: Handle progress notifications from long-running server operations.
- Getting Prompts: Retrieve rendered message templates with automatic argument serialization.
- Reading Resources: Access static and templated data sources from MCP servers.
- Client Roots: Provide local context and resource boundaries to MCP servers.
- LLM Sampling: Handle server-initiated LLM completion requests.
- Background Tasks: Execute operations asynchronously and track their progress.
- Calling Tools: Execute server-side tools and handle structured results.
- Client Transports: Configure how clients connect to and communicate with MCP servers.
- HTTP Deployment: Deploy your FastMCP server over HTTP for remote access
- Prefect Horizon: The MCP platform from the FastMCP team
- Running Your Server: Learn how to run your FastMCP server locally for development and testing
- Sandboxed Agents: Expose MCP tools to isolated agents without giving the sandbox long-lived credentials.
- Project Configuration: Use fastmcp.json for portable, declarative project configuration
- Contributing: Development workflow for FastMCP contributors
- Releases: FastMCP versioning and release process
- Tests: Testing patterns and requirements for FastMCP
- Installation: Install FastMCP and verify your setup
- Quickstart
- Upgrading from FastMCP 2: Migration instructions for upgrading between FastMCP versions
- Upgrading from the MCP Low-Level SDK: Upgrade your MCP server from the low-level Python SDK's Server class to FastMCP
- Upgrading from the MCP SDK: Upgrade from FastMCP in the MCP Python SDK to the standalone FastMCP framework
- Welcome to FastMCP: The fast, Pythonic way to build MCP servers, clients, and applications.
- Anthropic API 🤝 FastMCP: Connect FastMCP servers to the Anthropic API
- Auth0 OAuth 🤝 FastMCP: Secure your FastMCP server with Auth0 OAuth
- AuthKit 🤝 FastMCP: Secure your FastMCP server with AuthKit by WorkOS
- AWS Cognito OAuth 🤝 FastMCP: Secure your FastMCP server with AWS Cognito user pools
- Azure (Microsoft Entra ID) OAuth 🤝 FastMCP: Secure your FastMCP server with Azure/Microsoft Entra OAuth
- ChatGPT 🤝 FastMCP: Connect FastMCP servers to ChatGPT in Chat and Deep Research modes
- Claude Code 🤝 FastMCP: Install and use FastMCP servers in Claude Code
- Claude Desktop 🤝 FastMCP: Connect FastMCP servers to Claude Desktop
- Cursor 🤝 FastMCP: Install and use FastMCP servers in Cursor
- Descope 🤝 FastMCP: Secure your FastMCP server with Descope
- Discord OAuth 🤝 FastMCP: Secure your FastMCP server with Discord OAuth
- Eunomia Authorization 🤝 FastMCP: Add policy-based authorization to your FastMCP servers with Eunomia
- FastAPI 🤝 FastMCP: Integrate FastMCP with FastAPI applications
- Gemini SDK 🤝 FastMCP: Connect FastMCP servers to the Google Gemini SDK
- Gemini CLI 🤝 FastMCP: Install and use FastMCP servers in Gemini CLI
- GitHub OAuth 🤝 FastMCP: Secure your FastMCP server with GitHub OAuth
- Google OAuth 🤝 FastMCP: Secure your FastMCP server with Google OAuth
- Goose 🤝 FastMCP: Install and use FastMCP servers in Goose
- Keycloak OAuth 🤝 FastMCP: Secure your FastMCP server with Keycloak OAuth
- MCP JSON Configuration 🤝 FastMCP: Generate standard MCP configuration files for any compatible client
- OCI IAM OAuth 🤝 FastMCP: Secure your FastMCP server with OCI IAM OAuth
- OpenAI API 🤝 FastMCP: Connect FastMCP servers to the OpenAI API
- OpenAPI 🤝 FastMCP: Generate MCP servers from any OpenAPI specification
- Permit.io Authorization 🤝 FastMCP: Add fine-grained authorization to your FastMCP servers with Permit.io
- PropelAuth 🤝 FastMCP: Secure your FastMCP server with PropelAuth
- Pydantic AI 🤝 FastMCP: Connect FastMCP servers to Pydantic AI agents using the FastMCPToolset
- Scalekit 🤝 FastMCP: Secure your FastMCP server with Scalekit
- Supabase 🤝 FastMCP: Secure your FastMCP server with Supabase Auth
- WorkOS 🤝 FastMCP: Authenticate FastMCP servers with WorkOS Connect
- FAQ: Answers to common questions about installing and using FastMCP
- Settings: Configure FastMCP behavior through environment variables or a .env file.
- Contrib Modules: Community-contributed modules extending FastMCP
- init
- app
- approval
- choice
- config
- file_upload
- form
- generative
- cli
- client
- decorators
- dependencies
- exceptions
- init
- init
- handlers
- init
- code_mode
- mcp_config
- prompts
- resources
- server
- settings
- telemetry
- tools
- types
- init
- async_utils
- auth
- authorization
- cli
- components
- docstring_parsing
- exceptions
- http
- inspect
- json_schema
- json_schema_type
- lifespan
- logging
- init
- init
- init
- base
- uv
- mcp_server_config
- init
- base
- filesystem
- mime
- openapi
- pagination
- skills
- tasks
- tests
- timeout
- token_cache
- types
- ui
- version_check
- versions
- Authentication: Secure your FastMCP server with flexible authentication patterns, from simple API keys to full OAuth 2.1 integration with external identity providers.
- Full OAuth Server: Build a self-contained authentication system where your FastMCP server manages users, issues tokens, and validates them.
- Multiple Auth Sources: Accept tokens from multiple authentication sources with a single server.
- OAuth Proxy: Bridge traditional OAuth providers to work seamlessly with MCP's authentication flow.
- OIDC Proxy: Bridge OIDC providers to work seamlessly with MCP's authentication flow.
- Remote OAuth: Integrate your FastMCP server with external identity providers like Descope, WorkOS, Auth0, and corporate SSO systems.
- Token Verification: Protect your server by validating bearer tokens issued by external systems.
- Authorization: Control access to components using callable-based authorization checks that filter visibility and enforce permissions.
- Composing Servers: Combine multiple servers into one
- MCP Context: Access MCP capabilities like logging, progress, and resources within your MCP objects.
- Dependency Injection: Inject runtime values like HTTP requests, access tokens, and custom dependencies into your MCP components.
- User Elicitation: Request structured input from users during tool execution through the MCP context.
- Icons: Add visual icons to your servers, tools, resources, and prompts
- Lifespans: Server-level setup and teardown with composable lifespans
- Client Logging: Send log messages back to MCP clients through the context.
- Middleware: Add cross-cutting functionality to your MCP server with middleware that intercepts and modifies requests and responses.
- Pagination: Control how servers return large lists of components to clients.
- Progress Reporting: Update clients on the progress of long-running operations through the MCP context.
- Prompts: Create reusable, parameterized prompt templates for MCP clients.
- Custom Providers: Build providers that source components from any data source
- Filesystem Provider: Automatic component discovery from Python files
- Local Provider: The default provider for decorator-registered components
- Providers: How FastMCP sources tools, resources, and prompts
- MCP Proxy Provider: Source components from other MCP servers
- Skills Provider: Expose agent skills as MCP resources
- Resources & Templates: Expose data sources and dynamic content generators to your MCP client.
- Sampling: Request LLM text generation from the client or a configured provider through the MCP context.
- The FastMCP Server: The core FastMCP server class for building MCP applications
- Storage Backends: Configure persistent and distributed storage for caching and OAuth state management
- Background Tasks: Run long-running operations asynchronously with progress tracking
- OpenTelemetry: Native OpenTelemetry instrumentation for distributed tracing.
- Testing your FastMCP Server: How to test your FastMCP server.
- Tool Fingerprinting: Build stable fingerprints for tool identity and schema change detection
- Tools: Expose functions as executable capabilities for your MCP client.
- Code Mode: Let LLMs write Python to orchestrate tools in a sandbox
- Namespace Transform: Prefix component names to prevent conflicts
- Prompts as Tools: Expose prompts to tool-only clients
- Resources as Tools: Expose resources to tool-only clients
- Tool Search: Replace large tool catalogs with on-demand search
- Tool Transformation: Modify tool schemas - rename, reshape arguments, and customize behavior
- Transforms Overview: Modify components as they flow through your server
- Versioning: Serve multiple API versions from a single codebase
- Component Visibility: Control which components are available to clients
- FastMCP Updates
Related
llmtxt.app – AI SEO & Search Engine Optimization Directory
/llms.txt
635 tokens
/llms-full.txt
2,429 tokens
Websites