Skip to main content
Glama
Contact Book MCP Server

Contact Book MCP Server

by humna03

Contact Book MCP Server

mcp Python SDK の FastMCP を使用して構築された、インメモリの連絡先を管理するシンプルな Model Context Protocol(MCP) サーバーです。

機能

このサーバーは次の4つのツールを提供します:

ツール

説明

add_contact(name, phone, email)

連絡先鼓に新しい連絡先を追加します。

get_contact(name)

名前の完全一致で連絡先を取得します。

search_contacts(query)

名前の部分一致(大文字・小文字を区別しない)で連絡先を検索します。

update_contact(name, phone, email)

既存の連絡先の電話番号とメールアドレスを更新します。

連絡先はメモリ上に次のように保存されます:

contacts: dict[str, dict]  # name -> {"phone": ..., "email": ...}

注記: データはメモリ上にのみ保存されます。サーバーを再起動すると、すべての連絡先は失われます。

Related MCP server: notes-box

要件

  • Python 3.10+

  • uv(サーバーの実行に推奨)

インストール

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

    git clone <your-repo-url>
    cd contact_book_server_mcp
  2. 依存関係をインストールします:

    pip install -r requirements.txt

    または、uv を使用する場合(推奨。手動インストールは不要 — 下記参照)。

サーバーの実行

MCP Inspector を使用する(テスト・開発用)

uv run --with mcp mcp dev server.py

これによりサーバーが起動し、ブラウザーで MCP Inspector が開きます。ここで各ツールを対話的にテストできます。

単独実行

python server.py

使用例

  1. 連絡先を追加

    add_contact(name="Humna Fahad", phone="03001234567", email="humna@test.com")
    → "Contact 'Humna Fahad' added successfully."
  2. 連絡先を取得

    get_contact(name="Humna Fahad")
    → {"name": "Humna Fahad", "phone": "03001234567", "email": "humna@test.com"}
  3. 連絡先を検索

    search_contacts(query="Hum")
    → [{"name": "Humna Fahad", "phone": "03001234567", "email": "humna@test.com"}]
  4. 連絡先を更新

    update_contact(name="Humna Fahad", phone="03009998888", email="humna@updated.com")
    → "Contact 'Humna Fahad' updated successfully."

プロジェクトの状態

✅ 4つのツールはすべて実装済みで、MCP Inspector でテスト済みです。

考えられる改善案

  • delete_contact ツールを追加する。

  • list_all_contacts ツールを追加する。

  • メモリ上に保存するのではなく、JSONファイルやデータベースに連絡先を永続化する。

Related MCP Connectors

Related MCP Servers