一键导入
fastmcp
Build, test, and deploy Python MCP servers.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Build, test, and deploy Python MCP servers.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | fastmcp |
| description | Build, test, and deploy Python MCP servers. |
| version | 1.0.0 |
| author | Hermes Agent |
| license | MIT |
| platforms | ["linux","macos","windows"] |
| metadata | {"hermes":{"tags":["MCP","FastMCP","Python","Tools","Resources","Prompts","Deployment"],"homepage":"https://gofastmcp.com","related_skills":["native-mcp","mcporter"]}} |
| prerequisites | {"commands":["python3"]} |
Build MCP servers in Python with FastMCP, validate them locally, install them into MCP clients, and deploy them as HTTP endpoints.
Use this skill when the task is to:
Use native-mcp when the server already exists and only needs to be connected to Hermes. Use mcporter when the goal is ad-hoc CLI access to an existing MCP server instead of building one.
Install FastMCP in the working environment first:
pip install fastmcp
fastmcp version
For the API template, install httpx if it is not already present:
pip install httpx
templates/api_wrapper.py - REST API wrapper with auth header supporttemplates/database_server.py - read-only SQLite query servertemplates/file_processor.py - text-file inspection and search serverscripts/scaffold_fastmcp.py - copy a starter template and replace the server name placeholderreferences/fastmcp-cli.md - FastMCP CLI workflow, installation targets, and deployment checksChoose the narrowest useful surface area first:
Prefer a thin server with good names, docstrings, and schemas over a large server with vague tools.
Copy a template directly or use the scaffold helper:
python ~/.hermes/skills/mcp/fastmcp/scripts/scaffold_fastmcp.py \
--template api_wrapper \
--name "Acme API" \
--output ./acme_server.py
Available templates:
python ~/.hermes/skills/mcp/fastmcp/scripts/scaffold_fastmcp.py --list
If copying manually, replace __SERVER_NAME__ with a real server name.
Start with @mcp.tool functions before adding resources or prompts.
Rules for tool design:
Good tool examples:
get_customersearch_ticketsdescribe_tablesummarize_text_fileWeak tool examples:
runprocessdo_thingAdd @mcp.resource when the client benefits from fetching stable read-only content such as schemas, policy docs, or generated reports.
Add @mcp.prompt when the server should provide a reusable prompt template for a known workflow.
Do not turn every document into a prompt. Prefer:
Use the FastMCP CLI for local validation:
fastmcp inspect acme_server.py:mcp
fastmcp list acme_server.py --json
fastmcp call acme_server.py search_resources query=router limit=5 --json
For fast iterative debugging, run the server locally:
fastmcp run acme_server.py:mcp
To test HTTP transport locally:
fastmcp run acme_server.py:mcp --transport http --host 127.0.0.1 --port 8000
fastmcp list http://127.0.0.1:8000/mcp --json
fastmcp call http://127.0.0.1:8000/mcp search_resources query=router --json
Always run at least one real fastmcp call against each new tool before claiming the server works.
FastMCP can register the server with supported MCP clients:
fastmcp install claude-code acme_server.py
fastmcp install claude-desktop acme_server.py
fastmcp install cursor acme_server.py -e .
Use fastmcp discover to inspect named MCP servers already configured on the machine.
When the goal is Hermes integration, either:
~/.hermes/config.yaml using the native-mcp skill, orFor managed hosting, Prefect Horizon is the path FastMCP documents most directly. Before deployment:
fastmcp inspect acme_server.py:mcp
Make sure the repo contains:
requirements.txt or pyproject.tomlFor generic HTTP hosting, validate the HTTP transport locally first, then deploy on any Python-compatible platform that can expose the server port.
Use when exposing a REST or HTTP API as MCP tools.
Recommended first slice:
Implementation notes:
Start from templates/api_wrapper.py.
Use when exposing safe query and inspection capabilities.
Recommended first slice:
list_tablesdescribe_tableImplementation notes:
SELECT SQL in early versionsStart from templates/database_server.py.
Use when the server needs to inspect or transform files on demand.
Recommended first slice:
Implementation notes:
Start from templates/file_processor.py.
Before handing off a FastMCP server, verify all of the following:
fastmcp inspect <file.py:mcp> succeedsfastmcp list <server spec> --json succeedsfastmcp callInstall the package in the active environment:
pip install fastmcp
fastmcp version
fastmcp inspect failsCheck that:
<file.py:object>Run:
fastmcp list server.py --json
fastmcp call server.py your_tool_name --json
This usually exposes naming mismatches, missing required arguments, or non-serializable return values.
The server-building part may be correct while the Hermes config is not. Load the native-mcp skill and configure the server in ~/.hermes/config.yaml, then restart Hermes.
For CLI details, install targets, and deployment checks, read references/fastmcp-cli.md.
Use, configure, theme, extend, and orchestrate Hermes Agent.
Delegate coding tasks to the Blackbox AI multi-model CLI.
Generate flat, minimal educational SVG visuals as HTML.
Plan and run multi-agent video production pipelines.
Create meme PNGs from templates with Pillow text overlay.
Modify or debug s6 services in the Hermes Docker image.