Skip to main content
Glama
fferjani94

OpsPilot MCP Server

by fferjani94

Enterprise AI Workflow Agent (OpsPilot)

A portfolio project demonstrating enterprise AI workflows over fictional SaaS data.

Stack: FastAPI, SQLAlchemy 2.0, Alembic, SQLite (PostgreSQL-ready), official Python MCP SDK.

Windows PowerShell setup

From the repository root, with an existing .venv:

.venv\Scripts\python.exe -m pip install --no-cache-dir -e ".[dev]"
.venv\Scripts\python.exe -m alembic upgrade head
.venv\Scripts\python.exe -m enterprise_ai_workflow_agent.db.seed
.venv\Scripts\python.exe -m pytest -q
.venv\Scripts\python.exe -m ruff check .
.venv\Scripts\python.exe -m alembic check
.venv\Scripts\python.exe scripts\smoke_mcp.py

Run FastAPI separately:

.venv\Scripts\python.exe -m uvicorn enterprise_ai_workflow_agent.main:app --reload

Swagger: http://127.0.0.1:8000/docs

MCP server

Run as a stdio MCP server:

.venv\Scripts\python.exe -m enterprise_ai_workflow_agent.mcp_server.server

This command waits for JSON-RPC messages from an MCP client; it is not an HTTP server. Do not type messages into it or expect a URL. Use scripts/smoke_mcp.py for an end-to-end client/server smoke test.

Registered tools:

  • search_accounts(query, limit=10)

  • get_account_tickets(account_id, limit=10)

  • get_ticket_details(ticket_id)

  • get_product_information(product_id)

  • search_knowledge(query, product_id=None, limit=5)

Knowledge search limitations

Knowledge search is deterministic, case-insensitive token-overlap ranking with title boosting. It is not semantic retrieval, embeddings, pgvector, or RAG. Documents are returned with snippets and source metadata. Later milestones can add vector search.

Safety boundaries

All tools are read-only. Tool parameters use SQLAlchemy bound expressions, not raw SQL. There is no authentication, authorization, tenant isolation, or approval/audit layer yet. Use synthetic data only; do not deploy publicly. Tool responses can contain untrusted document content, so a future LLM agent must not treat retrieved text as instructions.

CI

The existing .github/workflows/ci.yml runs Ruff, pytest (including MCP registration and service tests), Alembic migration checks, and Docker image build on every push/PR.

Database schema

Milestone 3 does not change the database schema; Alembic stays at revision 0001.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables querying enterprise records and retention policies from any MCP client over stdio, with read-only tools for searching records, fetching retention verdicts, identifying archival candidates, summarizing departments, forecasting retentions, and viewing audit history.
    -
  • F
    license
    A
    quality
    B
    maintenance
    Provides read-only MCP tools over stdio for interacting with a Redmine instance, enabling users to list and retrieve projects, issues, queries, wiki pages, and other Redmine resources via the REST API.
    35
    -