--- title: mcp_config sidebarTitle: mcp_config --- # `fastmcp.mcp_config` Canonical MCP Configuration Format. This module defines the standard configuration format for Model Context Protocol (MCP) servers. It provides a client-agnostic, extensible format that can be used across all MCP implementations. The configuration format supports both stdio and remote (HTTP/SSE) transports, with comprehensive field definitions for server metadata, authentication, and execution parameters. Example configuration: { "mcpServers": { "my-server": { "command": "npx", "args": ["-y", "@my/mcp-server"], "env": {"API_KEY": "secret"}, "timeout": 30000, "description": "My MCP server" } } } ## Functions ### `infer_transport_type_from_url` ```python infer_transport_type_from_url(url: str | AnyUrl) -> Literal['http', 'sse'] ``` Infer the appropriate transport type from the given URL. ### `update_config_file` ```python update_config_file(file_path: Path, server_name: str, server_config: StdioMCPServer | RemoteMCPServer) -> None ``` Update MCP configuration file with new server, preserving existing fields. ## Classes ### `StdioMCPServer` MCP server configuration for stdio transport. This is the canonical configuration format for MCP servers using stdio transport. **Methods:** #### `to_transport` ```python to_transport(self) -> StdioTransport ``` ### `RemoteMCPServer` MCP server configuration for HTTP/SSE transport. This is the canonical configuration format for MCP servers using remote transports. **Methods:** #### `to_transport` ```python to_transport(self) -> StreamableHttpTransport | SSETransport ``` ### `MCPConfig` Canonical MCP configuration format. This defines the standard configuration format for Model Context Protocol servers. The format is designed to be client-agnostic and extensible for future use cases. **Methods:** #### `from_dict` ```python from_dict(cls, config: dict[str, Any]) -> MCPConfig ``` Parse MCP configuration from dictionary format. #### `to_dict` ```python to_dict(self) -> dict[str, Any] ``` Convert MCPConfig to dictionary format, preserving all fields. #### `write_to_file` ```python write_to_file(self, file_path: Path) -> None ``` Write configuration to JSON file. #### `from_file` ```python from_file(cls, file_path: Path) -> MCPConfig ``` Load configuration from JSON file. #### `add_server` ```python add_server(self, name: str, server: StdioMCPServer | RemoteMCPServer) -> None ``` Add or update a server in the configuration. #### `remove_server` ```python remove_server(self, name: str) -> None ``` Remove a server from the configuration.