Skip to main content

Crate smg_mcp

Crate smg_mcp 

Source
Expand description

Model Context Protocol (MCP) client implementation.

§Modules

  • core: MCP client infrastructure (manager, config, connections)
  • inventory: Tool storage and indexing
  • approval: Approval system for tool execution

§Shared Types

Re-exports§

pub use core::config;
pub use core::pool as connection_pool;
pub use core::ArgMappingConfig;
pub use core::BuiltinToolType;
pub use core::ConfigValidationError;
pub use core::HandlerRequestContext;
pub use core::LatencySnapshot;
pub use core::McpConfig;
pub use core::McpMetrics;
pub use core::McpOrchestrator;
pub use core::McpRequestContext;
pub use core::McpServerBinding;
pub use core::McpServerConfig;
pub use core::McpToolSession;
pub use core::McpTransport;
pub use core::MetricsSnapshot;
pub use core::PolicyConfig;
pub use core::PolicyDecisionConfig;
pub use core::PoolKey;
pub use core::RefreshRequest;
pub use core::ResponseFormatConfig;
pub use core::ServerPolicyConfig;
pub use core::SmgClientHandler;
pub use core::ToolCallResult;
pub use core::ToolConfig;
pub use core::ToolExecutionInput;
pub use core::ToolExecutionOutput;
pub use core::TrustLevelConfig;
pub use core::DEFAULT_SERVER_LABEL;
pub use annotations::AnnotationType;
pub use annotations::ToolAnnotations;
pub use approval::ApprovalDecision;
pub use approval::ApprovalKey;
pub use approval::ApprovalManager;
pub use approval::ApprovalMode;
pub use approval::ApprovalOutcome;
pub use approval::ApprovalParams;
pub use approval::AuditEntry;
pub use approval::AuditLog;
pub use approval::DecisionResult;
pub use approval::DecisionSource;
pub use approval::McpApprovalRequest;
pub use approval::McpApprovalResponse;
pub use approval::PolicyDecision;
pub use approval::PolicyEngine;
pub use approval::PolicyRule;
pub use approval::RuleCondition;
pub use approval::RulePattern;
pub use approval::ServerPolicy;
pub use approval::TrustLevel;
pub use error::ApprovalError;
pub use error::McpError;
pub use error::McpResult;
pub use inventory::AliasTarget;
pub use inventory::ArgMapping;
pub use inventory::QualifiedToolName;
pub use inventory::ToolCategory;
pub use inventory::ToolEntry;
pub use inventory::ToolInventory;
pub use responses_bridge::build_chat_function_tools;
pub use responses_bridge::build_chat_function_tools_with_names;
pub use responses_bridge::build_function_tools_json;
pub use responses_bridge::build_function_tools_json_with_names;
pub use responses_bridge::build_mcp_list_tools_item;
pub use responses_bridge::build_mcp_list_tools_json;
pub use responses_bridge::build_mcp_tool_infos;
pub use responses_bridge::build_response_tools;
pub use responses_bridge::build_response_tools_with_names;
pub use tenant::SessionId;
pub use tenant::TenantContext;
pub use tenant::TenantId;
pub use transform::mcp_response_item_id;
pub use transform::ResponseFormat;
pub use transform::ResponseTransformer;

Modules§

annotations
Tool annotations for approval decisions.
approval
Approval system for MCP tool execution.
core
Core MCP client infrastructure.
error
MCP error types.
inventory
Tool inventory and indexing.
responses_bridge
Shared builders for Responses/Chat tool payloads derived from MCP tool inventory.
tenant
Tenant context for multi-tenant MCP operations.
transform
Response transformation for MCP to API-specific formats.

Structs§

Tool
A tool that can be used by a model.