Sample Building Mcp Servers With Rust
@aws-samples
This project provides sample MCP servers that can be used with Amazon Q CLI or other MCP-compatible AI assistants
Overview
What is Sample Building Mcp Servers With Rust?
Sample Building Mcp Servers With Rust is a Rust implementation of Model Context Protocol (MCP) servers that extend AI assistant capabilities. It provides multiple server binaries—Calculator, RDS, S3, and PostgreSQL—designed to be used with Amazon Q or other MCP‑compatible AI assistants.
How to use Sample Building Mcp Servers With Rust?
Ensure Rust/Cargo, AWS credentials (for RDS/S3), and an MCP‑compatible assistant are installed. Clone the repository and run cargo build --release --bin <server_name> for each server. Run the built binaries directly or integrate them with Amazon Q CLI by adding a configuration block to your .amazon-q.json file, specifying the command path and arguments for each server.
Key features of Sample Building Mcp Servers With Rust
- Four built‑in MCP servers: Calculator, RDS, S3, and PostgreSQL
- Calculator server performs basic arithmetic (addition, subtraction)
- RDS server lists and manages Amazon RDS instances per region
- S3 server manages buckets and objects, listing by region
- PostgreSQL server executes read‑only queries and lists tables/schemas
- All servers use the rmcp Rust library for MCP protocol implementation
- Integrates with Amazon Q CLI via JSON configuration
Use cases of Sample Building Mcp Servers With Rust
- Extend an AI assistant with basic arithmetic capabilities
- Manage Amazon RDS instances through a conversational interface
- List and organize S3 buckets and objects by region
- Query PostgreSQL databases (read‑only) and retrieve schema information
FAQ from Sample Building Mcp Servers With Rust
What dependencies does this project use?
It depends on the rmcp Rust MCP implementation, AWS SDK for Rust (aws-sdk-s3, aws-sdk-rds, aws-config), Tokio for async runtime, Serde for serialization, and tokio-postgres for PostgreSQL connectivity.
What kind of authentication is required?
For RDS and S3 servers, valid AWS credentials must be configured. The PostgreSQL server requires a connection string with username and password.
Are the PostgreSQL queries read‑only?
Yes, the PostgreSQL server is designed to execute only read‑only queries. It can list tables and provide schema information but does not support write operations.
How do I integrate these servers with Amazon Q?
Add an mcpServers block to your .amazon-q.json file, listing each server with the absolute path to its binary and any required arguments (e.g., a PostgreSQL connection string).
What transports do these MCP servers support?
The README does not specify the transport protocol used; it only mentions the MCP standard and integration via command‑line invocation with Amazon Q CLI.