Custom MCP Server with Enhanced Tools について
Cursor の AI アシスタント向け MCP サーバーで、ウェブ検索、ダイス、QR コード生成、単位変換、URL 短縮を提供します。stdio で通信し、検索には Tavily を使います。
主な機能
- 01Tavily によるウェブ検索
- 02独自記法でのダイスロール
- 03QR コード生成
- 04長さ・重量・温度・体積の変換
- 05TinyURL または is.gd による URL 短縮
活用シーン
- 01ウェブ上の情報検索
- 02テキストや URL の QR コード作成
- 03単位や温度の変換
- 04最高値を残すダイスロール
MCP 対応
MCP を介して Cursor に 5 種類のツールを公開し、stdio 通信でリクエストを処理します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
強化ツールを備えたカスタム MCP サーバー
このプロジェクトでは、Cursor 内で AI アシスタントの機能を直接拡張する5 つのカスタムツールを備えた、強力な MCP(Model Context Protocol)サーバーを紹介します。AI Makerspace MCP フレームワークを基盤とするこのサーバーには、ウェブ検索、ユーティリティツール、コンテンツ生成機能が含まれています。
🚀 特長
利用可能なツール:
🔍 ウェブ検索 - Tavily API 連携によるウェブ検索
🎲 サイコロローラー - カスタム記法(例:2d20k1)でサイコロを振ります
📱 QR コード生成 - 任意のテキストや URL の QR コードを生成します
🔄 単位変換 - さまざまな単位(長さ、重量、温度、体積)を変換します
🔗 URL 短縮 - TinyURL または is.gd サービスを使用して URL を短縮します
プロジェクト概要
この MCP サーバーは Model Context Protocol を通じて Cursor とシームレスに連携し、AI アシスタント内から強力なツールにすぐにアクセスできるようにします。サーバーは標準入力/出力(stdio)トランスポートモードで動作するよう設計されており、次の機能を備えています。
- TavilyClient:Tavily API を使用したウェブ検索機能
- QR コード生成:
qrcodeライブラリを使用した Base64 エンコード済み QR コード - 単位変換:温度を手動で処理する包括的な単位変換
- URL 短縮:複数のサービスに対応(TinyURL、is.gd)
- サイコロを振る機能:最大値を残す機能を備えた高度なサイコロ記法
前提条件
- Python 3.13 以降
- 有効な Tavily API キー
- UV パッケージマネージャー(依存関係の管理用)
⚠️NOTE FOR WINDOWS:⚠️
OS の Windows 側にインストールする必要があります。
そのためには、次の手順で Powershell 用の CLI ツールを 2 つインストールします。
winget install astral-sh.uvwinget install --id Git.Git -e --source winget
これらの CLI ツールをインストールしたら、Cursor を Windows 内で開いてください。
インストール
-
リポジトリをクローンします:
git clone https://github.com/suh4s/my-mcp-server.git cd my-mcp-server -
依存関係をインストールします:
uv sync -
環境変数を設定します:
.envファイルを作成し、Tavily API キーを追加します。TAVILY_API_KEY=your_api_key_here
MCP サーバーの実行
MCP サーバーを起動するには、Cursor の MCP プロファイルに以下を追加する必要があります。
注:MCP の設定を開くには、コマンドパレット(CMD/CTRL+SHIFT+P)を使用して「View: Open MCP Settings」を選択し、内容を以下の JSON 設定に置き換えてください。
{
"mcpServers": {
"mcp-server": {
"command": "uv",
"args": ["--directory", "/FULL/PATH/TO/YOUR/REPOSITORY", "run", "server.py"]
}
}
}
サーバーが起動し、標準入力/出力を介してコマンドを受け付けます。
🛠️ ツールの使用例
QR コード生成
"Generate a QR code for 'Hello World'"
"Create a QR code for https://github.com/suh4s/my-mcp-server"
単位変換
"Convert 100 fahrenheit to celsius"
"Convert 5 miles to kilometers"
"Convert 2 pounds to grams"
URL 短縮
"Shorten this URL: https://github.com/suh4s/my-mcp-server"
"Shorten https://example.com using is.gd"
サイコロローラー
"Roll 2d20k1" (roll 2 20-sided dice, keep highest)
"Roll 3d6" (roll 3 6-sided dice)
ウェブ検索
"Search for 'MCP protocol documentation'"
"Find recent AI news"
🔧 技術的な実装
依存関係:
mcp[cli]- Model Context Protocol フレームワークtavily-python- ウェブ検索 API 連携qrcode+pillow- QR コード生成pint- 単位変換ライブラリrequests- URL 短縮用の HTTP リクエストpython-dotenv- 環境変数の管理
アーキテクチャ:
- FastMCP Server:ツールの登録とプロトコル通信を処理します
- ツール関数:自動検出のために
@mcp.tool()で装飾されています - エラー処理:わかりやすいメッセージを含む包括的なエラー処理
- 型安全性:すべてのツールパラメーターに完全な型ヒントを付与
🎯 高度な機能
- 温度変換:華氏/摂氏変換に対応するカスタム数式
- QR コードのカスタマイズ:サイズと枠線のパラメーターを調整可能
- 複数の URL サービス:TinyURL および is.gd に対応し、フォールバック処理も実装
- サイコロ記法:最大値を残すロジックを備えた複雑なサイコロ式に対応
ライセンス
このプロジェクトは MIT ライセンスの下でライセンスされています。詳細については LICENSE ファイルをご覧ください。
コントリビューション
コントリビューションを歓迎します!変更を提案する場合は、イシューを作成するか、プルリクエストを送信してください。
謝辞
AI Makerspace MCP Session の一環として構築されました。オリジナルのフレームワークは AI-Maker-Space によるものです。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。