Click on "Install 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., "@BOM-MCPshow the bill of materials and total weight for pump ESP-001"
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.
BOM-MCP
Electric Submersible Pump (ESP) Parts and Bill of Materials (BOM) database with MCP server for AI assistants.
Features
SQLite database with ESP parts, assemblies, and units
MCP server (SSE transport) for AI assistants
MCP Apps UI - Interactive views that render inside Claude Desktop/Claude.ai
Command-line interface
REST API server (optional)
Installation
# Python dependencies
pip install -r requirements.txt
# Node.js dependencies for MCP Apps UI
cd mcp_app && npm installUsage
Architecture
The system consists of two parts:
Python MCP Server - Core database and tools
Node.js MCP App Server - UI layer that wraps Python server
Full Stack (Recommended)
# Terminal 1: Start Python MCP server on port 3001
python run_mcp.py --port 3001
# Terminal 2: Start MCP App UI server on port 8080
cd mcp_app && npm run serve
# Or with custom port: PORT=8081 npm run servePython MCP Server Only (CLI/REST)
# SSE transport (default for MCP)
python run_mcp.py --port 8080
# REST API (optional)
python api.py [port] # Default port: 5000CLI Commands
python cli.py esp list
python cli.py esp get ESP-001
python cli.py esp bom ESP-001
python cli.py parts get ESP-MTR-001
python cli.py assemblies get ASM-MTR-001MCP Apps UI Views
The MCP Apps layer provides 5 interactive views that render inside Claude Desktop/Claude.ai:
View | Tool | Description |
Dashboard |
| Stats tiles, critical parts alert, series summary |
ESP Catalogue |
| ESP cards with filter, create, delete |
BOM Viewer |
| BOM table with sorting, export CSV |
Parts Manager |
| Parts table with search, filters, CRUD |
Assembly Manager |
| Assembly cards with parts management |
Using Views
Trigger views by asking Claude:
"Show me the ESP dashboard"
"Show ESP catalogue"
"Show BOM for ESP-001"
"Manage parts"
"Manage assemblies"
MCP Tools
ESP Tools
Tool | Description |
| List all ESP pump models |
| Get complete ESP with assemblies and parts |
| Get flat BOM parts list for an ESP |
| Get BOM summary (weight, counts, critical) |
| Filter ESPs by series |
| ESP CRUD operations |
Parts Tools
Tool | Description |
| List all parts |
| Get part details |
| Search parts by query |
| Filter by category |
| List critical parts |
| Parts CRUD |
Assembly Tools
Tool | Description |
| List all assemblies |
| Get assembly with parts |
| Find ESPs using assembly |
| Manage assembly parts |
| Update part quantities |
System Tools
Tool | Description |
| Database statistics |
| Server information |
Data Model
Parts: Individual components (part_number, name, category, material, weight_kg, is_critical, uom)
Assemblies: Groups of parts
ESP Units: Top-level pumps linking assemblies
Docker
Local Development
# Build and run both services
docker-compose up --build
# Python MCP server: http://localhost:3001
# MCP App UI: http://localhost:8080Google Cloud Run Deployment
# Deploy Python MCP server
gcloud run deploy bom-mcp-server \
--source . \
--platform managed \
--region us-central1 \
--allow-unauthenticatedLicense
MIT
This server cannot be installed
Resources
Looking for Admin?
Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.