MCP Workflow Engine

MCP Workflow Engine

Provides AI coding agents with dependency analysis, impact detection, and build verification tools.

Category
Visit Server

README

MCP Workflow Engine

MCP server that provides AI coding agents with dependency analysis, impact detection, and build verification tools.

Tools Provided

Tool Description
get_impact Find all files affected by changes to a file
get_impact_from_diff Aggregate impact across a diff or git changeset
get_dependencies List what a file imports
get_graph_stats Get dependency graph statistics and circular deps
verify_build Run build and return pass/fail with errors
run_typecheck Run TypeScript type checking
run_lint Run linter
get_relevant_tests Suggest test files impacted by a change
run_tests Run tests (auto-detected if not provided)
run_relevant_tests Run only a provided list of tests (uses {tests} placeholder)
get_contract_impact Highlight potential API/contract impacts
chain_effect_checklist Generate verification checklist for a file type
multi_file_checklist Generate checklists for multiple files
invalidate_graph_cache Clear cached dependency graph

Auto-Detection Behavior

  • Dependency scanning defaults to src, but if it doesn't exist the server auto-detects common source roots (e.g. lib, app, apps, packages, services) and includes common test dirs (test, tests, __tests__, spec, specs) when present.
  • You can override scanning with scan_dirs, project_root, and ignore_patterns.
  • Build and test commands auto-detect common ecosystems (Node, Gradle, Maven, .NET, Go, Rust, Python, Make). You can always pass an explicit command.

Installation

cd mcp-workflow
npm install
npm run build

Configuration

Claude Code

Add to ~/.claude/settings.json:

{
  "mcpServers": {
    "workflow-engine": {
      "command": "node",
      "args": ["C:/path/to/mcp-workflow/dist/server.js"]
    }
  }
}

Codex CLI

Add to ~/.codex/config.toml:

[mcp_servers.workflow-engine]
command = "node"
args = ["C:/path/to/mcp-workflow/dist/server.js"]

Repo Config (.workflow-engine.json)

Place this in the repo being analyzed (the project_root). It overrides auto-detection.

Notes:

  • ignorePatterns are regular expressions matched against normalized paths (e.g. src/foo/bar.ts).
  • testCommand supports {tests} placeholder for targeted runs.
  • dependencyCruiserOptions is passed through to dependency-cruiser (advanced use).
  • contractDirs scopes where contract files are discovered (defaults to common docs/spec folders).
{
  "scanDirs": ["src", "packages"],
  "testDirs": ["tests", "__tests__"],
  "ignorePatterns": ["\\.generated\\.", "^dist/"],
  "contractDirs": ["docs", "spec", "openapi"],
  "buildCommand": "pnpm build",
  "testCommand": "pnpm test -- {tests}",
  "dependencyCruiserOptions": {
    "tsConfig": "tsconfig.json"
  }
}

Usage Examples

Once configured, the agent can call these tools:

Before implementing a change

Agent: I need to modify src/services/user.ts. Let me check the impact.

[Calls get_impact(file="src/services/user.ts", project_root="C:/path/to/project")]

Result:
{
  "file": "src/services/user.ts",
  "directDependents": ["src/controllers/auth.ts", "src/controllers/admin.ts"],
  "transitiveDependents": ["src/routes/api.ts"],
  "associatedTests": ["src/services/__tests__/user.test.ts"],
  "totalImpacted": 3
}

Get verification checklist

Agent: What should I verify for this change?

[Calls chain_effect_checklist(file="src/services/user.ts")]

Result:
{
  "file": "src/services/user.ts",
  "fileType": "Service/Domain",
  "checklist": [
    {"category": "Controllers", "check": "Verify all calling controllers handle new behavior"},
    {"category": "Return Types", "check": "Check if return type changes affect callers"},
    ...
  ]
}

After implementing

Agent: Let me verify the build passes.

[Calls verify_build()]

Result:
{
  "success": true,
  "output": "Build completed successfully",
  "errors": [],
  "duration": 3420
}

Diff-aware impact

Agent: What will this diff impact?

[Calls get_impact_from_diff(cwd="C:/path/to/project")]

Relevant tests + execution

Agent: Which tests should I run?

[Calls get_relevant_tests(files=["src/services/user.ts"], project_root="C:/path/to/project")]

Agent: Run those tests.

[Calls run_relevant_tests(tests=["src/services/__tests__/user.test.ts"], command="pnpm test -- {tests}")]

Contract impact

Agent: Any contract updates needed?

[Calls get_contract_impact(files=["src/controllers/user.ts"], project_root="C:/path/to/project")]

Workflow Integration

Pair with an AGENTS.md file in your repo:

## Required Workflow

### Step 1: Impact Analysis
Before implementing, use `get_impact` to identify all affected files.

### Step 2: Chain-Effect Checklist
Use `chain_effect_checklist` to get verification items for the file type.

### Step 3: Implementation
Make changes across all affected layers.

### Step 4: Build Verification
Use `verify_build` - task is NOT complete unless this returns success.

Development

npm run dev    # Watch mode
npm run build  # Build once
npm start      # Run server

License

MIT

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