home / mcp / par5 mcp server

Par5 MCP Server

Provides parallel shell execution and multi-agent processing for lists of items with streaming outputs and batched processing.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "jrandolf-par5-mcp": {
      "command": "npx",
      "args": [
        "par5-mcp"
      ],
      "env": {
        "PAR5_AGENT_ARGS": "(none)",
        "PAR5_BATCH_SIZE": "10",
        "PAR5_CODEX_ARGS": "(none)",
        "PAR5_CLAUDE_ARGS": "(none)",
        "PAR5_GEMINI_ARGS": "(none)",
        "PAR5_DISABLE_CODEX": "(none)",
        "PAR5_DISABLE_CLAUDE": "(none)",
        "PAR5_DISABLE_GEMINI": "(none)"
      }
    }
  }
}

You can run shell commands and AI coding agents in parallel across lists of items with par5-mcp. It helps you batch-process files, apply linters or checks to many targets at once, and coordinate multiple AI agents to handle workloads efficiently while streaming results in real time.

How to use

Set up an MCP client to connect to the par5-mcp server. You will create named lists of items, then run shell commands or AI agents across those lists in batches. Each item in a list is processed independently in parallel, with outputs streamed to separate files so you can monitor progress and read results later.

How to install

Prerequisites you need before installing:

Install Node.js 18 or newer.

Install par5-mcp locally or globally.

How to install

npm install par5-mcp
```

Or install globally:

```
npm install -g par5-mcp

Configure the MCP client to connect to par5-mcp

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

Run the server locally

If you prefer running par5-mcp directly from the command line after installation, you can start it as a local stdio server. Use the runtime command shown in the example below.

Configuration

You can customize how par5-mcp behaves by setting environment variables. The most common options are batching size and agent-specific arguments. The default batch size is 10, and you can pass extra arguments to all agents or disable individual agents as needed.

Environment variables you can set

- PAR5_BATCH_SIZE: Number of parallel processes per batch. Default is 10. - PAR5_AGENT_ARGS: Additional arguments passed to all agents. - PAR5_CLAUDE_ARGS: Additional arguments passed to Claude CLI. - PAR5_GEMINI_ARGS: Additional arguments passed to Gemini CLI. - PAR5_CODEX_ARGS: Additional arguments passed to Codex CLI. - PAR5_DISABLE_CLAUDE: Disable the Claude agent when set to any value. - PAR5_DISABLE_GEMINI: Disable the Gemini agent when set to any value. - PAR5_DISABLE_CODEX: Disable the Codex agent when set to any value.

Basic workflow example

1) Create a list of files you want to process. 2) Run a shell command across that list. 3) Or delegate processing to AI agents. 4) Read the generated output files to review results. 5) Clean up the list when you are done.

Troubleshooting tips

If outputs aren’t appearing as expected, check the temporary results directory in your system temp folder under par5-mcp-results for per-item stdout and stderr files. Ensure batch size and agent options are set correctly for your environment.

Notes

Results are processed in batches of 10 by default to avoid overwhelming the system. You can alter this behavior via PAR5_BATCH_SIZE and related environment variables.

Examples of common tasks

  • Create a list of target files or URLs with create_list
  • Use run_shell_across_list to execute a command like wc -l $item on each item in the list
  • Use run_agent_across_list to have Claude, Gemini, or Codex analyze or modify each item in parallel
  • Read the per-item stdout.txt and stderr.txt files to understand results
  • Delete the list when finished using delete_list

Available tools

create_list

Creates a named list of items for parallel processing and returns a unique list ID for subsequent operations.

get_list

Retrieves the items in an existing list by its ID.

update_list

Replaces the items in an existing list with a new array.

delete_list

Deletes an existing list by its ID.

list_all_lists

Lists all existing lists with their item counts.

run_shell_across_list

Executes a shell command for each item in a list with batched parallelism; outputs per-item stdout and stderr.

run_agent_across_list

Spawns an AI coding agent for each item in a list in batches, with per-item prompts and timeouts; outputs per-item stdout and stderr.