Files
mcp-use__mcp-use/docs/python/api-reference/mcp_use_server_runner.mdx
pietrozullo ad42b4bb3e docs: noindex auto-generated Python API reference instead of searchable flag
The searchable: false approach on the API Reference tab was inert on
visible tabs. Switch to per-page noindex: true frontmatter, which keeps
pages in the sidebar but excludes them from search indexing (search
engines, internal docs search, and AI context) so generic queries like
"CLI" surface curated guides instead of the generated reference.

Applied to all 73 existing reference pages and emitted by the generator
on every regeneration.

Closes MCP-2398
2026-06-29 10:23:42 +02:00

130 lines
3.7 KiB
Plaintext

---
title: "Runner"
description: "Server runner for different transport types API Documentation"
icon: "code"
github: "https://github.com/mcp-use/mcp-use/blob/main/libraries/python/mcp_use/server/runner.py"
noindex: true
---
import {RandomGradientBackground} from "/snippets/gradient.jsx"
<Callout type="info" title="Source Code">
View the source code for this module on GitHub: <a href='https://github.com/mcp-use/mcp-use/blob/main/libraries/python/mcp_use/server/runner.py' target='_blank' rel='noopener noreferrer'>https://github.com/mcp-use/mcp-use/blob/main/libraries/python/mcp_use/server/runner.py</a>
</Callout>
Server runner for different transport types.
## ServerRunner
<div>
<RandomGradientBackground className="rounded-lg p-4 w-full h-full rounded-full">
<div className="text-black">
<div className="text-black font-bold text-xl mb-2 mt-8"><code className="!text-black">class</code> ServerRunner</div>
Handles running the server with different transport types.
</div>
</RandomGradientBackground>
```python
from mcp_use.server.runner import ServerRunner
```
<Card type="info">
### `method` __init__
**Parameters**
><ParamField body="server" type="MCPServer" required="True" > Server name or configuration </ParamField>
**Signature**
```python wrap
def __init__(server: MCPServer):
```
</Card>
<Card type="info">
### `method` run
Run the MCP server.
**Parameters**
><ParamField body="transport" type="Literal" default='streamable-http' > Transport protocol to use ("stdio", "streamable-http" or "sse") </ParamField>
><ParamField body="host" type="str" default='127.0.0.1' > Host to bind to </ParamField>
><ParamField body="port" type="int" default="8000" > Port to bind to </ParamField>
><ParamField body="reload" type="bool" default="False" > Whether to enable auto-reload </ParamField>
**Signature**
```python wrap
def run(
transport: Literal = "streamable-http",
host: str = "127.0.0.1",
port: int = 8000,
reload: bool = False
):
```
</Card>
<Card type="info">
### `method` run_sse_async
Run the server using SSE transport.
**Parameters**
><ParamField body="host" type="str" default='127.0.0.1' > String value </ParamField>
><ParamField body="port" type="int" default="8000" > Integer value </ParamField>
><ParamField body="reload" type="bool" default="False" > Boolean flag </ParamField>
**Signature**
```python wrap
def run_sse_async(host: str = "127.0.0.1", port: int = 8000, reload: bool = False):
```
</Card>
<Card type="info">
### `method` run_streamable_http_async
Run the server using StreamableHTTP transport.
**Parameters**
><ParamField body="host" type="str" default='127.0.0.1' > String value </ParamField>
><ParamField body="port" type="int" default="8000" > Integer value </ParamField>
><ParamField body="reload" type="bool" default="False" > Boolean flag </ParamField>
**Signature**
```python wrap
def run_streamable_http_async(host: str = "127.0.0.1", port: int = 8000, reload: bool = False):
```
</Card>
<Card type="info">
### `method` serve_starlette_app
**Parameters**
><ParamField body="starlette_app" type="starlette.applications.Starlette" required="True" > Parameter value </ParamField>
><ParamField body="host" type="str" default='127.0.0.1' > String value </ParamField>
><ParamField body="port" type="int" default="8000" > Integer value </ParamField>
><ParamField body="transport" type="Literal | None" default="None" > Parameter value </ParamField>
><ParamField body="reload" type="bool" default="False" > Boolean flag </ParamField>
**Signature**
```python wrap
def serve_starlette_app(
starlette_app: starlette.applications.Starlette,
host: str = "127.0.0.1",
port: int = 8000,
transport: Literal | None = None,
reload: bool = False
):
```
</Card>
</div>