| Crates.io | praxis-mcp |
| lib.rs | praxis-mcp |
| version | 0.2.0 |
| created_at | 2025-11-09 00:21:01.237247+00 |
| updated_at | 2025-11-11 00:40:17.280936+00 |
| description | Model Context Protocol (MCP) client for AI agent tool execution |
| homepage | https://github.com/matheussilva/praxis |
| repository | https://github.com/matheussilva/praxis |
| max_upload_size | |
| id | 1923426 |
| size | 74,689 |
Model Context Protocol (MCP) client for AI agent tool execution.
This crate provides a high-level interface for connecting to MCP servers and executing tools within AI agent workflows.
rmcp (Rust MCP SDK)[dependencies]
praxis-mcp = "0.1"
use praxis_mcp::{MCPExecutor, MCPConfig};
// Create executor with multiple servers
let executor = MCPExecutor::new(vec![
MCPConfig {
name: "weather".to_string(),
url: "http://localhost:8005/mcp".to_string(),
}
]).await?;
// Execute tool
let result = executor.execute_tool(
"get_weather",
serde_json::json!({"location": "San Francisco"})
).await?;
println!("Result: {}", result);
use praxis_mcp::{MCPExecutor, MCPConfig};
let executor = MCPExecutor::new(vec![
MCPConfig {
name: "weather".to_string(),
url: "http://localhost:8005/mcp".to_string(),
},
MCPConfig {
name: "search".to_string(),
url: "http://localhost:8006/mcp".to_string(),
},
]).await?;
// Executor automatically routes to the correct server
let weather = executor.execute_tool("get_weather", args).await?;
let search = executor.execute_tool("web_search", args).await?;
let tools = executor.list_tools().await?;
for tool in tools {
println!("Tool: {} - {}", tool.name, tool.description);
}
The Model Context Protocol (MCP) is a standard for connecting AI agents to external tools and data sources. This crate implements the client side of the protocol.
Key concepts:
See the examples/ directory for complete examples:
# Run the simple MCP agent example
cargo run --example simple_mcp_agent
This crate is part of the Praxis AI Agent Framework:
MIT