tech-stack.json•2.88 kB
{
"schema": "memory_document_v2",
"metadata": {
"id": "mcp-server-ts-tech-stack",
"title": "TypeScript製 MCPサーバー 技術スタック",
"documentType": "core",
"path": "core/mcp-server-ts-tech-stack.json",
"tags": [
"tech",
"stack",
"typescript",
"mcp",
"core"
],
"lastModified": "2025-03-25T01:00:18.819592Z",
"createdAt": "2025-03-21T08:40:50.132Z",
"version": 2
},
"content": {
"sections": [
{
"title": "概要",
"content": "このドキュメントでは、TypeScriptで実装されたMCPサーバー(RDS・SSHトンネル対応)で使用される技術スタックを一覧形式で記載します。"
},
{
"title": "言語・実行環境",
"content": "- **TypeScript (Node.js)**: 静的型付けと最新のJavaScript機能を活用したスクリプト言語。型安全な実装が可能です。\n- **CLI実行環境**: Unix系シェル、PowerShellなどの端末から標準入出力経由で実行。"
},
{
"title": "主要ライブラリ",
"content": "- **pg**: PostgreSQL向けのNode.jsクライアントライブラリ\n- **jest**: ユニットテストフレームワーク\n- **dotenv**: 設定ファイルと環境変数管理\n- **commander**: CLIツール向けのコマンドラインインターフェースフレームワーク\n- **winston** または **pino**: 構造化ロギング用のライブラリ"
},
{
"title": "データベースと接続",
"content": "- **PostgreSQL (RDS)**: リレーショナルデータベース。AWS RDSを利用\n- **SSHトンネル**: `tunnel-ssh` または `ssh2` を使用して、踏み台サーバー経由で接続\n- **接続方式**: Node.js の pg.Pool や pg.Client を用いて安全に接続"
},
{
"title": "通信・プロトコル",
"content": "- **標準入出力 (Stdio)**: LLMや他ツールとJSONを介してやりとりする通信層\n- **MCP準拠プロトコル**: `type`, `params` を含む標準メッセージ形式に準拠\n- **JSON Schema**: 型安全性を担保するための形式。今後拡張予定"
},
{
"title": "開発・運用補助",
"content": "- **nodemon**: ホットリロード対応の開発ツール\n- **Docker**: ビルド環境の統一と本番移行用\n- **GitHub Actions**: CI/CD構築用\n- **Secrets Manager**: RDSやSSH接続情報のセキュアな管理(AWS連携時)"
},
{
"title": "関連ドキュメント",
"content": "- [アーキテクチャ構成](../02-architecture/mcp-server-ts-architecture.json)\n- [ドメインモデル定義](../01-project/mcp-server-ts-domain-models.json)\n- [SSHトンネル設計](../07-infrastructure/ssh-tunneling.json)"
}
]
}
}