Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
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
2 changes: 1 addition & 1 deletion examples/mcp/openai-github.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -206,7 +206,7 @@ spec:
path: "/mcp/x/issues/readonly"
toolSelector:
include:
- get_issue
- issue_read
- list_issues
securityPolicy:
apiKey:
Expand Down
2 changes: 1 addition & 1 deletion internal/autoconfig/config_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -357,7 +357,7 @@ func TestWriteConfig(t *testing.T) {
BackendName: "github",
Path: "/mcp/x/issues/readonly",
APIKey: "${GITHUB_MCP_TOKEN}",
IncludeTools: []string{"get_issue", "list_issues"},
IncludeTools: []string{"issue_read", "list_issues"},
},
},
},
Expand Down
8 changes: 4 additions & 4 deletions internal/autoconfig/mcp_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ func TestAddMCPServersConfig(t *testing.T) {
Headers: map[string]string{
"Authorization": "Bearer ${GITHUB_MCP_TOKEN}",
},
IncludeTools: []string{"list_issues", "get_issue"},
IncludeTools: []string{"list_issues", "issue_read"},
},
},
},
Expand All @@ -45,7 +45,7 @@ func TestAddMCPServersConfig(t *testing.T) {
{
BackendName: "github",
Path: "/mcp/x/issues/readonly",
IncludeTools: []string{"list_issues", "get_issue"},
IncludeTools: []string{"list_issues", "issue_read"},
APIKey: "${GITHUB_MCP_TOKEN}",
Headers: map[string]string{},
},
Expand Down Expand Up @@ -104,7 +104,7 @@ func TestAddMCPServersConfig(t *testing.T) {
Headers: map[string]string{
"Authorization": "Bearer ${GITHUB_MCP_TOKEN}",
},
IncludeTools: []string{"list_issues", "get_issue"},
IncludeTools: []string{"list_issues", "issue_read"},
},
},
},
Expand All @@ -129,7 +129,7 @@ func TestAddMCPServersConfig(t *testing.T) {
{
BackendName: "github",
Path: "/mcp/x/issues/readonly",
IncludeTools: []string{"list_issues", "get_issue"},
IncludeTools: []string{"list_issues", "issue_read"},
APIKey: "${GITHUB_MCP_TOKEN}",
Headers: map[string]string{},
},
Expand Down
2 changes: 1 addition & 1 deletion internal/autoconfig/testdata/openai-github.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,7 @@ spec:
path: "/mcp/x/issues/readonly"
toolSelector:
include:
- get_issue
- issue_read
- list_issues
securityPolicy:
apiKey:
Expand Down
2 changes: 1 addition & 1 deletion site/blog/2025/2025-10-02-mcp-implementation.md
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ You can also use some features, like Tool Filtering, with the existing server fi
"headers": {
"Authorization": "Bearer ${GITHUB_ACCESS_TOKEN}"
},
"tools": ["get_issue", "list_issues"]
"tools": ["issue_read", "list_issues"]
}
}
}
Expand Down
6 changes: 3 additions & 3 deletions site/docs/capabilities/mcp/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ sequenceDiagram

- **Session Management**: The gateway creates unified sessions by encoding multiple backend session IDs, handling reconnection with `Last-Event-ID` support for SSE streams.
- **Notification Handling**: Long-lived SSE streams from multiple MCP servers are merged into a single stream for clients, with proper event ID reconstruction.
- **Request Routing**: Tool names are automatically prefixed with the backend name (e.g., `github__get_issue`) to route calls to the correct upstream server.
- **Request Routing**: Tool names are automatically prefixed with the backend name (e.g., `github__issue_read`) to route calls to the correct upstream server.

For detailed architecture and design decisions, see the [MCP Gateway proposal](https://github.com/envoyproxy/ai-gateway/tree/main/docs/proposals/006-mcp-gateway).

Expand Down Expand Up @@ -151,7 +151,7 @@ spec:
path: "/mcp/x/issues/readonly"
toolSelector:
includeRegex:
- .*_issues?.* # Matches get_issue, list_issues, etc.
- .*issues?.* # Matches issue_read, list_issues, etc.
securityPolicy:
apiKey:
secretRef:
Expand Down Expand Up @@ -205,7 +205,7 @@ spec:

Clients will see all tools with prefixed names:

- `github__get_issue`
- `github__issue_read`
- `github__list_issues`
- `context7__resolve-library-id`
- `context7__get-library-docs`
Expand Down
6 changes: 3 additions & 3 deletions site/docs/cli/run.md
Original file line number Diff line number Diff line change
Expand Up @@ -162,7 +162,7 @@ Use the `--mcp-config` flag to load MCP server configuration from a JSON file. T
"headers": {
"Authorization": "Bearer ${GITHUB_ACCESS_TOKEN}"
},
"includeTools": ["get_issue", "list_issues"]
"includeTools": ["issue_read", "list_issues"]
}
}
}
Expand Down Expand Up @@ -220,7 +220,7 @@ This follows the same convention as [Gemini CLI's tool filtering](https://google
Example:

```json
"includeTools": ["get_issue", "list_issues", "search_issues"]
"includeTools": ["issue_read", "list_issues", "search_issues"]
```

### Testing the MCP Gateway
Expand All @@ -240,7 +240,7 @@ npx @modelcontextprotocol/inspector@0.16.8 \
```

:::note
Tool names are automatically prefixed with the server name (e.g., `github__get_issue`, `context7__resolve-library-id`) to route calls to the correct backend.
Tool names are automatically prefixed with the server name (e.g., `github__issue_read`, `context7__resolve-library-id`) to route calls to the correct backend.
:::

### Advanced MCP Configuration
Expand Down
4 changes: 1 addition & 3 deletions tests/e2e-aigw/examples_mcp_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -44,12 +44,10 @@ var (
filteredAllTools = []string{
"context7__get-library-docs",
"context7__resolve-library-id",
"github__get_issue",
"github__get_issue_comments",
"github__issue_read",
"github__list_issue_types",
"github__list_issues",
"github__list_pull_requests",
"github__list_sub_issues",
"github__pull_request_read",
"github__search_issues",
"github__search_pull_requests",
Expand Down
4 changes: 1 addition & 3 deletions tests/extproc/mcp/publicmcp_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -88,13 +88,11 @@ func TestPublicMCPServers(t *testing.T) {
}

if githubConfigured {
exps = append(exps, "github__get_issue")
exps = append(exps, "github__get_issue_comments")
exps = append(exps, "github__issue_read")
exps = append(exps, "github__pull_request_read")
exps = append(exps, "github__list_issue_types")
exps = append(exps, "github__list_issues")
exps = append(exps, "github__list_pull_requests")
exps = append(exps, "github__list_sub_issues")
exps = append(exps, "github__search_issues")
exps = append(exps, "github__search_pull_requests")
}
Expand Down