Skip to main content

gaze_mcp_rmcp/
lib.rs

1//! # gaze-mcp-rmcp
2//!
3//! ### Scope
4//!
5//! `gaze-mcp` enforces the chokepoint on the **data-source ↔ model** path. Any data flowing
6//! **from a source through an MCP tool to the model** passes through `PiiEnvelope::dispatch`
7//! and is redacted before the model sees it.
8//!
9//! `gaze-mcp` **does not** cover the **user ↔ model** path. Pasted text, uploaded files, and
10//! screenshots in the agent host's chat UI reach the model unredacted. For that axis, see
11//! `gaze-proxy` (planned for v0.8 — multi-vendor reverse proxy supporting Anthropic, OpenAI,
12//! Gemini).
13//!
14//! ---
15//!
16//! `gaze-mcp-rmcp` is the rmcp (MCP Rust SDK) transport sink for [`gaze-mcp-core`]. It
17//! exposes a `RmcpFrontend` implementing `gaze_mcp_core::Frontend`, wiring rmcp's
18//! `tools/list` and `tools/call` flow through the chokepoint runtime.
19//!
20//! ## Stability
21//!
22//! This crate re-exports types from `rmcp 1.x`. There is **no SemVer guarantee** on rmcp
23//! re-exports — major rmcp bumps may force breaking releases of `gaze-mcp-rmcp`.
24//!
25//! [`gaze-mcp-core`]: https://crates.io/crates/gaze-mcp-core
26
27pub mod adapter;
28pub mod error;
29pub mod frontend;
30
31pub use crate::error::RmcpFrontendError;
32pub use crate::frontend::{
33    FixedPrincipalResolver, PrincipalResolver, RmcpFrontend, RmcpFrontendConfig,
34    RmcpPrincipalError, RmcpTransport,
35};