vtcode-mcp

June 14, 2026 ยท View on GitHub

Root AGENTS.md | Model Context Protocol client, connection pooling, and tool discovery. Layer 1 crate -- depends on vtcode-config, vtcode-commons, vtcode-utility-tool-specs.

Module Groups

AreaModules
Clientclient.rs, provider.rs, rmcp_client.rs
Transportrmcp_transport.rs, connection_pool.rs
Discoverytool_discovery.rs, tool_discovery_cache.rs, schema.rs
Typestypes.rs, traits.rs, errors.rs, enhanced_config.rs
Utilsutils.rs

Rules

  • cli.rs stays in vtcode-core (depends on crate::cli::input_hardening).
  • Re-export facade in vtcode-core (mcp/mod.rs) must stay in sync.
  • rmcp_client is pub(crate) -- not part of the public API.
  • convert_to_rmcp() is pub(crate) -- internal JSON bridge.

Gotchas

  • enhanced_config.rs uses #[cfg_attr(feature = "schema", derive(schemars::JsonSchema))].
  • rmcp-reqwest is a renamed reqwest with rustls features -- not the same as the workspace reqwest.
  • DEFAULT_ENV_VARS is platform-conditional (#[cfg(unix)] / #[cfg(windows)]).