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_neighborhoodsquery: Required. The SQL query string to retrieve relevant information from the database.query_school_websites Tool:query_school_websitesquestion: 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.gitcd mcp-cps-datanpm installclaude_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.
RuinedFooocus is a local AI image generator and chatbot image server for seamless creative control
Learn to set up MCP Airflow Database server for efficient database interactions and querying airflow data
Simplify MySQL queries with Java-based MysqlMcpServer for easy standard input-output communication
Explore CoRT MCP server for advanced self-arguing AI with multi-LLM inference and enhanced evaluation methods
Build stunning one-page websites track engagement create QR codes monetize content easily with Acalytica
Access NASA APIs for space data, images, asteroids, weather, and exoplanets via MCP integration