mcpField
S
Sample Building Mcp Servers With Rust

Sample Building Mcp Servers With Rust

ローカル
github.com/aws-samples開発ツール877 週間前に更新

Sample Building Mcp Servers With Rust について

Amazon QやMCP対応AIアシスタント向けに、Rust製MCPサーバーのサンプルを提供します。計算、Amazon RDS、Amazon S3、PostgreSQLを扱う例が含まれます。

主な機能

  1. 01基本的な計算機能
  2. 02Amazon RDSインスタンスの一覧と管理
  3. 03Amazon S3バケットとオブジェクトの管理
  4. 04PostgreSQLのクエリとテーブル・スキーマ確認

活用シーン

  1. 01AIアシスタントで基本計算を行う
  2. 02指定リージョンのRDSインスタンスを確認する
  3. 03S3バケットの一覧表示とオブジェクト管理
  4. 04PostgreSQLに読み取り専用クエリを実行する

MCP 対応

RustでMCPサーバーを実装しています。クライアント側で設定し、計算機、RDS、S3、PostgreSQLのサーバーを個別に実行できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

MCP サンプル

AI アシスタントの機能を拡張するための、Model Context Protocol(MCP)サーバーの Rust 実装です。

概要

このプロジェクトでは、Amazon Q やその他の MCP 対応 AI アシスタントで使用できるサンプル MCP サーバーを提供しています。各サーバーは、次のようなさまざまな機能を実装しています。

  • Calculator Server:基本的な算術演算を実行します
  • RDS Server:Amazon RDS インスタンスと連携します
  • S3 Server:Amazon S3 バケットとオブジェクトを管理します
  • PostgreSQL Server:PostgreSQL データベースに接続してクエリを実行します

前提条件

  • Rust と Cargo
  • RDS と S3 の操作用に設定された AWS 認証情報
  • MCP 対応 AI アシスタント(Amazon Q など)

インストール

リポジトリをクローンして、プロジェクトをビルドします。

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

使用方法

各サーバーの実行ファイルをビルドします。

# 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

ビルド後、各サーバーを個別に実行できます。

# 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"
Amazon Q CLI との統合

これらの MCP サーバーを Amazon Q CLI やその他の MCP 対応クライアントと統合するには、.amazon-q.json ファイルに次のような設定を追加します。

{
  "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"]
    }
  }
}

/path/to/mcp-sample-servers-rust/ を、ビルドしたバイナリの実際のパスに置き換えてください。設定すると、Amazon Q はこれらのサーバーを使用して機能を拡張できるようになります。

サーバーの説明

Calculator Server

加算や減算などの基本的な算術演算を提供します。

RDS Server

指定されたリージョンの Amazon RDS インスタンスを一覧表示し、管理します。

S3 Server

リージョン別のバケット一覧表示など、S3 バケットとオブジェクトを管理します。

PostgreSQL Server

PostgreSQL データベースに接続し、読み取り専用クエリを実行して、テーブルを一覧表示し、スキーマ情報を提供します。

依存関係

  • rmcp:Model Context Protocol の Rust 実装
  • Rust 用 AWS SDK(aws-sdk-s3、aws-sdk-rds、aws-config)
  • 非同期ランタイム用の Tokio
  • シリアライズ/デシリアライズ用の Serde
  • PostgreSQL データベース接続用の tokio-postgres

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。