Skip to content

Commit 2cbce09

Browse files
committed
Update network egress description
1 parent 15b57d9 commit 2cbce09

File tree

1 file changed

+18
-7
lines changed

1 file changed

+18
-7
lines changed

docs/toolhive/guides-cli/custom-permissions.md

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,17 +7,18 @@ sidebar_position: 50
77
---
88

99
ToolHive includes a permission system that lets you control an MCP server's
10-
access to the file system and network resources. This is crucial for maintaining
11-
security and ensuring that MCP servers operate within defined boundaries.
10+
access to your host's file system and to network resources. This is crucial for
11+
maintaining security and ensuring that MCP servers operate within defined
12+
boundaries.
1213

1314
This guide shows you how to create and apply custom permission profiles for MCP
1415
servers, including built-in profiles and examples of common use cases.
1516

1617
## Understanding permission profiles
1718

18-
Permissions are defined using JSON permission profiles. These profiles specify:
19+
Permissions are defined using permission profiles. These profiles specify:
1920

20-
- File system access (read and/or write access to specific paths)
21+
- Host file system access (read and/or write access to specific paths)
2122
- Network access rules (outbound connections from the MCP server)
2223

2324
:::note
@@ -184,9 +185,11 @@ When network isolation is enabled, ToolHive creates a secure network
184185
architecture around your MCP server. Along with the main MCP server container,
185186
ToolHive launches:
186187

187-
- **Two Squid proxy containers** (ingress and egress) that filter incoming and
188-
outgoing network traffic
188+
- **An egress Squid proxy container** that filters outgoing network traffic
189189
- **A dnsmasq container** that provides controlled DNS resolution
190+
- **An ingress Squid proxy container** that proxies incoming SSE requests from
191+
the ToolHive proxy process (only for MCP servers using SSE transport; stdio
192+
MCP servers don't need this since they don't expose ports)
190193

191194
This multi-container setup ensures that all network traffic flows through
192195
controlled proxy points, allowing ToolHive to enforce the network access rules
@@ -302,5 +305,13 @@ If your MCP server can't connect to external services:
302305

303306
1. Verify that your profile allows the necessary hosts and ports
304307
2. Check that the transport protocol (TCP/UDP) is allowed
305-
3. Try temporarily using the default `network` profile to confirm it's a
308+
3. Check the logs of the egress proxy container for any blocked requests:
309+
310+
```bash
311+
docker logs <mcp-server-name>-egress
312+
```
313+
314+
Look for messages indicating denied connections.
315+
316+
4. Try temporarily using the default `network` profile to confirm it's a
306317
permissions issue

0 commit comments

Comments
 (0)