mcp-cps-data
The MCP CPS Data project is an MCP server designed to provide data from a local SQLite and LanceDB vector database focused on Chicago Public Schools. It offers tools to query school and neighborhood data as well as relevant school website information.
mcp-cps-data MCP server
A MCP server project for exposing a local SQLite database and a local LanceDB vector database with information on Chicago Public Schools
Components
Tools
The server implements two tools:
query_schools_and_neighborhoods
: Excecute a SELECT query on a table of Chicago public schools and their neighborhoods called "schooltoneighborhood" with the following schema: (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)).- Takes required parameter
query
- Takes required parameter
query_school_websites
: Query a database of Chicago public school websites for context relevant to answering a given question.- Takes required parameter
question
and optional parameterschool_name
.
- Takes required parameter
Configuration
Get the SQlite database and the LanceDB vector database from the [cps-childcare] project(https://github.com/mdagost/cps-childcare).
Quickstart
Install
Claude Desktop
On MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
Development/Unpublished Servers Configuration:
"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"
]
}
}
Debugging
Since MCP servers run over stdio, debugging can be challenging. For the best debugging experience, we strongly recommend using the MCP Inspector.
You can launch the MCP Inspector via npm
with this command:
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
Upon launching, the Inspector will display a URL that you can access in your browser to begin debugging.