Directories
¶
| Path | Synopsis |
|---|---|
|
Package approval implements the hold-and-review parking lot: the place a tool call waits while a human decides whether it may run.
|
Package approval implements the hold-and-review parking lot: the place a tool call waits while a human decides whether it may run. |
|
Package audit defines the structured event stream the gateway emits: one event per protocol-level occurrence.
|
Package audit defines the structured event stream the gateway emits: one event per protocol-level occurrence. |
|
auth
|
|
|
authserver
Package authserver embeds an OAuth 2.1 authorization server in the gateway so MCP clients authenticate against the gateway itself instead of needing a separate IdP registration per client.
|
Package authserver embeds an OAuth 2.1 authorization server in the gateway so MCP clients authenticate against the gateway itself instead of needing a separate IdP registration per client. |
|
inbound
Package inbound implements the gateway's inbound authentication: turning an incoming HTTP request into an inspect.Identity.
|
Package inbound implements the gateway's inbound authentication: turning an incoming HTTP request into an inspect.Identity. |
|
outbound
Package outbound provides token sources for gateway→MCP-server authentication.
|
Package outbound provides token sources for gateway→MCP-server authentication. |
|
outbound/internal/core
Package core holds the value types shared by auth/outbound and its oauth subpackage.
|
Package core holds the value types shared by auth/outbound and its oauth subpackage. |
|
outbound/oauth
Package oauth implements the outbound OAuth machinery: RFC 9728/8414 metadata discovery, RFC 7591 dynamic client registration, the PKCE authorization-code flow, refresh-token renewal, and RFC 8693 token exchange.
|
Package oauth implements the outbound OAuth machinery: RFC 9728/8414 metadata discovery, RFC 7591 dynamic client registration, the PKCE authorization-code flow, refresh-token renewal, and RFC 8693 token exchange. |
|
Package backend defines the transport-agnostic connection to one MCP server (stdio subprocess or remote streamable-http endpoint).
|
Package backend defines the transport-agnostic connection to one MCP server (stdio subprocess or remote streamable-http endpoint). |
|
Package catalog ships a built-in list of publicly hosted remote MCP servers and converts entries into gateway backend configurations.
|
Package catalog ships a built-in list of publicly hosted remote MCP servers and converts entries into gateway backend configurations. |
|
Package checks implements every stage of the gateway's inspection pipeline: policy enforcement, approvals, server-request gating, rug-pull detection, catalog overrides, budgets, guardrail hooks, redaction, and the terminal audit tap.
|
Package checks implements every stage of the gateway's inspection pipeline: policy enforcement, approvals, server-request gating, rug-pull detection, catalog overrides, budgets, guardrail hooks, redaction, and the terminal audit tap. |
|
cmd
|
|
|
configcheck
command
Command configcheck validates mcpproxyd configuration files without starting the daemon: YAML syntax, ${ENV} expansion, and structural invariants (config.Validate).
|
Command configcheck validates mcpproxyd configuration files without starting the daemon: YAML syntax, ${ENV} expansion, and structural invariants (config.Validate). |
|
import-catalog
command
Command import-catalog generates mcpproxyd backend configuration from a catalog of remote MCP servers.
|
Command import-catalog generates mcpproxyd backend configuration from a catalog of remote MCP servers. |
|
mcpproxyd
command
Command mcpproxyd is the standalone MCP gateway daemon: one process serving one or many MCP backends behind /mcp with inbound auth, policy checks, approvals, telemetry, and session recording.
|
Command mcpproxyd is the standalone MCP gateway daemon: one process serving one or many MCP backends behind /mcp with inbound auth, policy checks, approvals, telemetry, and session recording. |
|
mcpsmoke
command
Command mcpsmoke is a scripted MCP client for smoke-testing the gateway.
|
Command mcpsmoke is a scripted MCP client for smoke-testing the gateway. |
|
Package config defines the gateway configuration schema (YAML for the standalone daemon; hoop later constructs these structs from connection opts).
|
Package config defines the gateway configuration schema (YAML for the standalone daemon; hoop later constructs these structs from connection opts). |
|
Package gateway is the MCP gateway core.
|
Package gateway is the MCP gateway core. |
|
Package inspect defines the gateway's message-inspection pipeline: every JSON-RPC message crossing the gateway, in either direction, flows through an ordered chain of Checks that may allow, mutate, deny, hold, or kill.
|
Package inspect defines the gateway's message-inspection pipeline: every JSON-RPC message crossing the gateway, in either direction, flows through an ordered chain of Checks that may allow, mutate, deny, hold, or kill. |
|
internal
|
|
|
testmcp
Package testmcp is a minimal, controllable MCP server for tests.
|
Package testmcp is a minimal, controllable MCP server for tests. |
|
testmcp/cmd
command
Command testmcp runs the testmcp server as a real stdio MCP binary, so tests can exercise the full spawn path (`go run ./internal/testmcp/cmd`) rather than in-process pipes alone.
|
Command testmcp runs the testmcp server as a real stdio MCP binary, so tests can exercise the full spawn path (`go run ./internal/testmcp/cmd`) rather than in-process pipes alone. |
|
Package jsonrpc implements a tolerant JSON-RPC 2.0 envelope used by the MCP gateway.
|
Package jsonrpc implements a tolerant JSON-RPC 2.0 envelope used by the MCP gateway. |
|
Package mcp holds the minimal MCP protocol vocabulary the gateway inspects.
|
Package mcp holds the minimal MCP protocol vocabulary the gateway inspects. |
|
Package optimizer trims a tools/list response down to the tools that matter for the session's stated purpose.
|
Package optimizer trims a tools/list response down to the tools that matter for the session's stated purpose. |
|
Package session holds per-MCP-session protocol state: request/response correlation, the observed tool catalog with fingerprints, identity, and arbitrary per-check state.
|
Package session holds per-MCP-session protocol state: request/response correlation, the observed tool catalog with fingerprints, identity, and arbitrary per-check state. |
|
Package telemetry implements the gateway's observability seam: a Prometheus registry for per-message counters/histograms and an optional OTLP trace exporter.
|
Package telemetry implements the gateway's observability seam: a Prometheus registry for per-message counters/histograms and an optional OTLP trace exporter. |
|
Package wal persists the audit stream as one append-only JSONL file per MCP session, giving post-hoc session review a durable record even if the gateway crashes mid-session.
|
Package wal persists the audit stream as one append-only JSONL file per MCP session, giving post-hoc session review a durable record even if the gateway crashes mid-session. |
Click to show internal directories.
Click to hide internal directories.