Skip to content

MCP (Model Context Protocol) サーバーの学習用プロジェクト - シンプルなメモ管理サーバーの実装

Notifications You must be signed in to change notification settings

ktny/mcp-memo-server-learning

Repository files navigation

MCP Memo Server Learning Project

MCPサーバーの学習を目的としたプロジェクトです。シンプルなメモ管理機能を持つMCPサーバーを段階的に実装していきます。

📋 プロジェクト概要

Model Context Protocol (MCP) は、AI アシスタントが外部のデータやツールに安全にアクセスするための標準プロトコルです。このプロジェクトでは、MCPサーバーの基本概念から実用的な機能まで段階的に学習します。

🎯 学習目標

  • MCPの基本概念とアーキテクチャの理解
  • JSON-RPC通信の実装方法
  • ツールとリソースの違いと使い分け
  • 実用的なMCPサーバーの設計と実装
  • テストとデバッグの手法

📚 学習計画

学習は以下の6つのフェーズに分かれています:

  • MCPの基本概念の理解
  • 開発環境のセットアップ
  • プロジェクト構造の作成
  • 基本的なサーバー構造
  • シンプルなツールの実装
  • JSON-RPC通信の確認
  • メモの作成・読み取り・削除機能
  • ファイルベースの永続化
  • エラーハンドリング
  • MCPリソースとしてのメモ公開
  • メタデータ管理
  • URI設計
  • 単体テスト・統合テストの実装
  • ログ機能とデバッグ
  • 品質向上
  • データベース連携
  • 外部API連携
  • 高度な検索機能

🛠️ 技術スタック

  • Runtime: Node.js
  • Language: TypeScript
  • Framework: MCP SDK (@modelcontextprotocol/sdk)
  • Testing: Jest (予定)
  • Database: SQLite (Phase 6で導入予定)

🚀 クイックスタート

# リポジトリのクローン
git clone https://github.com/ktny/mcp-memo-server-learning.git
cd mcp-memo-server-learning

# 依存関係のインストール
npm install

# 開発サーバーの起動
npm run dev

📁 プロジェクト構造

mcp-memo-server-learning/
├── src/                    # ソースコード
│   ├── index.ts           # メインサーバーファイル
│   ├── tools/             # ツール実装
│   ├── resources/         # リソース実装
│   └── utils/             # ユーティリティ
├── tests/                 # テストファイル
├── memos/                 # メモファイル保存先
├── docs/                  # ドキュメント
└── examples/              # 使用例

📖 学習リソース

🤝 貢献

このプロジェクトは学習目的のため、issues やプルリクエストを通じて質問や改善提案を歓迎します。

📄 ライセンス

MIT License

📊 進捗追跡

各フェーズの進捗は対応するissueで追跡されています:

各フェーズを順番に完了していくことで、MCPサーバーの全体像を理解できます。


Happy Learning! 🎉

About

MCP (Model Context Protocol) サーバーの学習用プロジェクト - シンプルなメモ管理サーバーの実装

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •