MCP Demo SQLite Weather
Enables querying a local SQLite database and fetching live weather data through a single MCP server, allowing GPT-4o to perform cross-tool tasks like finding top customers and checking weather in their cities.
README
MCP Demo — SQLite + Live Weather
A practical MCP demo where GPT-4o can query a real database and fetch live weather — two completely unrelated capabilities — through a single MCP server.
mcp-demo/
├── server.py # MCP server: SQLite tools + weather tool
├── seed.py # Populates ecommerce.db with sample data
├── client.py # OpenAI GPT-4o agentic loop
├── requirements.txt
└── README.md
Why this showcases MCP's value
The server owns two completely unrelated capabilities:
| Tool group | Tools | Backed by |
|---|---|---|
| SQLite | list_tables, query_db, execute_db |
ecommerce.db — local SQLite |
| Weather | get_weather |
wttr.in public API |
The client (client.py) discovers both at startup — zero hardcoded tool logic.
Swap GPT-4o for Claude Desktop or Cursor tomorrow; server.py doesn't change at all.
Setup
python -m venv .venv && source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txt
export OPENAI_API_KEY="sk-..." # Windows: set OPENAI_API_KEY=...
# Seed the database (run once)
python seed.py
Run
python client.py
client.py spawns server.py automatically — no separate terminal needed.
Try these queries
# Pure DB
What are our top 3 customers by total spend?
# DB + filter
Show all pending orders with customer names and product names.
# Cross-tool: DB to find a city, weather to check it
Who is our highest-spending customer and what's the weather like in their city right now?
# Write operation
Mark order 5 as shipped.
# Follow-up read
Show all orders for Carlos Mendes now.
Database schema
customers (id, name, email, city, joined_at)
products (id, name, category, price)
orders (id, customer_id, product_id, quantity, status, ordered_at)
10 customers across 10 cities worldwide · 10 products · 20 orders.
Key dependencies
| Package | Purpose |
|---|---|
mcp |
Official Python MCP SDK (server + client) |
openai |
GPT-4o via OpenAI API |
requests |
HTTP calls to wttr.in weather API |
Recommended Servers
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.
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.
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.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
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.
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.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
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.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.