mcpField
F
FastMCP - Model Context Protocol Server

FastMCP - Model Context Protocol Server

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

FastMCP - Model Context Protocol Server について

モデルコンテキストの管理と、それを指定したクエリ実行に対応する Python 製 MCP サーバーです。コンテキストの CRUD や絞り込み、任意の Datadog メトリクスを必要とする MCP クライアント向けです。

主な機能

  1. 01コンテキストの作成・取得・更新・削除
  2. 02指定したコンテキストでのクエリ実行
  3. 03モデル名とタグによる絞り込み
  4. 04インメモリでのコンテキスト保存
  5. 05Datadog のメトリクスと監視

活用シーン

  1. 01モデルコンテキストの記録管理
  2. 02選択したコンテキストを使ったクエリ実行
  3. 03Datadog でのコンテキストとクエリ活動の監視

MCP 対応

コンテキスト管理、クエリ、ヘルスチェック、Datadog 設定のツールを MCP クライアントに公開します。

設定

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

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

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

リポジトリ

ツール

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

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

詳細

FastMCP - Model Context Protocol サーバー

MCP サーバーとクライアントを構築するための高速で Python らしいフレームワークである FastMCP を使用して実装された、軽量な Model Context Protocol(MCP)サーバーです。

特長

  • モデルコンテキストの作成、取得、更新、削除
  • 特定のコンテキストに対するクエリの実行
  • モデル名とタグによるフィルタリング
  • インメモリストレージ(開発用)
  • MCP サーバーを簡単に開発できる FastMCP 連携
  • メトリクスとモニタリングのための Datadog 連携

要件

  • Python 3.7+
  • FastMCP
  • uv(環境管理に推奨)
  • Datadog アカウント(任意、メトリクス用)

インストール

uv を使用する場合(推奨)

付属のスクリプトを使用するのが最も簡単なインストール方法です。

Unix/Linux/macOS
# Clone the repository
git clone https://github.com/yourusername/datadog-mcp-server.git
cd datadog-mcp-server

# Make the install script executable
chmod +x install.sh

# Run the installer
./install.sh
Windows
# Clone the repository
git clone https://github.com/yourusername/datadog-mcp-server.git
cd datadog-mcp-server

# Run the installer
.\install.ps1
手動インストール
# Clone the repository
git clone https://github.com/yourusername/datadog-mcp-server.git
cd datadog-mcp-server

# Create and activate a virtual environment with uv
uv venv
# On Unix/Linux/macOS:
source .venv/bin/activate
# On Windows:
.\.venv\Scripts\activate

# Install dependencies
uv pip install -r requirements.txt

Datadog の設定

このサーバーは、メトリクスとモニタリングのために Datadog と連携します。Datadog API の認証情報は、いくつかの方法で設定できます。

1. 環境変数

サーバーを起動する前に、次の環境変数を設定します。

# Unix/Linux/macOS
export DATADOG_API_KEY=your_api_key
export DATADOG_APP_KEY=your_app_key  # Optional
export DATADOG_SITE=datadoghq.com    # Optional, default: datadoghq.com

# Windows PowerShell
$env:DATADOG_API_KEY = 'your_api_key'
$env:DATADOG_APP_KEY = 'your_app_key'  # Optional
$env:DATADOG_SITE = 'datadoghq.com'    # Optional
2. .env ファイル

プロジェクトディレクトリに .env ファイルを作成します。

DATADOG_API_KEY=your_api_key
DATADOG_APP_KEY=your_app_key
DATADOG_SITE=datadoghq.com
3. FastMCP CLI によるインストール

Claude Desktop のツールとしてインストールする場合は、環境変数を渡すことができます。

fastmcp install mcp_server.py --name "Model Context Server" -v DATADOG_API_KEY=your_api_key
4. 実行時の設定

実行時に configure_datadog ツールを使用します。

result = await client.call_tool("configure_datadog", {
    "api_key": "your_api_key",
    "app_key": "your_app_key",  # Optional
    "site": "datadoghq.com"     # Optional
})

使用方法

サーバーの起動
# Start directly from activated environment
python mcp_server.py

# Or use uv run (no activation needed)
uv run python mcp_server.py

# Use FastMCP CLI for development (if in activated environment)
fastmcp dev mcp_server.py

# Use FastMCP CLI with uv (no activation needed)
uv run -m fastmcp dev mcp_server.py
Claude Desktop のツールとしてインストール
# From activated environment
fastmcp install mcp_server.py --name "Model Context Server"

# Using uv directly
uv run python -m fastmcp install mcp_server.py --name "Model Context Server"

# With Datadog API key
fastmcp install mcp_server.py --name "Model Context Server" -v DATADOG_API_KEY=your_api_key
ツールの使用

サーバーは次のツールを提供します。

  • create_context - 新しいコンテキストを作成します
  • get_context - 特定のコンテキストを取得します
  • update_context - 既存のコンテキストを更新します
  • delete_context - コンテキストを削除します
  • list_contexts - すべてのコンテキストを一覧表示します(フィルタリングは任意)
  • query_model - 特定のコンテキストに対してクエリを実行します
  • health_check - サーバーのヘルスチェックを行います
  • configure_datadog - 実行時に Datadog 連携を設定します

リクエストの例

コンテキストの作成
result = await client.call_tool("create_context", {
    "context_id": "model-123",
    "model_name": "gpt-3.5",
    "data": {
        "parameters": {
            "temperature": 0.7
        }
    },
    "tags": ["production", "nlp"]
})
クエリの実行
result = await client.call_tool("query_model", {
    "context_id": "model-123",
    "query_data": {
        "prompt": "Hello, world!"
    }
})
Datadog の設定
result = await client.call_tool("configure_datadog", {
    "api_key": "your_datadog_api_key",
    "app_key": "your_datadog_app_key",  # Optional
    "site": "datadoghq.com"             # Optional
})

Datadog メトリクス

サーバーは次のメトリクスを Datadog に報告します。

  • mcp.contexts.created - コンテキスト作成イベント
  • mcp.contexts.updated - コンテキスト更新イベント
  • mcp.contexts.deleted - コンテキスト削除イベント
  • mcp.contexts.accessed - コンテキストアクセスイベント
  • mcp.contexts.total - コンテキストの合計数
  • mcp.contexts.listed - コンテキスト一覧表示操作のイベント
  • mcp.queries.executed - クエリ実行イベント
  • mcp.server.startup - サーバー起動イベント
  • mcp.server.shutdown - サーバー終了イベント

開発

クライアントの実装例については、付属の mcp_example.py を参照してください。

# Run the example client (with activated environment)
python mcp_example.py

# Run with uv (no activation needed)
uv run python mcp_example.py

ライセンス

MIT

リソース

コメント

MCP は初めてですか?

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

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