Fire in da houseTop Tip:Paying $100+ per month for Perplexity, MidJourney, Runway, ChatGPT and other tools is crazy - get all your AI tools in one site starting at $15 per month with Galaxy AI Fire in da houseCheck it out free

rust-agentic

MCP.Pizza Chef: jeremychone

rust-agentic is a Rust-based support library designed to facilitate the development of Agentic MCP (Model Context Protocol) and Agent-to-Agent (A2A) services. It offers ergonomic APIs for core components, including MCP Client and Server interfaces, enabling developers to build agentic applications efficiently. Currently in active development, rust-agentic provides foundational building blocks for MCP types and client-server interactions, with plans to extend support for A2A protocols. This library is ideal for Rust developers looking to integrate real-time, structured context and multi-agent communication into their AI workflows.

Use This MCP server To

Develop MCP Client and Server applications in Rust Build Agent-to-Agent communication protocols Integrate real-time context sharing in AI systems Create ergonomic Rust APIs for agentic workflows Prototype multi-agent AI services with MCP support

README

Agentic - MCP and A2A Support Library in Rust

Static Badge

IN PROGRESS: Building this as we speak...

The agentic crate in Rust provides essential building blocks for developing agentic applications and systems through an ergonomic API for core components such as MCP and Agent-to-Agent support.

version 0.0.3 is starting to have a solid representation of all the major MCP types and a first pass at the MCP Client interface for most MCP requests and responses. See examples/c01-client-simple.

Goal

The two main submodules are:

  • agentic::mcp provides support for the MCP Client and Server.
  • agentic::a2a (coming later) provides support for A2A Client and Server protocols.

The Agentic crate uses rpc-router for JSON-RPC support and will use the genai crate for multi-AI provider/model support.

// -- Create MCP Client
let mut client = Client::new("Demo Client", "0.1.0");
let transport = ClientStdioTransportConfig::new(
    // cmd and args
    "npx",
    ["-y", "@modelcontextprotocol/server-puppeteer"],
    None,
);

// -- Connect
client.connect(transport).await?;

// -- List tools
let res = client.send_request(ListToolsParams::default()).await?;

let list_tools = res.result;

// -- Print tool names
for tool in list_tools.tools.iter() {
    println!("->> {}", tool.name);
}

For now, most MCP requests/responses are supported over Stdio (SSE support is coming later).

Next steps for MCP Support

  • MCP Client (agentic::mcp::client::Client)
    • Add full support for notifications (right now we have the types, but not end-to-end)
    • Add genai support for tooling AI prompting
    • Add support for sampling
    • Add SSE ClientSseTransport

Once MCP Client support is more complete, we will add MCP Server.

  • MCP Server (agentic::mcp::server::Server)
    • First ServerStdioTransport
    • Support most of the workflow
    • Then add ServerSseTransport (probably with Axum)

Aipack Integration

One of the key goals of this library is to enable the AIPACK runtime to become an MCP Host, Client, and Server(s), basically allowing AI Packs to use MCP Service or even be MCP services themselves.

rust-agentic FAQ

How do I get started with rust-agentic?
Begin by exploring the examples directory, especially examples/client-c01-simple.rs, to understand basic MCP Client usage.
Is rust-agentic production-ready?
rust-agentic is currently in active development (version 0.0.3) and may not yet be fully production-ready but is stable enough for experimentation.
Does rust-agentic support Agent-to-Agent (A2A) protocols?
Yes, A2A support is planned and will be provided in a dedicated submodule in future releases.
Can rust-agentic be used with multiple LLM providers?
Yes, rust-agentic is designed to be provider-agnostic and can work with OpenAI, Anthropic Claude, and Google Gemini models.
What are the main components of rust-agentic?
The library mainly consists of two submodules: agentic::mcp for MCP Client and Server support, and agentic::a2a for Agent-to-Agent protocols (coming soon).
How do I contribute to rust-agentic?
Contributions are welcome via the GitHub repository. Check the README for contribution guidelines and open issues.
What Rust version is required for rust-agentic?
The library requires a recent stable Rust compiler; check the Cargo.toml for specific version requirements.
Where can I find documentation for rust-agentic?
Documentation is available on the GitHub repository and crates.io page, with examples included in the source code.