Skip to main content
'F' logo on a watercolor background 'F' logo on a watercolor background FastMCP is the standard framework for building MCP applications. The Model Context Protocol (MCP) connects LLMs to tools and data. FastMCP gives you everything you need to go from idea to production — build servers that expose capabilities, connect clients to any MCP service, and give your tools interactive UIs:
from fastmcp import FastMCP

mcp = FastMCP("Demo 🚀")

@mcp.tool
def add(a: int, b: int) -> int:
    """Add two numbers"""
    return a + b

if __name__ == "__main__":
    mcp.run()

Move Fast and Make Things

The Model Context Protocol (MCP) lets you give agents access to your tools and data. But building an effective MCP application is harder than it looks. FastMCP handles all of it. Declare a tool with a Python function, and the schema, validation, and documentation are generated automatically. Connect to a server with a URL, and transport negotiation, authentication, and protocol lifecycle are managed for you. You focus on your logic, and the MCP part just works: with FastMCP, best practices are built in. That’s why FastMCP is the standard framework for working with MCP. FastMCP 1.0 was incorporated into the official MCP SDK in 2024. Today, the actively maintained standalone project is downloaded a million times a day, and some version of FastMCP powers 70% of MCP servers across all languages. FastMCP has three pillars: Servers wrap your Python functions into MCP-compliant tools, resources, and prompts. Clients connect to any server with full protocol support. And Apps give your tools interactive UIs rendered directly in the conversation. Ready to build? Start with the installation guide or jump straight to the quickstart. When you’re ready to deploy, Prefect Horizon offers free hosting for FastMCP users. FastMCP is made with 💙 by Prefect.
This documentation reflects FastMCP’s main branch, meaning it always reflects the latest development version. Features are generally marked with version badges (e.g. New in version: 3.0.0) to indicate when they were introduced. Note that this may include features that are not yet released.

LLM-Friendly Docs

The FastMCP documentation is available in multiple LLM-friendly formats:

MCP Server

The FastMCP docs are accessible via MCP! The server URL is https://gofastmcp.com/mcp. In fact, you can use FastMCP to search the FastMCP docs:
import asyncio
from fastmcp import Client

async def main():
    async with Client("https://gofastmcp.com/mcp") as client:
        result = await client.call_tool(
            name="SearchFastMcp",
            arguments={"query": "deploy a FastMCP server"}
        )
    print(result)

asyncio.run(main())

Text Formats

The docs are also available in llms.txt format:
  • llms.txt - A sitemap listing all documentation pages
  • llms-full.txt - The entire documentation in one file (may exceed context windows)
Any page can be accessed as markdown by appending .md to the URL. For example, this page becomes https://gofastmcp.com/getting-started/welcome.md. You can also copy any page as markdown by pressing “Cmd+C” (or “Ctrl+C” on Windows) on your keyboard.