mcp server proxy interception with message logging
Implements a transparent proxy layer (mcp-guardian-proxy binary) that sits between LLM applications and MCP servers, intercepting all bidirectional JSON-RPC messages over stdio/WebSocket transports. The proxy maintains complete audit trails by logging every message to persistent storage before forwarding, enabling forensic analysis of LLM-to-tool interactions without modifying the LLM application itself.
Unique: Uses MCP protocol's stdio/WebSocket transport layer as interception point rather than requiring deep LLM integration; leverages JSON-RPC message structure for format-agnostic logging that works across any MCP server implementation
vs alternatives: Provides audit logging without modifying LLM or MCP server code, unlike application-level instrumentation or custom MCP wrappers that require code changes
real-time message approval workflows with human-in-the-loop
Implements a guard profile system that intercepts MCP messages matching configurable rules and routes them to approval queues in the desktop UI or CLI, blocking execution until a human approves or rejects the request. The proxy suspends message forwarding at the JSON-RPC level, maintaining connection state while awaiting approval decisions that are persisted and can be replayed for audit purposes.
Unique: Blocks at the JSON-RPC message level before MCP server execution, enabling approval of individual tool calls rather than coarse-grained server access control; integrates approval UI directly into proxy architecture via message queue pattern
vs alternatives: Provides granular per-message approval unlike firewall rules or capability-based access control; maintains connection state during approval wait, avoiding timeout issues in long-running LLM sessions
json-rpc message format preservation and protocol compliance
Maintains strict JSON-RPC 2.0 protocol compliance throughout the proxy pipeline, preserving message structure, method names, and parameter types without transformation or reinterpretation. The proxy operates as a transparent intermediary that logs and filters messages while maintaining protocol semantics, ensuring compatibility with any MCP server implementation that follows the specification.
Unique: Operates as protocol-transparent proxy that preserves JSON-RPC message structure without interpretation, enabling compatibility with any MCP server implementation; message logging and filtering operate on JSON structure rather than semantic understanding
vs alternatives: Provides format-agnostic interception unlike application-level proxies that require semantic understanding; JSON-RPC preservation enables message replay and forensic analysis unlike transformed message streams
stdio and websocket transport support for mcp server communication
Implements proxy support for both stdio-based (local process) and WebSocket-based (remote server) MCP transport mechanisms, enabling the proxy to intercept and manage connections to both local and remote MCP servers. The proxy abstracts transport differences at the JSON-RPC message level, allowing guard profiles and approval workflows to operate uniformly across transport types.
Unique: Abstracts stdio and WebSocket transports at the JSON-RPC message layer, enabling uniform guard profile and approval workflow application across transport types; proxy handles transport-specific connection management transparently
vs alternatives: Provides unified management of local and remote servers unlike separate proxies per transport; transport abstraction enables policy consistency across heterogeneous deployments
guard profile policy-based message filtering and transformation
Defines a declarative rule system (stored as JSON in mcp-guardian-core) that matches incoming MCP messages against patterns (tool name, parameter values, server identity) and applies transformations or blocks. Profiles are evaluated by the proxy before message forwarding, enabling automated security policies like blocking dangerous tools, redacting sensitive parameters, or enforcing rate limits without human intervention.
Unique: Implements policy enforcement at the MCP protocol layer using declarative rules that operate on JSON-RPC message structure, enabling format-agnostic filtering that works across heterogeneous MCP server implementations without custom code per tool
vs alternatives: Provides centralized policy management across multiple MCP servers unlike per-server configuration; operates at proxy layer enabling enforcement before server execution, unlike post-execution monitoring
multi-server configuration management with namespace organization
Provides a centralized configuration system (mcp-guardian-core library) that manages multiple MCP server definitions, guard profiles, and server collections using a namespace-based hierarchy stored as JSON files. The system enables grouping related servers into collections, applying guard profiles to collections, and managing configurations via desktop UI, CLI, or programmatic API without manual file editing.
Unique: Uses namespace-based hierarchy with server collections to enable bulk policy application across related servers; centralizes configuration in shared Rust library (mcp-guardian-core) that all components (proxy, CLI, desktop UI) consume, ensuring consistency
vs alternatives: Provides unified configuration interface across multiple tools (CLI, desktop, proxy) unlike scattered per-tool configs; enables server grouping and bulk policy application unlike flat server lists
desktop gui for real-time message monitoring and approval
Implements a Tauri-based desktop application with React frontend that provides a graphical interface for viewing live MCP message streams, managing server configurations, and processing approval queues. The UI connects to the proxy via IPC or local API, displaying timestamped message logs with filtering/search, allowing users to approve/reject pending messages and edit guard profiles without CLI knowledge.
Unique: Uses Tauri + React to provide cross-platform desktop UI that directly integrates with proxy via IPC, enabling real-time message streaming and approval workflows without web server overhead; React component architecture enables modular UI for different management tasks
vs alternatives: Provides native desktop experience with real-time updates unlike web-based dashboards; Tauri approach offers smaller bundle size and better performance than Electron for message streaming workloads
command-line interface for scripted configuration management
Implements a Rust-based CLI tool (mcp-guardian-cli) that enables programmatic management of MCP servers, guard profiles, and server collections via command-line arguments and stdin. The CLI directly uses mcp-guardian-core library, enabling automation workflows like CI/CD pipelines to provision MCP configurations, apply policies, and validate setups without GUI interaction.
Unique: Built in Rust using mcp-guardian-core library, enabling tight integration with core business logic and zero-copy configuration access; CLI-first design enables integration into shell scripts and CI/CD pipelines without GUI dependencies
vs alternatives: Provides programmatic configuration management unlike desktop UI; Rust implementation offers better performance and smaller binary size than Python/Node.js alternatives for automation workloads
+4 more capabilities