by Dave-London
Provides token‑efficient, structured MCP servers that wrap popular developer tools and return typed JSON for AI coding agents, dramatically reducing token usage while preserving full machine‑readable data.
Pare delivers a collection of MCP servers that encapsulate common development utilities (git, npm, Docker, testing frameworks, etc.). Each server emits both human‑readable text and a validated JSON payload, enabling AI agents to consume tool output directly without costly parsing.
npx -y <package> shortcut.
npx -y @paretools/git # git wrapper
npx -y @paretools/test # test runner wrapper
mcp__pare-<tool> prefix (e.g., mcp__pare-git status). The response contains content (human text) and structuredContent (JSON).npx.git log or run tests and receive structured data for decision‑making.Q: Do I need to install every Pare server?
A: No. Install only the packages you need (@paretools/git, @paretools/npm, etc.).
Q: What Node version is required? A: Node.js 20 or higher.
Q: How does Windows handle npx?
A: Wrap the command with cmd /c (e.g., { "command": "cmd", "args": ["/c", "npx", "-y", "@paretools/git"] }).
Q: Can I customize the output schema? A: Pare uses built‑in JSON schemas per tool; custom schemas are not currently exposed.
Q: What if I need more than one server in the same context?
A: List each server under the mcpServers object in your client’s configuration file.
Dev tools, optimized for agents. Up to 95% fewer tokens, 100% structured output.
Pare is a collection of MCP servers that wrap popular developer tools with structured, token-efficient, schema-validated output optimized for AI coding agents.
AI coding agents waste tokens on output designed for humans — ANSI colors, progress bars, download indicators, help suggestions, decorative formatting. This is expensive and error-prone to parse.
| Tool Command | Raw Tokens | Pare Tokens | Reduction |
|---|---|---|---|
docker build (multi-stage, 11 steps) |
373 | 20 | 95% |
git log --stat (5 commits, verbose) |
4,992 | 382 | 92% |
npm install (487 packages, warnings) |
241 | 41 | 83% |
vitest run (28 tests, all pass) |
196 | 39 | 80% |
cargo build (2 errors, help text) |
436 | 138 | 68% |
pip install (9 packages, progress bars) |
288 | 101 | 65% |
cargo test (12 tests, 2 failures) |
351 | 190 | 46% |
npm audit (4 vulnerabilities) |
287 | 185 | 36% |
Token counts estimated at ~4 chars/token. Savings are highest on verbose, human-formatted output — build logs, install progress, test runners, and detailed history. For compact diagnostic tools like
eslintortsc(one line per issue), Pare's value is structured reliability over token savings: agents get typed JSON they can consume directly instead of regex-parsing human text.
Every Pare tool returns dual output:
content — Human-readable text (for MCP clients that display it)structuredContent — Typed, schema-validated JSON (for agents)Pare uses MCP's structuredContent + outputSchema spec features to deliver type-safe, validated structured output that agents can consume directly.
| Package | Tools | Wraps |
|---|---|---|
@paretools/git |
status, log, diff, branch, show, add, commit, push, pull, checkout | git |
@paretools/test |
run, coverage | pytest, jest, vitest, mocha |
@paretools/npm |
install, audit, outdated, list, run, test, init | npm |
@paretools/docker |
ps, build, logs, images, run, exec, compose-up, compose-down, pull | docker, docker compose |
@paretools/build |
tsc, build, esbuild, vite-build, webpack | tsc, esbuild, vite, webpack |
@paretools/lint |
lint, format-check, prettier-format, biome-check, biome-format | eslint, prettier, biome |
@paretools/python |
pip-install, mypy, ruff-check, pip-audit, pytest, uv-install, uv-run, black | pip, mypy, ruff, pytest, uv, black |
@paretools/cargo |
build, test, clippy, run, add, remove, fmt, doc, check | cargo |
@paretools/go |
build, test, vet, run, mod-tidy, fmt, generate | go, gofmt |
Claude Code (recommended):
claude mcp add --transport stdio pare-git -- npx -y @paretools/git
claude mcp add --transport stdio pare-test -- npx -y @paretools/test
Claude Code / Claude Desktop / Cursor / Windsurf / Cline / Roo Code / Gemini CLI (mcpServers format):
{
"mcpServers": {
"pare-git": {
"command": "npx",
"args": ["-y", "@paretools/git"]
},
"pare-test": {
"command": "npx",
"args": ["-y", "@paretools/test"]
}
}
}
{
"servers": {
"pare-git": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@paretools/git"]
},
"pare-test": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@paretools/test"]
}
}
}
{
"context_servers": {
"pare-git": {
"command": "npx",
"args": ["-y", "@paretools/git"],
"env": {}
}
}
}
[mcp_servers.pare-git]
command = "npx"
args = ["-y", "@paretools/git"]
[mcp_servers.pare-test]
command = "npx"
args = ["-y", "@paretools/test"]
name: Pare Tools
version: 0.0.1
schema: v1
mcpServers:
- name: pare-git
type: stdio
command: npx
args: ["-y", "@paretools/git"]
- name: pare-test
type: stdio
command: npx
args: ["-y", "@paretools/test"]
On Windows, wrap npx with cmd /c:
{
"mcpServers": {
"pare-git": {
"command": "cmd",
"args": ["/c", "npx", "-y", "@paretools/git"]
}
}
}
git statusRaw git output (~118 tokens):
On branch main
Your branch is ahead of 'origin/main' by 2 commits.
(use "git push" to publish your local commits)
Changes to be committed:
(use "git restore --staged <file>..." to unstage)
modified: src/index.ts
new file: src/utils.ts
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: README.md
Untracked files:
(use "git add <file>..." to include in what will be committed)
temp.log
Pare structured output (~59 tokens):
{
"branch": "main",
"upstream": "origin/main",
"ahead": 2,
"staged": [
{ "file": "src/index.ts", "status": "modified" },
{ "file": "src/utils.ts", "status": "added" }
],
"modified": ["README.md"],
"deleted": [],
"untracked": ["temp.log"],
"conflicts": [],
"clean": false
}
50% fewer tokens. Zero information lost. Fully typed. Savings scale with output verbosity — test runners and build logs see 80–92% reduction.
Add a snippet to your project's agent instruction file so AI agents prefer Pare tools over raw CLI commands:
## MCP Tools
When Pare MCP tools are available (prefixed with mcp\_\_pare-\*), prefer them over
running raw CLI commands via Bash. Pare tools return structured JSON with ~85%
fewer tokens than CLI output.
- Git: mcp**pare-git**status, log, diff, branch, show, add, commit, push, pull, checkout
- Tests: mcp**pare-test**run, mcp**pare-test**coverage (pytest, jest, vitest, mocha)
- Builds: mcp**pare-build**tsc, build, esbuild, vite-build, webpack
- Linting: mcp**pare-lint**lint, format-check, prettier-format, biome-check, biome-format
- npm: mcp**pare-npm**install, audit, outdated, list, run, test, init
- Docker: mcp**pare-docker**ps, build, logs, images, run, exec, compose-up, compose-down, pull
- Python: mcp**pare-python**pip-install, mypy, ruff-check, pip-audit, pytest, uv-install, uv-run, black
- Cargo: mcp**pare-cargo**build, test, clippy, run, add, remove, fmt, doc, check
- Go: mcp**pare-go**build, test, vet, run, mod-tidy, fmt, generate
## MCP Servers
This project uses Pare MCP servers (62 tools) for structured, token-efficient dev tool output.
Prefer Pare MCP tools over raw CLI commands for git, testing, building, linting, npm, docker, python, cargo, and go.
Pare tools return typed JSON, saving tokens and preventing parsing errors.
---
description: Use Pare MCP tools for structured dev tool output
globs: ["**/*"]
alwaysApply: true
---
When Pare MCP tools are available, prefer them over running CLI commands in the
terminal. Pare tools (pare-git, pare-test, pare-build, pare-lint, pare-npm,
pare-docker, pare-python, pare-cargo, pare-go — 62 tools total) return
structured JSON with up to 95% fewer tokens than raw CLI output.
## Tool Preferences
This project uses Pare MCP servers (@paretools/\*) for structured dev tool output.
When available, prefer Pare tools (pare-git, pare-test, pare-build, pare-lint, pare-npm, pare-docker, pare-python, pare-cargo, pare-go) over raw CLI commands.
When Pare MCP tools are available, prefer them over raw CLI commands.
Pare tools return structured JSON with fewer tokens than CLI output.
- pare-git: status, log, diff, branch, show, add, commit, push, pull, checkout
- pare-test: run, coverage (pytest, jest, vitest, mocha)
- pare-build: tsc, build, esbuild, vite-build, webpack
- pare-lint: lint, format-check, prettier-format, biome-check, biome-format
- pare-npm: install, audit, outdated, list, run, test, init
- pare-docker: ps, build, logs, images, run, exec, compose-up, compose-down, pull
- pare-python: pip-install, mypy, ruff-check, pip-audit, pytest, uv-install, uv-run, black
- pare-cargo: build, test, clippy, run, add, remove, fmt, doc, check
- pare-go: build, test, vet, run, mod-tidy, fmt, generate
| Issue | Solution |
|---|---|
npx not found / ENOENT on Windows |
Use cmd /c npx wrapper (see Windows config above) |
| Slow first start | Run npx -y @paretools/git once to cache, or install globally: npm i -g @paretools/git |
| Node.js version error | Pare requires Node.js >= 20 |
| NVM/fnm PATH issues | Use absolute path to npx: e.g., ~/.nvm/versions/node/v22/bin/npx |
| MCP connection timeout | Set MCP_TIMEOUT=30000 for Claude Code, or increase initTimeout in client config |
| Too many tools filling context | Only install the Pare servers relevant to your project — you don't need all 9 |
Each server is a self-contained package. See CONTRIBUTING.md for the full guide.
Please log in to share your review and rating for this MCP.
Explore related MCPs that share similar capabilities and solve comparable challenges
by modelcontextprotocol
A Model Context Protocol server for Git repository interaction and automation.
by zed-industries
A high‑performance, multiplayer code editor designed for speed and collaboration.
by modelcontextprotocol
Model Context Protocol Servers
by modelcontextprotocol
A Model Context Protocol server that provides time and timezone conversion capabilities.
by cline
An autonomous coding assistant that can create and edit files, execute terminal commands, and interact with a browser directly from your IDE, operating step‑by‑step with explicit user permission.
by upstash
Provides up-to-date, version‑specific library documentation and code examples directly inside LLM prompts, eliminating outdated information and hallucinated APIs.
by daytonaio
Provides a secure, elastic infrastructure that creates isolated sandboxes for running AI‑generated code with sub‑90 ms startup, unlimited persistence, and OCI/Docker compatibility.
by continuedev
Enables faster shipping of code by integrating continuous AI agents across IDEs, terminals, and CI pipelines, offering chat, edit, autocomplete, and customizable agent workflows.
by github
Connects AI tools directly to GitHub, enabling natural‑language interactions for repository browsing, issue and pull‑request management, CI/CD monitoring, code‑security analysis, and team collaboration.
{
"mcpServers": {
"pare-git": {
"command": "npx",
"args": [
"-y",
"@paretools/git"
],
"env": {}
},
"pare-test": {
"command": "npx",
"args": [
"-y",
"@paretools/test"
],
"env": {}
}
}
}claude mcp add pare-git npx -y @paretools/git