yesidevelop

Acme Operations Assistant (MCP demo)

Community yesidevelop
Updated

simple-mcp-server

Acme Operations Assistant (MCP demo)

A client-ready demo: an AI operations assistant for customer support and account managers, built on the Model Context Protocol.

Stack: MCP server → SQLite business data → OpenAI → Streamlit UI

Why this is a “real” project

  • Business domain — customers, orders, support tickets (not hello world math)
  • Persistent data — seeded SQLite database you can reset and extend
  • Transparent tool calls — the UI shows exactly which MCP tools ran and what they returned
  • Portable integration — the same MCP server works in Cursor, custom apps, or OpenAI Agents SDK

Quick start (client demo)

cd /apps/tmp/mcp-servers
python3 -m venv .venv && source .venv/bin/activate
pip install -e ".[demo]"

export OPENAI_API_KEY=sk-...
streamlit run demo_app.py

Open http://localhost:8501 and use the sidebar scenario buttons.

Full presenter script: DEMO.md

Project layout

File Purpose
server.py MCP server — 7 business tools over stdio
ops_db.py SQLite schema + demo seed data
demo_app.py Streamlit chat UI for presentations
assistant.py OpenAI ↔ MCP bridge (shared by UI and CLI)
client.py Smoke test MCP tools (no API key)
openai_chat.py CLI assistant
openai_agent.py Same flow via OpenAI Agents SDK

MCP tools

Tool Description
search_customers Search by name, id, email, industry
get_customer Full customer profile
get_order Order status + line items
list_customer_orders Order history for a customer
list_open_tickets Open support tickets
create_support_ticket Create ticket (writes to DB)
account_summary Executive snapshot for an account

Commands

# UI demo (recommended for clients)
streamlit run demo_app.py

# MCP smoke test — no OpenAI key
python client.py

# CLI assistant
python openai_chat.py "Account summary for CUST-1003"

# Reset demo database
python scripts/reset_demo_data.py

Connect to OpenAI (details)

The MCP server uses stdio. Your app must spawn it (as demo_app.py and assistant.py do).

  • Chat Completions bridge: assistant.py / openai_chat.py
  • Agents SDK: openai_agent.pypip install -e ".[agents]"
  • Responses API (remote URL): deploy server over HTTP; see OpenAI MCP guide

Cursor / Claude Desktop

{
  "mcpServers": {
    "acme-operations": {
      "command": "/apps/tmp/mcp-servers/.venv/bin/python",
      "args": ["/apps/tmp/mcp-servers/server.py"]
    }
  }
}

Next steps for production

  1. Replace SQLite with CRM/ERP APIs behind the same tool names
  2. Add auth (OAuth) per user and row-level access on tools
  3. Require human approval for create_support_ticket in production
  4. Deploy MCP over HTTP + host the Streamlit app behind SSO

MCP Server · Populars

MCP Server · New

    Wide-Moat

    Open Computer Use

    MCP server that gives any LLM its own computer — managed Docker workspaces with live browser, terminal, code execution, document skills, and autonomous sub-agents. Self-hosted, open-source, pluggable into any model.

    Community Wide-Moat
    uarlouski

    🚀 TestRail MCP Server

    AI-native MCP server connecting Claude, Cursor, Windsurf, and other AI assistants to TestRail — manage test cases, runs, and results through natural-language conversation, with typed schemas built for LLMs.

    Community uarlouski
    metabase

    Metabase MCP Server

    The easy-to-use open source Business Intelligence and Embedded Analytics tool that lets everyone work with data :bar_chart:

    Community metabase
    mindsdb

    USE CASES

    Platform dedicated to building an open foundation for applied Artificial Intelligence, designed for people seeking production-ready AI systems they can truly control, extend and deploy anywhere.

    Community mindsdb
    reflex-search

    Reflex

    Reflex - The instant, code-aware local search engine.

    Community reflex-search