mcpField
M
Mcp Server Python

Mcp Server Python

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

Mcp Server Python について

Mcp Server Pythonは、Cursor AIなどのMCP対応環境にツールを公開する方法を学ぶ開発者向けのPythonサンプルです。加算ツールと、環境変数からAPI_KEYを取得するツールを備えています。

主な機能

  1. 01Python製MCPサーバーの例
  2. 022つの数値の加算
  3. 03環境変数API_KEYの取得
  4. 04Cursor AIの設定
  5. 05ローカルサーバーのテスト

活用シーン

  1. 01基本的なMCPツール定義を学習
  2. 02Cursor Composerでツール呼び出しをテスト
  3. 03環境変数へのアクセスを確認

MCP 対応

標準入出力で動作するMCPサーバーとして、数値の加算とAPI_KEY環境変数の取得という2つのツールを提供します。付属の設定によりCursor AIから検出・起動できます。

設定

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

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

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

リポジトリ

ツール

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

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

詳細

# MCP Server in Python

## Overview

**MCP (Model Context Protocol)** is a framework that allows you to integrate custom tools into AI-assisted development environments—such as Cursor AI. MCP servers expose functionality (like data retrieval or code analysis) so that an LLM-based IDE can call these tools on demand.

This project demonstrates an MCP server built in Python that provides two basic tools. One tool, **add**, accepts two numbers and returns their sum, while the other, **getApiKey**, retrieves the API key from the environment (via the `API_KEY` variable). Learn more about MCP in the [Model Context Protocol Introduction](https://modelcontextprotocol.io/introduction).

## Requirements

- **Python:** A modern version of Python (3.8 or higher is recommended).
- **Virtual Environment:** It is recommended to use a virtual environment for dependency management.

## Features

- **MCP Integration:** Exposes tool functionality to LLM-based IDEs.
- **Addition Tool:** Accepts two numeric parameters and returns their sum.
- **Env Var Retrieval:** Demonstrates how to load an example environment variable from the configuration file.
- **CLI Support:** Provides a command-line interface via `mcp[cli]` for easy local development and testing.
- **Standard I/O Transport:** Integrates with development environments using standard I/O for seamless communication.

## Installation

1. **Clone the Repository**

   ```bash
   git clone <repository_url>
   cd <repository_directory>
   ```
  1. 仮想環境のセットアップ

    Python の仮想環境を作成して有効化します:

    python -m venv .venv
    

    Linux および macOS の場合:

    source .venv/bin/activate
    

    Windows の場合:

    .venv\Scripts\activate
    
  2. 依存関係のインストール

    次のコマンドで MCP パッケージと CLI 拡張機能をインストールします:

    pip install mcp mcp[cli]
    

サーバーをローカルでテストする

MCP サーバーをローカルで実行するには、次のコマンドを実行します:

mcp dev mcp-server.py

サーバーの起動後、表示された URL をブラウザーで開きます。Connect をクリックし、続けて List Templates をクリックします。テンプレートを選択して名前を入力し、最後に Read Resources をクリックして出力を確認します。また、Tools をクリックしてツールを選択し、必要な値を入力して Run Tool をクリックすると、ツールの機能をテストできます。

Cursor AI との統合

このプロジェクトには、Cursor AI が MCP サーバーを自動的に検出して起動できるようにする mcp.json 設定ファイルが含まれています。次の構造で mcp.json ファイルを開くか、新規作成します:

{
  "mcpServers": {
    "MCP Server": {
      "command": "/path/to/mcp-server-python/.venv/bin/python3",
      "args": ["/path/to/mcp-server-python/mcp-server.py"],
      "env": {
        "API_KEY": "abc-1234567890"
      }
    }
  }
}
  • mcpServers:
    サーバー名とその設定を対応付けるオブジェクトです。

  • MCP Server:
    サーバー設定のキーです。任意の名前を付けられます。

  • command:
    仮想環境内の Python 実行ファイルへの絶対パスを指定します。例:

    /home/john/mcp-server-python/.venv/bin/python3
    
  • args:
    MCP サーバーファイルへの絶対パスを含む配列です。例:

    ["/home/john/mcp-server-python/mcp-server.py"]
    
  • env:(任意)
    MCP サーバープロセスの環境変数を定義します。この例では、API_KEY に "abc-1234567890" が設定されています。環境に合わせてこの値を変更してください。

    ターミナルで which python を実行すると、Python 実行ファイルの絶対パスを確認できます。

任意:設定の自動化スクリプト

mcp.json ファイルを正しい絶対パスに自動更新して、ローカル環境を簡単に設定できます。ローカル設定を適用するには、プロジェクトのルートディレクトリから次のコマンドを実行します:

chmod +x ./scripts/update_config.sh
./scripts/update_config.sh

このスクリプトは、mcp.json 内のプレースホルダーパスを、Python とサーバースクリプトのマシン上の絶対パスに置き換え、設定が常に正確であることを保証します。

任意:Cursor のグローバル設定

mcp.json ファイルを ~/.cursor にある Cursor AI のグローバル設定ディレクトリに移動して、設定をグローバルに利用できるようにすることもできます。

Cursor Composer で MCP ツールを使用する

MCP サーバーを Cursor AI と統合し、Cursor Composer でエージェントモードを有効にしたら、次のような自然言語のプロンプトを使用するだけです:

add 3 and 5

または

what is my API key?

AI エージェントは、MCP サーバーで利用できる add または getApiKey ツールを推測し、それに応じて実行します。

コードの概要

このプロジェクトは、次の主要な部分で構成されています:

  • MCP サーバーの初期化:
    MCP ライブラリを使用して MCP サーバーをインスタンス化し、標準 I/O トランスポート経由で接続します。

  • ツールの定義:

    • add:
      2 つの数値入力を受け取り、その合計を返すように定義されています。
    • getApiKey:
      環境変数 API_KEY から API キーを取得して返します。

MCP とは?

Model Context Protocol(MCP) は、AI 支援開発環境にカスタムツールを統合するための標準化された方法を提供します。MCP を使用すると、外部データの取得、コードの検証、コーディング規約の適用など、特定のタスクを実行するツールを定義でき、IDE 内の AI アシスタントがコンテキストに基づいてこれらのツールを自動的に呼び出せます。これにより、開発者の生産性が向上し、一貫した品質が保たれ、ワークフローが効率化されます。

参考資料と出典

ライセンス

このプロジェクトは、MIT License の下でライセンスされています。

コメント

MCP は初めてですか?

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

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