Boston Core MCP

Boston Core MCP

An MCP server that provides safe, read-only access to Boston's open data portal, enabling natural language exploration of civic datasets.

Category
Visit Server

README

Boston Core MCP

Safe, conversational access to Boston's open data.

Boston Core MCP is a Model Context Protocol (MCP) server created by the City of Boston Department of Innovation and Technology (DoIT). It gives AI assistants and agentic tools safe, read-only access to Boston's open data portal, enabling staff, residents, and partners to explore civic information through natural conversation.

Why Boston Core MCP?

For City Staff

  • Ask questions naturally - "What datasets do we have about 311 requests?" or "Show me crime data from last month"
  • No technical barriers - Works directly with Claude Desktop and other MCP-compatible tools
  • Always up-to-date - Connects directly to Boston's live open data portal
  • Save time - Get answers instantly without navigating complex data portals

For Residents & Partners

  • Explore Boston's data through conversation instead of navigating complex portals
  • Discover datasets you didn't know existed
  • Get answers quickly without learning database queries or API syntax
  • Trustworthy source - Direct connection to official City of Boston data

For Developers

  • Production-ready - Deployed on AWS Lambda with automated CI/CD
  • Well-documented - Comprehensive guides for deployment and development
  • Open source - MIT licensed, built with modern Python and best practices
  • Extensible - Easy to adapt for other cities or data sources

What It Does

Boston Core MCP provides five powerful tools that let AI assistants interact with Boston's open data:

  1. Search Datasets - Find datasets by keywords (e.g., "311", "crime", "parking")
  2. List All Datasets - Browse everything available on the portal
  3. Get Dataset Info - Detailed metadata and resources for any dataset
  4. Query Data - Get actual data records with filtering, sorting, and pagination
  5. Get Schema - Understand the structure of any dataset

Quick Start

Connect Claude Desktop (2 minutes)

The server is already deployed and ready to use:

# Install mcpengine
pipx install 'mcpengine[cli]'

# Connect Claude to Boston OpenData
mcpengine proxy boston-opendata-lambda \
  https://kdbjj7ebdewlcy24bt4wbf3uju0tjgdf.lambda-url.us-east-1.on.aws \
  --mode http --claude

Then open Claude Desktop and start asking questions about Boston's data!

📖 Full setup guide: docs/LAMBDA_QUICKSTART.md

Key Features

Safety First

  • Read-only access - No modifications to Boston's data
  • Enforced limits - Timeouts and record limits prevent abuse
  • Input validation - All queries validated before execution
  • Error handling - Comprehensive error handling and retry logic

Production Ready

  • Deployed on AWS Lambda - Scalable, serverless infrastructure
  • Automated CI/CD - GitHub Actions for testing and deployment
  • Monitoring - CloudWatch logs and structured logging
  • Cost-effective - Typically $2-8/month for moderate usage

Developer Friendly

  • Well-documented - Guides for every use case
  • Type-safe - Built with Python type hints and Pydantic
  • Tested - Test suite included
  • Modern stack - Python 3.10+, MCPEngine, Terraform

Use Cases

City Staff

  • Policy Research: "What datasets track housing permits in the last year?"
  • Data Analysis: "Show me 311 service requests about potholes from this month"
  • Quick Lookups: "What's the structure of the crime incident reports dataset?"

Residents

  • Civic Engagement: "What data is available about public transportation?"
  • Research: "Find datasets related to city budget and spending"
  • Exploration: "What open data does Boston publish?"

Developers & Researchers

  • API Discovery: "What resources are available in the 311 dataset?"
  • Data Exploration: "Query the first 100 records from crime incidents"
  • Schema Understanding: "Show me the schema for parking violations"

Documentation

Getting Started

Deployment & Operations

Architecture & Development

Technology Stack

  • Python 3.10+ - Modern Python with type hints
  • MCPEngine - HTTP-based MCP server framework
  • AWS Lambda - Serverless compute
  • Terraform - Infrastructure as code
  • GitHub Actions - CI/CD automation

Community & Support

This project is maintained by the City of Boston Department of Innovation and Technology (DoIT).

  • Issues: Open an issue for bugs or feature requests
  • Contributions: See CONTRIBUTORS.md for guidelines
  • License: MIT License - see LICENSE

Learn More

Authors

Srihari Raman & Pradhu Balamurugan

Built with ❤️ by the City of Boston DoIT team

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured