Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions docs/toolhive/guides-cli/client-configuration.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -115,13 +115,13 @@ thv list
Example output (some fields omitted for brevity):

```text
NAME PACKAGE STATUS URL PORT
github ghcr.io/github/github-mcp-server:latest running http://127.0.0.1:55264/sse#github 55264
osv ghcr.io/stackloklabs/osv-mcp/server:latest running http://127.0.0.1:22089/mcp 22089
NAME PACKAGE STATUS URL PORT
github ghcr.io/github/github-mcp-server:latest running http://127.0.0.1:55264/mcp 55264
sqlite ghcr.io/stackloklabs/sqlite-mcp/server:latest running http://127.0.0.1:22089/sse#sqlite 22089
```

In this example, the `github` server uses the SSE transport (URL ends in
`/sse`), and the `osv` server uses Streamable HTTP (URL ends in `/mcp`).
In this example, the `github` server uses the Streamable HTTP transport (URL
ends in `/mcp`), and the `sqlite` server uses SSE (URL ends in `/sse`).

You can also get the list in JSON format, which works with many clients that use
the standard configuration format:
Expand All @@ -136,10 +136,10 @@ Example output:
{
"mcpServers": {
"github": {
"url": "http://127.0.0.1:55264/sse#github"
"url": "http://127.0.0.1:55264/mcp"
},
"osv": {
"url": "http://127.0.0.1:22089/mcp"
"sqlite": {
"url": "http://127.0.0.1:22089/sse#sqlite"
}
}
}
Expand Down
15 changes: 6 additions & 9 deletions docs/toolhive/guides-cli/run-mcp-servers.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -365,15 +365,12 @@ ToolHive supports the following transport methods:

:::info

We are actively monitoring the adoption of the Streamable HTTP protocol across
the client ecosystem. Once we confirm that ToolHive's supported clients support
Streamable HTTP, we will make it the default proxy transport method for stdio
servers.

Currently, you can add the `--proxy-mode streamable-http` flag to the
[`thv run`](../reference/cli/thv_run.md) command to use Streamable HTTP for
stdio servers. This will ensure that the server is compatible with the latest
MCP specification and can be used with clients that support Streamable HTTP.
As of ToolHive CLI version 0.6.0, the default proxy mode for `stdio` MCP servers
is `streamable-http`.

For backward compatibility with the deprecated SSE transport, you can explicitly
set the transport to `sse` using the `--proxy-mode sse` flag when running the
server.

:::

Expand Down
38 changes: 22 additions & 16 deletions docs/toolhive/reference/client-compatibility.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -105,9 +105,9 @@ Example configuration:
```json
{
"servers": {
"github": { "url": "http://localhost:19046/sse#github", "type": "sse" },
"github": { "url": "http://localhost:19046/mcp", "type": "http" },
"fetch": { "url": "http://localhost:43832/mcp", "type": "http" },
"osv": { "url": "http://localhost:51712/mcp", "type": "http" }
"sqlite": { "url": "http://localhost:51712/sqlite", "type": "sse" }
}
}
```
Expand All @@ -129,9 +129,9 @@ Example configuration:
```json
{
"mcpServers": {
"github": { "url": "http://localhost:19046/sse#github" },
"github": { "url": "http://localhost:19046/mcp" },
"fetch": { "url": "http://localhost:43832/mcp" },
"osv": { "url": "http://localhost:51712/mcp" }
"sqlite": { "url": "http://localhost:51712/sse#sqlite" }
}
}
```
Expand All @@ -157,9 +157,9 @@ Example configuration:
// Other Claude Code settings...

"mcpServers": {
"github": { "url": "http://localhost:19046/sse#github", "type": "sse" },
"github": { "url": "http://localhost:19046/mcp", "type": "http" },
"fetch": { "url": "http://localhost:43832/mcp", "type": "http" },
"osv": { "url": "http://localhost:51712/mcp", "type": "http" }
"sqlite": { "url": "http://localhost:51712/sse#sqlite", "type": "sse" }
}
}
```
Expand Down Expand Up @@ -199,9 +199,12 @@ Example configuration:
```json
{
"mcpServers": {
"github": { "url": "http://localhost:19046/sse#github", "type": "sse" },
"github": {
"url": "http://localhost:19046/mcp",
"type": "streamable-http"
},
"fetch": { "url": "http://localhost:43832/mcp", "type": "streamable-http" },
"osv": { "url": "http://localhost:51712/mcp", "type": "streamable-http" }
"sqlite": { "url": "http://localhost:51712/sse#sqlite", "type": "sse" }
// Note: Cline uses "streamableHttp" instead of "streamable-http"
}
}
Expand All @@ -226,11 +229,14 @@ Example configuration:
```yaml
mcpServers:
- name: github
type: sse
url: http://localhost:19046/sse#github
type: streamable-http
url: http://localhost:19046/mcp
- name: fetch
type: streamable-http
url: http://localhost:43832/mcp
- name: sqlite
type: sse
url: http://localhost:51712/sse#sqlite
```

Continue supports SSE (`type: sse`) and Streamable HTTP
Expand All @@ -254,11 +260,11 @@ For [PydanticAI](https://ai.pydantic.dev/), set the MCP server URL in your code:
from pydantic_ai.mcp import MCPServerSSE
from pydantic_ai.mcp import MCPServerStreamableHTTP

# For Server-Sent Events (SSE)
server = MCPServerSSE(url='http://localhost:43832/sse#github')

# For Streamable HTTP
server = MCPServerStreamableHTTP(url='http://localhost:51712/mcp')
server = MCPServerStreamableHTTP(url='http://localhost:43832/mcp')

# For Server-Sent Events (SSE)
server = MCPServerSSE(url='http://localhost:51712/sse#sqlite')
```

### Example: Copilot for JetBrains IDEs
Expand All @@ -271,8 +277,8 @@ to include the MCP server URL:
```json
{
"servers": {
"github": { "url": "http://localhost:43832/sse#github", "type": "sse" },
"fetch": { "url": "http://localhost:51712/mcp", "type": "http" }
"github": { "url": "http://localhost:43832/mcp", "type": "http" },
"sqlite": { "url": "http://localhost:51712/sse#sqlite", "type": "sse" }
}
}
```
Expand Down
4 changes: 2 additions & 2 deletions docs/toolhive/tutorials/quickstart-cli.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -229,8 +229,8 @@ thv list
You should see output similar to this:

```text
NAME PACKAGE STATUS URL PORT TOOL TYPE CREATED AT
fetch ghcr.io/stackloklabs/gofetch/server:latest running http://127.0.0.1:15266/sse#fetch 15266 mcp 2025-07-10 08:41:56 -0400 EDT
NAME PACKAGE STATUS URL PORT TOOL TYPE CREATED AT
fetch ghcr.io/stackloklabs/gofetch/server:latest running http://127.0.0.1:15266/mcp 15266 mcp 2025-07-10 08:41:56 -0400 EDT
```

This confirms that the fetch server is running and available on port 49226.
Expand Down