E-commerce Order Management MCP Server
Provides tools for retrieving order status and checking refund eligibility from a MySQL database, enabling order management operations.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@E-commerce Order Management MCP ServerWhat's the status of order ORD123?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP_SERVER – E-commerce Order Management using FastMCP
Overview
This project demonstrates how to build a Remote MCP (Model Context Protocol) Server and Client using FastAPI and FastMCP.
The MCP Server exposes tools for:
Fetching order status
Checking refund eligibility
The FastAPI Client communicates with the MCP Server and exposes REST APIs that can be consumed by external applications.
Related MCP server: Order Status Server
Architecture
User
│
▼
FastAPI Client Service
│
▼
FastMCP Client
│
▼
Remote MCP Server
│
▼
MySQL DatabaseFeatures
Remote MCP Server using FastMCP
FastAPI Client Service
MySQL Database Integration
Order Status Retrieval
Refund Eligibility Check
Tool-based MCP Communication
Clean Service-Oriented Architecture
Project Structure
MCP_SERVER/
│
├── client.py
├── server.py
├── requirements.txt
├── README.md
└── database/
└── orders.sqlTechnologies Used
Python
FastAPI
FastMCP
MySQL
PyMySQL
Uvicorn
Database Schema
orders Table
Column | Type |
order_id | VARCHAR |
customer_name | VARCHAR |
product_name | VARCHAR |
status | VARCHAR |
order_date | DATE |
Example:
CREATE TABLE orders (
order_id VARCHAR(20) PRIMARY KEY,
customer_name VARCHAR(100),
product_name VARCHAR(100),
status VARCHAR(50),
order_date DATE
);Installation
Clone Repository
git clone https://github.com/sourabhbagda24/MCP_SERVER.git
cd MCP_SERVERCreate Virtual Environment
python -m venv venvActivate:
Windows
venv\Scripts\activateLinux / Mac
source venv/bin/activateInstall Dependencies
pip install -r requirements.txtConfigure Database
Update MySQL credentials inside the server file:
orders_db = pymysql.connect(
host="localhost",
user="root",
password="your_password",
database="MCP"
)Run MCP Server
python server.pyServer starts at:
http://localhost:8001/mcpRun FastAPI Client
uvicorn client:app --reload --port 8000Client API:
http://localhost:8000Available APIs
Get Order Status
GET /order/{order_id}Example:
GET /order/ORD001Response:
{
"order_id": "ORD001",
"customer_name": "John",
"product_name": "Laptop",
"status": "Delivered",
"order_date": "2026-08-01"
}Check Refund Eligibility
GET /order/{order_id}/refund-checkExample:
GET /order/ORD001/refund-checkResponse:
{
"order_id": "ORD001",
"eligible": true,
"days_since_order": 2,
"reason": "Delivered within 7 days"
}MCP Tools
get_order_status
Returns complete order information.
Input:
{
"order_id": "ORD001"
}check_refund_eligibility
Checks whether an order qualifies for a refund.
Input:
{
"order_id": "ORD001"
}Learning Outcomes
Through this project you will learn:
MCP (Model Context Protocol)
Remote MCP Communication
FastMCP Tool Development
FastAPI Integration
MySQL Connectivity
Service-Based Architecture
API Development
Author
Sourabh Sharma
GitHub: https://github.com/sourabhbagda24
LinkedIn: https://www.linkedin.com/in/sourabh-sharma-90758232b
⭐ If you found this project useful, consider giving it a star.
This server cannot be deployed
Maintenance
Related MCP Connectors
A paid remote MCP for ShipSwift, built to return verdicts, receipts, usage logs, and audit-ready JSO
A paid remote MCP for CLI tool MCP, built to return verdicts, receipts, usage logs, and audit-ready
A paid remote MCP for hosted MCP server, built to return verdicts, receipts, usage logs, and audit-r
Unified MCP server for 70+ eCommerce platforms: products, orders, customers, and more.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA FastAPI-based MCP server that enables LLM agents to interact with Ollama models through standardized MCP tools, with optional MySQL and Redis integration for data persistence and caching.-
- FlicenseNot gradedqualityDmaintenanceLaravel MCP server that provides a tool to look up order status by order ID from a MySQL database.-
- FlicenseNot gradedqualityCmaintenanceA production-grade MCP server for order management, featuring tools for looking up and refunding orders with safety measures like confirmation tokens, rate limiting, and error handling.-
- AlicenseNot gradedqualityBmaintenanceMCP server for commerce-operations self-service. Lets an AI agent look up order details and search orders without needing developer or SQL access.15 npmMIT