Skip to main content
Glama

Engineering MCP

Local MCP for engineering: tickets, QA evidence, and time go in; investigation closes root cause; knowledge stays; reporting comes out ready.

It doesn't replace what you already have:

MCP

Role

engineering-mcp (this)

Engineering OS — work + evidence + time + RCA + memory + report

qa-lab-agent

Runs tests, generates spec, self-corrects

qa-oracle

CI / LambdaTest / historical Jira logs

ENGINEERING MCP
      │
      ├── WORK        tickets · tasks · projects
      ├── QA          testing evidence · bugs · artifacts
      └── TIME        tracking · estimates · metrics
              │
              ▼
        INVESTIGATION
              │
              ▼
          KNOWLEDGE
              │
              ▼
          REPORTING

Problem it solves

A Jira ticket, a CI failure, and a time entry live in three places. When status time comes, no one puts the package together.

This MCP records the cycle in the same local database:

  1. Opens the ticket (WORK)

  2. Attaches the fail / bug / screenshot (QA) — without running the suite

  3. Logs hours and estimate (TIME)

  4. Investigates to root cause (INVESTIGATION)

  5. Becomes a playbook (KNOWLEDGE)

  6. report_ticket returns the package for handoff, daily, or career evidence


Related MCP server: Productivity Tracker MCP Server

Requirements

  • Node 22+ (native node:sqlite, same as qa-oracle)

  • MCP client (Cursor)


Installation (no absolute path)

Cursor does not point to the Desktop folder. It downloads the package — same as qa-lab-agent. The database lives in ~/.engineering-mcp/engineering.db, on any machine.

Config in Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "engineering": {
      "command": "npx",
      "args": ["-y", "engineering-mcp"]
    }
  }
}

No args with /Users/.... No ENGINEERING_MCP_DB. Reload the MCPs.

This works after the package is on npm or GitHub (below). Until publishing, use the local shortcut (also without a path in mcp.json):

cd ~/Desktop/engineering-mcp
npm install
npm install -g .
{
  "mcpServers": {
    "engineering": {
      "command": "engineering-mcp"
    }
  }
}

npm install -g . puts the command on the PATH. The mcp.json only mentions the name.


Where to host (npm vs GitHub vs cloud)

Where

What goes to the cloud

Config in Cursor

npm (recommended)

Only the code, public

"command": "npx", "args": ["-y", "engineering-mcp"]

GitHub

Only the code, public

"args": ["-y", "github:Wesley-Gomes93/engineering-mcp"]

HTTP server

Code and your tickets

"url": "https://your-domain/mcp"

No need for your own site. The “site” is npmjs.com — the same as mcp-lab-agent. Cursor runs the MCP on your machine; the cloud only delivers the code.

Cloud like URL ("url": "https://...") exists in Cursor, but then SQLite is no longer local: tickets, bugs, and hours would live on a server. That's a multi-user product, not this v0.

Publishing to npm (same as lab-agent)

The name engineering-mcp is free. With an npm account already logged in:

cd ~/Desktop/engineering-mcp
npm test
npm publish --access public

After that, any Mac just uses the npx block above.

Publishing to GitHub (without npm)

cd ~/Desktop/engineering-mcp
git init
git add .
git commit -m "feat: engineering mcp v0.1"
gh repo create Wesley-Gomes93/engineering-mcp --public --source . --remote origin --push

Alternative config, still without a path:

{
  "mcpServers": {
    "engineering": {
      "command": "npx",
      "args": ["-y", "github:Wesley-Gomes93/engineering-mcp"]
    }
  }
}

Restart Cursor (or reload the MCPs). The database is created on its own in ~/.engineering-mcp/.


Typical loop

"Abre um projeto Atlas (ATL) e um bug P1: timeout no checkout"
  → work_upsert_project + work_upsert_ticket

"Registra o fail do checkout.spec.js e anexa o log"
  → qa_record_run + qa_attach_evidence

"Estima 4h e lança 1.5h de repro"
  → time_estimate + time_log

