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