Sponsored by Deepsite.site

Sample Building Mcp Servers With Rust

Created By
aws-samples7 months ago
This project provides sample MCP servers that can be used with Amazon Q CLI or other MCP-compatible AI assistants
Content

MCP Sample

A Rust implementation of Model Context Protocol (MCP) servers for extending AI assistant capabilities.

Overview

This project provides sample MCP servers that can be used with Amazon Q or other MCP-compatible AI assistants. The servers implement various functionalities:

  • Calculator Server: Performs basic arithmetic operations
  • RDS Server: Interacts with Amazon RDS instances
  • S3 Server: Manages Amazon S3 buckets and objects
  • PostgreSQL Server: Connects to PostgreSQL databases and executes queries

Prerequisites

  • Rust and Cargo
  • AWS credentials configured for RDS and S3 operations
  • An MCP-compatible AI assistant (like Amazon Q)

Installation

Clone the repository and build the project:

git clone <repository-url>
cd mcp-sample
cargo build

Usage

Build the executable files for each server:

# Build the calculator server
cargo build --release --bin calculator_server

# Build the RDS server
cargo build --release --bin rds_server

# Build the S3 server
cargo build --release --bin s3_server

# Build the PostgreSQL server
cargo build --release --bin postgresql_server

After building, you can run each server independently:

# Run the calculator server
./target/release/calculator_server

# Run the RDS server
./target/release/rds_server

# Run the S3 server
./target/release/s3_server

# Run the PostgreSQL server (requires a connection string)
./target/release/postgresql_server "postgresql://username:password@hostname:port/database"

Integration with Amazon Q CLI

To integrate these MCP servers with Amazon Q CLI or other MCP-compatible clients, add a configuration like this to your .amazon-q.json file:

{
  "mcpServers": {
    "calculator": {
      "command": "/path/to/mcp-sample-servers-rust/target/release/calculator_server",
      "args": []
    },
    "s3": {
      "command": "/path/to/mcp-sample-servers-rust/target/release/s3_server",
      "args": []
    },
    "rds": {
      "command": "/path/to/mcp-sample-servers-rust/target/release/rds_server",
      "args": []
    },
    "postgres": {
      "command": "/path/to/mcp-sample-servers-rust/target/release/postgresql_server",
      "args": ["postgresql://username:password@hostname:port/database"]
    }
  }
}

Replace /path/to/mcp-sample-servers-rust/ with the actual path to your built binaries. Once configured, Amazon Q will be able to use these servers to extend its capabilities.

Server Descriptions

Calculator Server

Provides basic arithmetic operations like addition and subtraction.

RDS Server

Lists and manages Amazon RDS instances in specified regions.

S3 Server

Manages S3 buckets and objects, including listing buckets by region.

PostgreSQL Server

Connects to PostgreSQL databases and executes read-only queries, lists tables, and provides schema information.

Dependencies

  • rmcp: Rust implementation of the Model Context Protocol
  • AWS SDK for Rust (aws-sdk-s3, aws-sdk-rds, aws-config)
  • Tokio for async runtime
  • Serde for serialization/deserialization
  • tokio-postgres for PostgreSQL database connectivity
Recommend Servers
TraeBuild with Free GPT-4.1 & Claude 3.7. Fully MCP-Ready.
WindsurfThe new purpose-built IDE to harness magic
Baidu Map百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Visual Studio Code - Open Source ("Code - OSS")Visual Studio Code
Context7Context7 MCP Server -- Up-to-date code documentation for LLMs and AI code editors
EdgeOne Pages MCPAn MCP service designed for deploying HTML content to EdgeOne Pages and obtaining an accessible public URL.
ChatWiseThe second fastest AI chatbot™
MCP AdvisorMCP Advisor & Installation - Use the right MCP server for your needs
Howtocook Mcp基于Anduin2017 / HowToCook (程序员在家做饭指南)的mcp server,帮你推荐菜谱、规划膳食,解决“今天吃什么“的世纪难题; Based on Anduin2017/HowToCook (Programmer's Guide to Cooking at Home), MCP Server helps you recommend recipes, plan meals, and solve the century old problem of "what to eat today"
TimeA Model Context Protocol server that provides time and timezone conversion capabilities. This server enables LLMs to get current time information and perform timezone conversions using IANA timezone names, with automatic system timezone detection.
Jina AI MCP ToolsA Model Context Protocol (MCP) server that integrates with Jina AI Search Foundation APIs.
AiimagemultistyleA Model Context Protocol (MCP) server for image generation and manipulation using fal.ai's Stable Diffusion model.
Zhipu Web SearchZhipu Web Search MCP Server is a search engine specifically designed for large models. It integrates four search engines, allowing users to flexibly compare and switch between them. Building upon the web crawling and ranking capabilities of traditional search engines, it enhances intent recognition capabilities, returning results more suitable for large model processing (such as webpage titles, URLs, summaries, site names, site icons, etc.). This helps AI applications achieve "dynamic knowledge acquisition" and "precise scenario adaptation" capabilities.
CursorThe AI Code Editor
MiniMax MCPOfficial MiniMax Model Context Protocol (MCP) server that enables interaction with powerful Text to Speech, image generation and video generation APIs.
BlenderBlenderMCP connects Blender to Claude AI through the Model Context Protocol (MCP), allowing Claude to directly interact with and control Blender. This integration enables prompt assisted 3D modeling, scene creation, and manipulation.
Serper MCP ServerA Serper MCP Server
Amap Maps高德地图官方 MCP Server
Tavily Mcp
Playwright McpPlaywright MCP server
DeepChatYour AI Partner on Desktop