claude-engineering-coach

claude-engineering-coach

An MCP server plugin for Claude Code that analyzes local AI session logs to provide coaching on coding patterns, tool usage, and productivity insights via tools and slash commands.

Category
Visit Server

README

claude-engineering-coach

A native Claude Code plugin that coaches you on your AI-assisted coding — without leaving the Claude Code terminal. Get usage summaries, anti-pattern coaching, tool comparisons, and flow analysis via MCP tools and /coach:* slash commands. (It can still read Codex / OpenCode / Copilot sessions too, but it runs inside Claude Code.)

Local-only · read-only · zero telemetry.

Reuses the analytics core of Microsoft's AI Engineering Coach — but that is a VS Code / GitHub Copilot extension. This one is built for Claude Code: it ships as a Claude Code plugin, so the coaching lives where you already work. MIT-licensed. Not affiliated with, sponsored by, or endorsed by Microsoft. See NOTICE.


What it does

It reads your on-disk AI session logs (e.g. ~/.claude/projects/**/*.jsonl) and turns them into actionable coaching:

  • /coach:summary — sessions, output, and your top anti-patterns
  • /coach:improve — prioritized, evidence-backed recommendations
  • /coach:compare — your AI tools side-by-side (sessions, LOC, models, cancel rates)
  • /coach:flow — deep-work scores, best hours, session continuity

Claude can also call the underlying tools on its own — just ask "how was my coding this week, and what should I improve?"

Nothing leaves your machine: the server parses your logs in-process, redacts secrets before any output reaches the model, and never writes to your session files.


Install

Requires Node ≥ 18 (the bundled MCP server runs with node). No npm install needed — the server bundle and rule assets are committed.

Easiest — install straight from GitHub (no local path)

In an interactive Claude Code session:

/plugin marketplace add nnhhoang/claude-engineering-coach
/plugin install coach@devempower-coach
/reload-plugins

Here marketplace add points at the GitHub repo (owner/repo), so there is no folder path to fill in. The marketplace name devempower-coach is read from .claude-plugin/marketplace.json; you use it in the install coach@devempower-coach step. Choose a scope when prompted (Local is fine for yourself).

Local dev — clone and load directly

git clone https://github.com/nnhhoang/claude-engineering-coach.git
cd claude-engineering-coach
claude --plugin-dir .

The . means "this folder" — nothing to fill in. Loads the plugin (commands + MCP server) for that session only.

Note: an earlier draft showed /plugin marketplace add /path/to/claude-engineering-coach. That /path/to/... was just a placeholder for "wherever you cloned it" — the two methods above avoid it entirely (one uses owner/repo, the other uses .).

Verify

/mcp

You should see the coach server connected with 13 tools. Then run:

/coach:summary

MCP tools (13)

coach_summary, coach_activity, coach_credits, coach_codeProduction, coach_flow, coach_patterns, coach_insights, coach_wellbeing, coach_workflows, coach_harnessComparison, coach_sessions, coach_contextHealth, and coach_reload (re-read logs after new sessions).

When no date range is given, tools default to the last 90 days. Pass fromDate / toDate (ISO YYYY-MM-DD) to widen or narrow.


How it works

core/                vendored analytics (parsers, analyzers, 45 rule + 10 metric .md)
  └─ formatters.ts   pure formatter functions
mcp/
  ├─ tool-defs.ts    12 tools (+ 90-day default + secret redaction)
  ├─ analyzer-cache.ts  lazy, cached Analyzer over parseAllLogs(findLogsDirs())
  ├─ server.ts       MCP stdio server (list / call / reload)
  └─ dist/server.mjs committed esbuild bundle (+ rules/ + metrics/ assets)
commands/            /coach:summary · improve · compare · flow
.claude-plugin/      plugin.json + marketplace.json
.mcp.json            registers the bundled "coach" server

The analytics engine is reused verbatim from upstream (it was already VS Code-free). Only the integration layer (mcp/) and packaging are new.

Rebuild after changing mcp/** or re-vendoring core/

npm install   # first time only
npm run build # → mcp/dist/server.mjs (+ copies rule/metric assets)
npm test      # core-smoke, tool-defs, analyzer-cache, server.e2e

The build commits its output (mcp/dist/) so the plugin runs on a fresh clone with only node.


Attribution & license

This project vendors the analytics core of microsoft/ai-engineering-coach (MIT). Vendored files under core/ keep their original Microsoft copyright headers; see NOTICE and VENDOR.md for the exact upstream commit.

Licensed under the MIT License. Not affiliated with Microsoft.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured