Business MCP Server
by bke1302
README.md
# π Business MCP Server
An **MCP (Model Context Protocol) server** that connects Claude β or any
MCP-compatible AI client β to a real business database. It lets the AI query
customers, orders, and revenue using natural language, by exposing safe,
well-defined tools over the database.
Built as a hands-on demonstration of Python, APIs, and the Model Context
Protocol β the emerging standard for connecting LLMs to real-world systems.
---
## π§ What is MCP?
Large Language Models only know what they were trained on β they can't read
*your* database, CRM, or spreadsheet. **MCP** is an open standard (introduced
by Anthropic) that acts like a universal adapter between an AI model and
external systems.
```
βββββββββββ ββββββββββββββββ ββββββββββββββββββ
β Claude β ββββΊ β MCP Server β ββββΊ β SQLite (DB) β
β (client)β ββββ β (this repo) β ββββ β customers, β
βββββββββββ ββββββββββββββββ β orders β
ββββββββββββββββββ
```
The MCP server exposes **tools** (actions). The AI decides *when* and *how* to
call them β you simply grant the capability.
---
## π οΈ Tools exposed
| Tool | Description |
|------|-------------|
| `list_customers()` | Returns all customers (name, email, city, join date). |
| `search_customers(keyword)` | Finds customers by name or city. |
| `get_customer_orders(customer_id)` | Returns all orders for a given customer. |
| `revenue_summary()` | Total revenue from completed orders + order counts. |
All database access goes through a single helper that uses **parameterized
queries** (`?` placeholders) to prevent SQL injection.
---
## π¦ Tech stack
- **Python 3.13**
- **[MCP Python SDK](https://github.com/modelcontextprotocol/python-sdk)** (`mcp[cli]`) β `FastMCP`
- **SQLite** (standard library `sqlite3`) β the business database
---
## π Getting started
```bash
# 1. Clone and enter the project
git clone https://github.com/bke1302/business-mcp-server.git
cd business-mcp-server
# 2. Create and activate a virtual environment
python -m venv venv
venv\Scripts\activate # Windows
# source venv/bin/activate # macOS / Linux
# 3. Install dependencies
pip install -r requirements.txt
# 4. Create the sample database
python init_db.py
```
### Connect to Claude Code
```bash
claude mcp add business-db -- python /full/path/to/server.py
```
Then ask Claude naturally:
> *"How much revenue have we made?"*
> *"Show me Maya's orders."*
> *"Which customers are from Tel Aviv?"*
Claude will call the right tool and answer from your live data.
---
## π Project structure
```
business-mcp-server/
βββ server.py # The MCP server β defines and serves the tools
βββ init_db.py # Creates and seeds the SQLite database
βββ requirements.txt # Python dependencies
βββ .gitignore
βββ README.md
```
---
## π What this project demonstrates
- Building an **MCP server** from scratch with the official Python SDK
- Designing clear, well-documented **tools** an AI can reason about
- Safe database access with **parameterized SQL queries**
- Clean, portable code (absolute paths, isolated virtual environment)
---
## πΊοΈ Roadmap
- [ ] Add **Google Sheets** as an alternative data source
- [ ] Add write tools (create / update orders)
- [ ] Add automated tests
---
*Built while transitioning from operations management into AI engineering β
closing the gap from low-code automation to real Python & technical architecture.*
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues