mcpField
M
MCP Demo

MCP Demo

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

MCP Demo について

MCP Demoは、データベースを使ったデータ操作を試す開発者向けのPython製MCPサーバー例です。PostgreSQLで組織とデバイスを管理し、距離計算ツールも提供します。

主な機能

  1. 01PostgreSQLで組織とデバイスを管理
  2. 02組織とデバイスの取得
  3. 03組織ごとのデバイス絞り込み
  4. 04デバイスと組織間の距離計算

活用シーン

  1. 01データベース内の組織とデバイスの検索
  2. 02各デバイスの所属組織と距離の確認

MCP 対応

MCPサーバーとして、組織・デバイスの検索と距離計算を行うツールをMCPクライアントに公開します。

設定

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

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

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

リポジトリ

ツール

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

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

詳細

MCP デモ

このリポジトリには、Model Context Protocol(MCP)サーバーのデモ実装が含まれています。このサーバーは、組織とデバイスを管理し、デバイスと関連する組織との距離を計算し、データを操作するための一連のツールを提供するように設計されています。

機能

  • データベース統合:PostgreSQL データベースに接続し、組織とデバイスを管理します。
  • 距離の計算:ハーバーサインの公式を使用して、デバイスと関連する組織との距離を計算します。
  • MCP ツール:組織やデバイスの取得、距離の計算を行うツールを提供します。

前提条件

  • Python 3.12.5
  • PostgreSQL データベース

セットアップ

  1. リポジトリをクローンします:

    git clone <repository-url>
    cd mcp-demo
    
  2. 仮想環境をセットアップします:

    uv venv
    source .venv/bin/activate
    
  3. .env ファイルで環境変数を設定します:

    DB_NAME=mcp
    DB_USER=mcp_user
    DB_PASSWORD=pa$$word
    DB_HOST=localhost
    DB_PORT=5432
    
  4. データベースをセットアップします:

    psql -U <username> -d <database> -f tables.sql
    

使い方

  1. MCP サーバーを実行します:

    uv run main.py
    
  2. 提供されているツールを使ってサーバーを操作します:

    • get_organizations:データベースからすべての組織を取得します。
    • get_devices:データベースからすべてのデバイスを取得します。
    • get_devices_by_organization:特定の組織のデバイスを取得します。
    • list_devices_with_distance:デバイスと、関連する組織からの距離を一覧表示します。

プロジェクト構成

  • main.py:MCP サーバーのメインエントリーポイントです。
  • tables.sql:データベーススキーマを設定し、シードデータを追加する SQL スクリプトです。
  • .env:データベース設定用の環境変数です。
  • pyproject.toml:プロジェクトのメタデータと依存関係です。

依存関係

  • httpx:Python 用の HTTP クライアントです。
  • mcp[cli]:サーバー構築用の MCP フレームワークです。
  • psycopg2:Python 用の PostgreSQL データベースアダプターです。

Claude Desktop の MCP サーバー設定

この MCP サーバープロジェクト用に Claude Desktop を設定するには、次の手順に従います:

  1. 公式サイトから Claude Desktop をマシンにインストールします。

  2. Claude Desktop を開き、設定メニューに移動します。

  3. MCP サーバーの新しいプロジェクト設定を追加します:

     code ~/Library/Application\ Support/Claude/claude_desktop_config.json
    
  4. MCP サーバーを追加します

{
    "mcpServers": {
        "devices": {
            "command": "uv",
            "args": [
                "--directory",
                "/path/to/mcp-demo",
                "run",
                "main.py"
            ],
            "env": {
                "DB_NAME": "mcp",
                "DB_USER": "mcp_user",
                "DB_PASSWORD": "pa$$word",
                "DB_HOST": "localhost",
                "DB_PORT": "5432"
            }
        }
    }
}
  1. 次のようなクエリを実行します:List the devices in DB and show me how far are they from their organization address. Also, add get the mac addresses of the devices.

コメント

MCP は初めてですか?

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

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