"Abre investigação: hipótese de seletor instável"
  → investigate_open + investigate_add_finding

"Fecha como flaky: timing no botão Finalizar"
  → investigate_conclude

"Vira playbook: wait da animação + data-testid"
  → knowledge_save

"Me dá o pacote do ticket"
  → report_ticket

If you don't know the tool: eng_route with the phrase in Portuguese.


Tools

WORK

Tool

Does

work_upsert_project

Creates/updates project (key becomes prefix: ATL-1)

work_list_projects

Lists projects

work_upsert_ticket

Creates/updates ticket (story/bug/task/spike/epic)

work_upsert_task

Child task

work_list

Filter by project, status, type, text

work_board

Kanban: backlog → todo → doing → review → done

work_get

Detail + tasks

Status: backlog · todo · doing · review · done
Priority: p0p3
external_key stores the Jira/GitLab key without pulling an API yet.

QA

Tool

Does

qa_record_run

Run evidence (pass/fail/flaky/blocked)

qa_record_bug

Local bug + classification

qa_attach_evidence

log / screenshot / report / url

qa_list

Runs + bugs + evidence for the ticket

Running tests still happens in qa-lab-agent. Corporate Jira history stays in qa-oracle.

TIME

Tool

Does

time_estimate

Estimated hours on the ticket

time_log

Actual hours

time_metrics

Estimated vs actual vs remaining

INVESTIGATION

Tool

Does

investigate_open

Opens RCA (ticket and/or bug)

investigate_add_finding

observation / evidence / hypothesis / decision

investigate_conclude

Root cause + classification

investigate_list

Open or concluded

Classification: bug · flaky · infra · regression · unknown

KNOWLEDGE

Tool

Does

knowledge_save

Playbook / lesson / pattern

knowledge_search

FTS5 search ("have we seen this?")

REPORTING

Tool

Does

report_ticket

Full package for a ticket

report_status

Project snapshot (N days)

eng_route

Which domain to use


Structure

engineering-mcp/
├── src/
│   ├── server.js              # MCP stdio
│   ├── lib/store.js           # SQLite — fonte da verdade
│   └── domains/
│       ├── work.js
│       ├── qa.js
│       ├── time.js
│       ├── investigation.js
│       ├── knowledge.js
│       └── reporting.js
└── test/store.test.js

Default database: ~/.engineering-mcp/engineering.db (doesn't travel with the repo).

Nothing leaves the machine beyond what the agent already sees in the chat. No Jira/GitLab in v0 — external_key is the hook for sync later.


v0 vs later

Now: local database, closed loop, Cursor.

Later (only if v0 is used):

  • Jira → ticket sync (reuse qa-oracle client)

  • Import run from qa-lab-agent / GitLab job

  • HTML dashboard from report_status


Security

  • Database in ~/.engineering-mcp/ (outside the repo)

  • No tokens in v0

  • Publishing to npm/GitHub sends code, not tickets

Install Server
F
license - not found
B
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables recording, querying, and summarizing daily work entries with tags using a local SQLite database. Supports work logging, search, timeline queries, tag management, and automated reminders for tracking daily tasks.
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables natural language task management including logging, updating, and summarizing productivity activities across multiple categories using a local SQLite database. It allows users to manage workflows and generate time-based summaries through standardized Model Context Protocol tools.
    1
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables multi-project workspaces to share structured notes, API contracts, and handoff messages via a local SQLite database, with versioning and read tracking.
    GPL 3.0
  • A
    license
    Not graded
    quality
    A
    maintenance
    Local-first debug memory for MCP clients. Record incidents, commands, failed attempts, successful fixes, diagnostics, and searchable debugging history in SQLite.
    65
    2
    MIT

View all related MCP servers

Related MCP Connectors

  • Individual-analyst context layer: recall, remember, and reconcile your data and engineering context.

  • Cross-agent artifact workspace with provenance across Claude Code, Codex, Cursor, LangGraph.

  • Generate answers & visualizations from your engineering data to track software development health.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Wesley-Gomes93/engineering-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server