WIP: Caution!!! AI code and probably wrong in many ways though it "runs". について
Workspace DB Managerは、ワークスペースのSQLiteデータベースを管理するTypeScript製MCPサーバーです。データベースファイルを検出してファイルシステムの変更を追跡し、データベース管理や複数データベース間の操作に対応します。
主な機能
- 01SQLiteデータベースの自動検出
- 02ファイルシステム変更の監視
- 03接続プールと接続管理
- 04データベースと状態の追跡
- 05データベース間の操作
活用シーン
- 01ワークスペース内のデータベース検出
- 02データベースファイルの追加・削除追跡
- 03データベース変更の監視
- 04複数のワークスペースデータベースの管理
MCP 対応
Workspace DB Managerは、ワークスペースのデータベース管理を行うMCPサーバーです。MCPクライアントに公開するツールやリソースはREADMEに記載されていません。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
WIP:注意!!!AI が生成したコードで、実行はできますが、多くの点で間違っている可能性があります。
Workspace DB Manager
ファイルシステムと連携してワークスペースのデータベースを管理する、TypeScript 製の MCP(Model Context Protocol)サーバーです。
機能
- 自動検出機能を備えた SQLite データベース管理
- データベースの変更をリアルタイムで監視
- データベースの接続プーリングと管理
- データベースの自動追跡とステータス更新
- データベース間の操作をサポート
- TypeScript/ES Module アーキテクチャ
はじめに
- 依存関係をインストールします:
npm install
- TypeScript コードをビルドします:
npm run build
- コアデータベースを初期化します:
npm run init-db
- サーバーを起動します:
npm start
開発
# Run in development mode with auto-reload
npm run dev
# Run tests
npm test
# Build TypeScript
npm run build
継続的インテグレーション
このプロジェクトでは、継続的インテグレーションに GitHub Actions を使用しています:
- Node.js 20.x、21.x、22.x で実行
- プッシュおよびプルリクエストのたびにテストを自動実行
- TypeScript のコンパイルをチェック
- テストカバレッジレポートを生成してアップロード
- コード品質基準を満たしていない場合は失敗
設定
サーバーは WorkspaceConfig オブジェクトを使って設定できます:
const manager = new WorkspaceDBManager({
watchPaths: ['/path/to/workspace'],
pollInterval: 1000, // Optional: file system polling interval
database: {
verbose: true // Optional: enable verbose database logging
}
});
データベース操作
データベースの自動検出
サーバーは次の項目を自動的に検出して追跡します:
- 新しいデータベースファイル
- データベースの変更
- データベースの削除
データベース管理
// List all managed databases
const databases = await manager.listManagedDatabases();
// Get system configuration
const config = await manager.getConfig('some_key');
イベント
サーバーはさまざまな操作に対してイベントを発行します:
database-added:新しいデータベースが検出されたときdatabase-changed:データベースが変更されたときdatabase-removed:データベースが削除されたときerror:エラーが発生したときinitialized:サーバーの初期化が完了したとき
テスト
# Run all tests
npm test
# Run tests with coverage
npm test -- --coverage
貢献
- リポジトリをフォークします
- 機能ブランチを作成します
- 変更をコミットします
- ブランチにプッシュします
- プルリクエストを作成します
ライセンス
ISC
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。