Expose Chicago Public Schools data with a local MCP server accessing SQLite and LanceDB databases
The mcp-cps-data
MCP server provides a robust infrastructure for exposing essential data and tools related to Chicago Public Schools (CPS) within the Model Context Protocol (MCP). This MCP server integrates two key functionalities:
With such capabilities, the mcp-cps-data
MCP server significantly enhances AI application functionalities by ensuring data-driven insights and accurate responses tailored to user queries.
graph TD
A[AI Application] -->|MCP Client| B[MCP Protocol]
B --> C[MCP Server]
C --> D[Data Source/Tool]
style A fill:#e1f5fe
style C fill:#f3e5f5
style D fill:#e8f5e8
query_schools_and_neighborhoods
Tool:query_schools_and_neighborhoods
query
: Required. The SQL query string to retrieve relevant information from the database.query_school_websites
Tool:query_school_websites
question
: Required. The question or query to which the tool should provide relevant information from the school websites.school_name
. If provided, the query will return more specific information based on the name of a particular CPS school.The mcp-cps-data
server is designed using a robust and modular architecture suitable for integrating into existing AI application frameworks. It leverages MCP to ensure seamless data exchange and protocol compatibility, making it an ideal choice for developers looking to enhance their applications with detailed school and neighborhood information.
mcp-cps-data
server adheres strictly to the Model Context Protocol (MCP). It defines the communication endpoints and protocols required for AI clients like Claude Desktop, Continue, and others to interact smoothly with the server.cps_crawler.db
) that contains structured information about CPS schools and their neighborhoods.embeddings.lancedb
), which provides vector-based search capabilities for quickly retrieving relevant documents or items.MCP Client | Resources | Tools | Prompts |
---|---|---|---|
Claude Desktop | ✅ | ✅ | ✅ |
Continue | ✅ | ✅ | ✅ |
Cursor | ❌ | ✅ | ❌ |
This compatibility ensures that developers can seamlessly integrate the mcp-cps-data
server with AI applications like Claudia Desktop and Continue, leveraging their advanced context and tool capabilities.
cps_crawler.db
)embeddings.lancedb
)git clone https://github.com/your-repo/mcp-cps-data.git
cd mcp-cps-data
npm install
claude_desktop_config.json
) or pass command-line arguments for -sqlite-path
and -lancedb-path
.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
An administrator of a large city school district could use the mcp-cps-data
server to quickly retrieve detailed information about specific neighborhoods and schools. For example, by querying the tool with "What is the population density near Lincoln High School?"
, the AI application would return relevant neighborhood data and contextual insights.
A community engagement platform can use the mcp-cps-data
server to provide personalized recommendations based on users' school affiliations. An AI-driven recommendation engine could query the query_school_websites
tool with "What special events are happening this month at Lincoln High School?"
, returning detailed information about upcoming events and activities.
The mcp-cps-data
server is designed to work seamlessly with popular AI clients like Claude Desktop, Continue, and Cursor. Here’s a brief overview of how you can integrate it:
{
"mcpServers": {
"mcp_cps_data": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-cps-data"],
"env": {
"API_KEY": "your-api-key"
}
}
}
}
By adding the server definition to your MCP client's configuration file, you can start utilizing the enhanced data and tools provided by mcp-cps-data
.
The performance of the mcp-cps-data
server is significantly influenced by the underlying databases. For optimal results:
cps_crawler.db
database is well-indexed to handle rapid query operations.This matrix helps in understanding how different tools and resources impact the overall performance of your AI application when integrated with the server.
To enhance security and customize settings, you can modify several configuration parameters:
export API_KEY=your-secret-key
export DATABASE_PATH=/path/to/your/db/files/
How do I ensure data privacy while using the mcp-cps-data
server?
Are there any limitations with the number of queries per second in the query_schools_and_neighborhoods
tool?
How do I handle large datasets for vector storage with LanceDB?
Is there any support for integrating additional tools beyond those included in the mcp-cps-data
server?
Can multiple instances of the mcp-cps-data
server be run simultaneously to increase load handling capacity?
Interested developers are encouraged to contribute to this project. Here’s how you can get involved:
mcp-cps-data
repository from GitHub.The mcp-cps-data
server is part of a larger ecosystem that includes various other MCP servers and tools designed to provide comprehensive data access for AI applications. For more information and resources:
By contributing to and utilizing the mcp-cps-data
server within this ecosystem, you can enrich your AI applications with rich data sources and tools, providing them with the capabilities needed for advanced and contextually aware operations.
AI Vision MCP Server offers AI-powered visual analysis, screenshots, and report generation for MCP-compatible AI assistants
Analyze search intent with MCP API for SEO insights and keyword categorization
Expose Chicago Public Schools data with a local MCP server accessing SQLite and LanceDB databases
MCP server for accessing and managing IMDB data with notes, summaries, and tools
Learn how to use MCProto Ruby gem to create and chain MCP servers for custom solutions
Learn how to try Model Context Protocol server with MCP Client and Cursor tools efficiently