--- title: cli sidebarTitle: cli --- # `fastmcp.cli.cli` FastMCP CLI tools using Cyclopts. ## Functions ### `version` ```python version() ``` Display version information and platform details. ### `dev` ```python dev(server_spec: str | None = None) -> None ``` Run an MCP server with the MCP Inspector for development. **Args:** - `server_spec`: Python file to run, optionally with \:object suffix, or None to auto-detect fastmcp.json ### `run` ```python run(server_spec: str | None = None, *server_args: str) -> None ``` Run an MCP server or connect to a remote one. The server can be specified in several ways: 1. Module approach: "server.py" - runs the module directly, looking for an object named 'mcp', 'server', or 'app' 2. Import approach: "server.py:app" - imports and runs the specified server object 3. URL approach: "http://server-url" - connects to a remote server and creates a proxy 4. MCPConfig file: "mcp.json" - runs as a proxy server for the MCP Servers in the MCPConfig file 5. FastMCP config: "fastmcp.json" - runs server using FastMCP configuration 6. No argument: looks for fastmcp.json in current directory Server arguments can be passed after -- : fastmcp run server.py -- --config config.json --debug **Args:** - `server_spec`: Python file, object specification (file\:obj), config file, URL, or None to auto-detect ### `inspect` ```python inspect(server_spec: str | None = None) -> None ``` Inspect an MCP server and generate a JSON report. This command analyzes an MCP server and generates a comprehensive JSON report containing information about the server's name, instructions, version, tools, prompts, resources, templates, and capabilities. **Examples:** fastmcp inspect server.py fastmcp inspect server.py -o report.json fastmcp inspect server.py:mcp -o analysis.json fastmcp inspect path/to/server.py:app -o /tmp/server-info.json fastmcp inspect fastmcp.json fastmcp inspect # auto-detect fastmcp.json **Args:** - `server_spec`: Python file to inspect, optionally with \:object suffix, or fastmcp.json