Skip to main content
Glama
README.md
# dev-workflow-mcp

An MCP server that gives Claude Code extra tools for everyday development work: reading files, exploring project structure, searching code, checking git state, and generating review checklists.

## Install

```bash
cd "/Users/asimali/development/mcp servers/dev-workflow-mcp"
npm install
```

## Add to Claude Code

### Option A: CLI (recommended)

```bash
claude mcp add dev-workflow -- node "/Users/asimali/development/mcp servers/dev-workflow-mcp/server.js"
```

### Option B: Manual config

Add this to your Claude Code MCP config (e.g. `.claude.json` or the relevant `mcpServers` block):

```json
{
  "mcpServers": {
    "dev-workflow": {
      "command": "node",
      "args": ["/Users/asimali/development/mcp servers/dev-workflow-mcp/server.js"]
    }
  }
}
```

The server uses `process.cwd()` as the project root for all file/search operations, so it reflects whatever directory Claude Code launches it from.

## Tools

| Tool | Description |
|---|---|
| `read_project_file` | Reads and returns the full contents of a file by relative path. |
| `list_project_structure` | Lists files/folders recursively from a directory, up to a given depth. |
| `search_code` | Searches for a text or regex pattern across `.js`, `.ts`, `.tsx`, `.jsx` files. |
| `git_info` | Returns current branch, `git status`, and the last 10 commits. |
| `code_review_checklist` | Returns a checklist tailored to `react`, `api`, or `general` code, for a given file. |
| `generate_commit_message` | Retrieves staged changes and formats them with a conventional commit template. |

All tools fail gracefully — errors (missing files, invalid paths, non-git directories, etc.) are returned as readable error messages instead of crashing the server.

## Usage Examples

Ask Claude Code to use these tools naturally:

- **"Read package.json"** → `read_project_file`
- **"Show me the project structure"** → `list_project_structure`
- **"Find all imports of React"** → `search_code`
- **"What's the current git status?"** → `git_info`
- **"Give me a code review checklist for this component"** → `code_review_checklist`
- **"Show me what I'm about to commit"** → `generate_commit_message`

## Development

```bash
# Install dependencies
npm install

# Verify syntax
npm run lint

# Run server (stays open on stdio)
npm start
```

## Requirements

- **Node.js** 18+ (uses native modules: `fs`, `path`, `child_process`)
- **Git** (for `git_info` and `generate_commit_message` tools)

## Security

- **Path traversal prevention:** All file paths validated against project root
- **Graceful degradation:** All tools handle errors without crashing
- **No injection risks:** Git commands use template literals with args (safe in Node.js 22+), patterns validated with zod
- **Buffer limits:** Large diffs capped at 3000 bytes preview; `maxBuffer` set to 10MB for git commands
- **Stdio-only:** Server uses stdio transport (no network exposure)