Skip to main content

mcp_utils/client/
mod.rs

1pub mod config;
2pub mod error;
3pub mod manager;
4pub mod oauth_handler;
5
6mod connection;
7mod connection_attempt_manager;
8mod mcp_client;
9mod naming;
10mod tool_proxy;
11
12pub use config::{
13    HttpServerConfig, HttpType, InMemoryServerConfig, InMemoryType, McpConfig, McpServer, McpServerCloneError,
14    McpServerConfig, McpTransport, ParseError, ServerFactory, SseServerConfig, SseType, StdioServerConfig, StdioType,
15};
16pub use connection::{McpConnectAttempt, McpConnectOutcome, McpServerConnection};
17pub use connection_attempt_manager::McpConnectionAttemptManager;
18pub use error::{McpError, Result};
19pub use manager::{
20    ElicitationRequest, McpClientEvent, McpConnectionDetails, McpManager, McpServerStatus, McpServerStatusEntry,
21    OAuthHandlerContext, OAuthHandlerFactory, UrlElicitationCompleteParams,
22};
23pub use mcp_client::{McpClient, cancel_result};
24pub use naming::{SERVERNAME_DELIMITER, split_on_server_name};
25pub use oauth_handler::{AETHER_OAUTH_ELICITATION_ID, ElicitingOAuthHandler};
26
27use std::path::PathBuf;
28
29pub(crate) fn aether_home() -> Option<PathBuf> {
30    utils::SettingsStore::new("AETHER_HOME", ".aether").map(|s| s.home().to_path_buf())
31}