mcpField
C
crimson-crab-mcp-template

crimson-crab-mcp-template

ローカル
github.com/singhpratech開発ツール012 週間前に更新

crimson-crab-mcp-template について

crimson-crab-mcp-templateは、crimson-crab SDK経由でAnthropicのClaude APIを利用するMCPサーバー向けRustスターターテンプレートです。プロンプト送信、複数ターンのチャット、トークン数の計算、モデル情報取得のツールを備えています。

主な機能

  1. 01Claudeへの単発リクエスト
  2. 02複数ターンの会話
  3. 03モデル別のトークン数計算
  4. 04利用可能なClaudeモデルの一覧
  5. 05モデルの制限とメタデータ取得

活用シーン

  1. 01RustでClaude対応MCPサーバーを始める
  2. 02プロンプト送信と会話履歴の継続
  3. 03API呼び出し前の入力トークン見積もり
  4. 04APIキーで使えるモデルの確認

MCP 対応

サーバーはstdioでMCPクライアントと通信し、Claudeへのリクエスト、チャット、トークン数計算、モデル情報取得の5つのツールを提供します。

設定

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

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

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

リポジトリ

ツール

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

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

詳細

Rust 製の Claude 対応 MCP サーバー(スターターテンプレート)

crimson-crab-mcp-template MCP server crates.io license

Anthropic の Claude API をcrimson-crab SDK 経由で利用する、Rust 製の最小構成ながら本番環境にも対応したモデルコンテキストプロトコル (MCP)サーバーです。5 つのツールを公開します。ask_claude(プロンプトを送信して Claude の応答を取得)、chat(複数ターンの会話)、count_tokens(プロンプトを実行せずに料金を見積もる)、list_models (API キーで利用できるモデルを一覧表示)、get_model(特定モデルの制限とメタデータ)です。

Rust で Claude 対応の独自 MCP ツールを構築するための参考用スターターとしてご利用ください。

このテンプレートを使用する

GitHub の Use this template をクリックするか、 cargo generate を使って新しいプロジェクトを生成します。

cargo generate --git https://github.com/singhpratech/crimson-crab-mcp-template

クローンすることもできます。

git clone https://github.com/singhpratech/crimson-crab-mcp-template

クイックスタート

export ANTHROPIC_API_KEY=sk-ant-...
cargo run

サーバーは stdio 経由で通信するため、直接実行すると MCP クライアントが接続するまで待機します。すべてのログは stderr に出力され、stdout は MCP プロトコル用に確保されています。より詳細なログを出力するには、RUST_LOG=debug を設定します。

クライアントから指定できる最適化済みバイナリをビルドするには、次のコマンドを実行します。

cargo build --release
# -> target/release/crimson-crab-mcp-template

Claude Desktop に接続する

ビルドしたバイナリを指定し、環境変数経由で API キーを渡すエントリを、Claude Desktop の MCP 設定ファイル (claude_desktop_config.json)に追加します。

{
  "mcpServers": {
    "claude-via-crimson-crab": {
      "command": "/absolute/path/to/target/release/crimson-crab-mcp-template",
      "env": {
        "ANTHROPIC_API_KEY": "sk-ant-..."
      }
    }
  }
}

Claude Desktop を再起動すると、ask_claude、chat、count_tokens、 list_models、get_model の各ツールを利用できるようになります。

ツール

ask_claude
パラメーター型必須説明
promptstringはいClaude に送信するプロンプトです。
systemstringいいえ任意のシステムプロンプトです。

Claude Messages リクエストを構築し(デフォルトでは claude-opus-5 モデルを使用)、API を呼び出して、Claude の応答テキストを連結して返します。

chat
パラメーター型必須説明
messagesarrayはいこれまでの会話を古い順に指定します。形式は {role, content} で、role は "user" または "assistant" に制限された列挙型です。最後は必ずユーザーの発話にしてください。
systemstringいいえ任意のシステムプロンプトです。
modelstringいいえモデル ID(デフォルトは ask_claude のモデル)です。
max_tokensintegerいいえ生成するトークンの最大数(デフォルトは 1024)です。

メッセージ履歴全体を Claude に送信し、次の応答を返します。呼び出し元がターンをまたいでコンテキストを保持する必要がある場合は、ask_claude の代わりに使用してください。

count_tokens
パラメーター型必須説明
promptstringはいトークン数を調べるプロンプトです。
systemstringいいえトークン数に含める任意のシステムプロンプトです。
modelstringいいえトークン数を計算するモデル ID です(トークン数はモデルごとに異なります)。

プロンプトを実行せずに、入力トークン数を返します。高額な API 呼び出しの前にコストを見積もるのに役立ちます。

list_models
パラメーター型必須説明
limitintegerいいえ返すモデルの最大数です。

設定された API キーで利用可能な各 Claude モデルの ID、表示名、リリース日を返します。

get_model
パラメーター型必須説明
modelstringはい照会するモデル ID です(例:claude-opus-5)。

モデルの表示名、リリース日、コンテキストウィンドウ (max_input_tokens)、最大出力トークン数を返します。

すべてのツールで発生したエラーは、パニックを起こすのではなく、MCP ツールエラーとして返されます。 Claude クライアントは起動時に一度だけ作成され、各呼び出しで再利用されます。

crimson-crab で構築

このテンプレートは、Anthropic の Claude API 用の本番環境向け Rust SDK、 crimson-crab を使用して構築されています。ソース: https://github.com/singhpratech/crimson-crab。

ライセンス

以下のいずれかのライセンスが適用されます。

お好きな方をお選びください。


crimson-crab は独立したオープンソースプロジェクトであり、Anthropic とは提携していません。

コメント

MCP は初めてですか?

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

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