MCP Server POC について
MCP 対応の AI アシスタント向けに、ノートの追加、最新ノートの取得、要約用プロンプトの生成を行う MCP サーバーです。ノートはプロジェクト内のローカルテキストファイルに保存されます。
主な機能
- 01ローカルファイルへのノート追加
- 02最新ノートのリソース取得
- 03ノート要約プロンプトの生成
- 04stdio による MCP 提供
活用シーン
- 01AI アシスタントでアイデアを記録
- 02直近のノートを確認
- 03保存したノートの要約を依頼
MCP 対応
stdio 経由で、ノート追加ツール、最新ノートのリソース、要約プロンプトを MCP クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP Note Taker(POC)
AI アシスタントのノート作成向けに、ノート管理用のカスタムツールとリソースを備えた Model Context Protocol(MCP)サーバーを実装した概念実証です。
概要
このプロジェクトでは、Claude、Cursor など、MCP に対応する AI アシスタントにノート作成機能を提供する Model Context Protocol(MCP)サーバーの作成方法と使用方法を紹介します。サーバーには、次の機能が含まれています。
- ノートを追加するツール
- 最新のノートを取得するリソース
- すべてのノートを要約するプロンプト
すべてのノートは、プロジェクトディレクトリ内のローカルファイル notes.txt に保存されます。
要件
- Python 3.11
- requirements.txt に記載されている必須パッケージ
インストールとセットアップ
- このリポジトリをクローンします。
git clone https://github.com/yourusername/mcp-server-poc.git
cd mcp-server-poc
- 仮想環境を作成して有効化します。
# Init uv package manager
uv init
# Create a Python 3.11 virtual environment
uv venv
# Activate on Windows
.venv\Scripts\activate
# Activate on macOS/Linux
source venv/bin/activate
- 必須パッケージをインストールします。
uv pip install -r requirements.txt
- (任意)開発や別の統合方法で必要な場合は、MCP CLI ツールをインストールします。
uv add "mcp[cli]"
アプリケーションの実行
MCP サーバーを実行するには、次のコマンドを実行します。
uv run mcp
サーバーが起動し、stdio トランスポート方式で接続を待機します。
Cursor との統合
この MCP サーバーを Cursor IDE で使用するには、次の手順に従います。
- ファイル
~/.cursor/mcp.json(Windows の場合:C:\Users\<username>\.cursor\mcp.json)を作成するか編集し、次の内容を記述します。
{
"mcpServers": {
"mcp-server": {
"command": "python",
"args": [
"ABSOLUTE/PATH/TO/main.py"
]
}
}
}
-
パスを
main.pyファイルの絶対パスに置き換えます。- Windows の場合は、二重のバックスラッシュを使用します:
C:\\Users\\username\\path\\to\\main.py - macOS/Linux の場合は、通常のスラッシュを使用します:
/Users/username/path/to/main.py
- Windows の場合は、二重のバックスラッシュを使用します:
-
MCP サーバーを読み込むため、バックグラウンドプロセスもすべて終了したうえで Cursor を完全に再起動します。
機能
ツール
- add_note(note: str):
notes.txtファイルにノートを追加し、確認メッセージを返します。
リソース
- notes://latest:
notes.txtファイルから最新のノートを返します。まだノートがない場合は、その旨を知らせるメッセージを返します。
プロンプト
- note_summary_prompt():
notes.txt内の現在のノートをすべて要約するよう AI に求めるプロンプトを生成します。
技術的な詳細
- すべてのノートは、プロジェクトのルートにある
notes.txtというプレーンテキストファイルに保存されます。このファイルは、存在しない場合に自動作成されます。 - サーバーは Model Context Protocol SDK と
mcp[cli]依存関係を使用します。
Windows のバイナリモードに関する修正
Windows で stdio トランスポートを使用する場合、stdin/stdout のバイナリモードを設定する必要があることがあります。詳しくは MCP documentation を参照してください。
トラブルシューティング
- 必須パッケージがすべてインストールされていることを確認します(
pip listで確認できます)。 - 設定ファイルに記載された絶対パスが正しいことを確認します。
- MCP サーバーが適切なバージョンの Python(3.11)で実行されていることを確認します。
- 問題が発生した場合は、MCP サーバーを直接実行してエラー出力を確認してください。
ライセンス
謝辞
- このプロジェクトでは Model Context Protocol SDK を使用しています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。