mcp-cps-data MCP server について
シカゴ公立学校のデータを扱う MCP サーバーです。ローカルの SQLite と LanceDB を使い、学校と地域の記録や学校ウェブサイトの情報を検索できます。
主な機能
- 01学校と地域の記録を SELECT で検索
- 02関連する学校ウェブサイト情報の取得
- 03ローカル SQLite と LanceDB の利用
活用シーン
- 01学校が属する地域の確認
- 02学校に関する質問のウェブサイト情報収集
MCP 対応
MCP クライアントに、学校と地域の記録を検索するツールと、関連する学校ウェブサイト情報を取得するツールを提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
mcp-cps-data MCP サーバー
シカゴ公立学校に関する情報を含むローカルの SQLite データベースとローカルの LanceDB ベクトルデータベースを公開する MCP サーバープロジェクトです。
コンポーネント
ツール
このサーバーは、次の 2 つのツールを実装しています。
query_schools_and_neighborhoods:「schooltoneighborhood」という名前の、シカゴの公立学校とその近隣地域のテーブルに対して SELECT クエリを実行します。スキーマは次のとおりです:(id INTEGER NOT NULL, created_at DATETIME NOT NULL, school_id INTEGER NOT NULL, school_name VARCHAR NOT NULL, neighborhood VARCHAR NOT NULL, PRIMARY KEY (id))。- 必須パラメーター
queryを受け取ります。
- 必須パラメーター
query_school_websites:シカゴの公立学校のウェブサイトのデータベースを検索し、質問への回答に関連するコンテキストを取得します。- 必須パラメーター
questionと、任意パラメーターschool_nameを受け取ります。
- 必須パラメーター
設定
[cps-childcare] プロジェクト(https://github.com/mdagost/cps-childcare)から、SQLite データベースと LanceDB ベクトルデータベースを取得します。
クイックスタート
インストール
Claude Desktop
MacOS の場合:~/Library/Application\ Support/Claude/claude_desktop_config.json
Windows の場合:%APPDATA%/Claude/claude_desktop_config.json
開発中/未公開サーバーの設定:
"mcpServers": {
"mcp-cps-data": {
"command": "uv",
"args": [
"--directory",
"/path/to/mcp-cps-data",
"run",
"mcp-cps-data",
"--sqlite-path",
"/path/to/cps_crawler.db",
"--lancedb-path",
"/path/to/embeddings.lancedb"
]
}
}
デバッグ
MCP サーバーは stdio 経由で実行されるため、デバッグが難しい場合があります。最適なデバッグ体験を得るために、MCP Inspector の使用を強くおすすめします。
次のコマンドを使って、npm 経由で MCP Inspector を起動できます。
npx @modelcontextprotocol/inspector uv --directory /path/to/mcp-cps-data run mcp-cps-data --sqlite-path /path/to/cps_crawler.db --lancedb-path /path/to/embeddings.lancedb
起動すると、Inspector に URL が表示されます。ブラウザーでその URL にアクセスすると、デバッグを開始できます。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。