Pare Test

io.github.Dave-London由 GitHub 帳號 Dave-London 發布v0.8.1更新於 Oct 24, 2026

Pare Test ג€” Auto-detects test framework (pytest, jest, vitest, mocha), returns typed JSON.

已驗證STDIO僅桌面開發者工具AI 與機器學習

概覽

AI 產生的概覽

一個本機 MCP 伺服器,透過 pytest、jest、vitest 或 mocha 執行測試,並回傳具型別、經結構描述驗證的 JSON,而非原始終端機輸出。

可以做什麼
自動偵測專案的測試框架(pytest、jest、vitest、mocha)並執行測試,以欄位名稱一致的具型別 JSON 回傳結果,而不是原始終端機文字。每次呼叫同時回傳人類可讀文字與經結構描述驗證的結構化內容,助理無須解析字串即可處理通過/失敗資料。輸出精簡,README 稱在冗長的測試執行中可明顯減少 token 用量。可透過環境變數篩選來縮減註冊的工具範圍。
適用情境
適合助理需要執行測試並跨平台、跨工具版本與語言環境可靠分析結果的情境,也適合原始測試輸出過於冗長或難以解析時。它屬於更大的 Pare 系列,僅在測試執行是你技術棧中相關部分時安裝。
執行需求
透過 npx 從 npm 套件 @paretools/test 以本機 stdio 程序執行。需要 Node.js 20 或更新版本,首次 npx 下載需要網路存取。專案中需已安裝對應的測試框架及其相依套件。未宣告任何身分驗證或憑證。
安裝前請注意
此伺服器會在您的專案中執行測試命令,可能執行任意專案程式碼與測試指令碼。工具篩選透過 PARE_TOOLS、PARE_{SERVER}_TOOLS 等環境變數設定;不會要求任何密鑰。在指向不受信任的儲存庫前,請先檢查已啟用的工具。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Pare Test,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

[圖片]  Pare

[CI] [codecov] [npm] [Downloads] [TypeScript] [License: MIT] [Node.js >= 20] [OpenSSF Scorecard] [OpenSSF Best Practices]

Reliable, structured CLI output for AI agents — no more parsing fragile terminal text.

Pare provides MCP servers that wrap common developer tools (git, npm, docker, test runners, etc.) and return clean, schema-validated JSON instead of raw terminal text. Agents get typed data they can act on directly, without brittle string parsing.

The Problem

Parsing CLI output is fragile. Raw terminal text includes ANSI escape codes, decorative headers, progress bars, locale-specific formatting, and platform differences that break agent workflows in subtle ways. An agent that works fine with git status on macOS may fail on Windows because the output format changed. A test runner's summary line might shift between versions, silently breaking a regex.

Pare eliminates this entire class of errors by returning schema-validated JSON with consistent field names, regardless of platform, tool version, or locale. As a bonus, structured output is significantly smaller — agents use fewer tokens per tool call:

Tool CommandRaw TokensPare TokensReduction
docker build (multi-stage, 11 steps)3732095%
git log --stat (5 commits, verbose)4,99238292%
npm install (487 packages, warnings)2414183%
vitest run (28 tests, all pass)1963980%
cargo build (2 errors, help text)43613868%
pip install (9 packages, progress bars)28810165%
cargo test (12 tests, 2 failures)35119046%
npm audit (4 vulnerabilities)28718536%

Token estimates use ~4 chars/token. The biggest savings appear on verbose commands (builds, installs, tests). For simpler tools like eslint or tsc, the main advantage is reliable structured data — agents can use typed JSON directly rather than parsing strings.

How It Works

Each Pare tool returns two outputs:

  • content — human-readable text, for MCP clients that display it
  • structuredContent — typed, schema-validated JSON, ready for agents to process

This uses MCP's structuredContent and outputSchema features to provide type-safe, validated data that agents can rely on without custom parsing.

Example: git status

Raw git output (~118 tokens):

On branch mainYour 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):

json
{  "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.

Available Servers (28 packages, 240 tools)

Install only the servers relevant to your stack — most projects need just 2–4. The full catalog covers a wide range of ecosystems so Pare works wherever you do.

CategoryServersToolsWraps
Version Controlgit, github55git, gh
Languages & Packagesnpm, python, cargo, go, deno, bun, nix, dotnet, ruby, swift, jvm101npm, pip, cargo, go, deno, bun, nix, dotnet, gem, swift, gradle, maven
Build, Lint & Testbuild, lint, test, cmake, bazel23tsc, esbuild, vite, webpack, eslint, prettier, biome, vitest, pytest, jest
Infrastructuredocker, k8s, infra, security, remote40docker, kubectl, helm, terraform, ansible, trivy, ssh
Utilitiessearch, http, make, process, db21ripgrep, fd, curl, make, just, psql, mysql, redis, mongosh

Tool Schemas — detailed response examples and field descriptions for every tool. See also Tool Response Examples for quick JSON samples.

Quick Setup

bash
# 1. Configure MCP servers (non-interactive)npx @paretools/init --client claude-code --preset web
# 2. Add agent rules to your project#    (append to existing CLAUDE.md, or copy if new)cat node_modules/@paretools/init/rules/CLAUDE.md >> CLAUDE.md
# 3. Restart your client session
# 4. Validatenpx @paretools/init doctor

Available presets: web, python, rust, go, jvm, dotnet, ruby, swift, mobile, devops, full

Setup Guides by Client

Full Quickstart Guide — presets, ecosystem mapping, validation

Manual Configuration — config paths and formats for all clients

Agent Integration Guide — rule files, hooks, CLI-to-MCP mapping

Configuration

Tool Selection

By default, every Pare server registers all of its tools. If a server exposes tools you don't need — or you want to limit which tools are available to an agent — you can filter them with environment variables.

Per-server filter — restrict a single server's tools:

bash
# Only register status and log in the git serverPARE_GIT_TOOLS=status,log npx @paretools/git

Universal filter — restrict tools across all servers:

bash
# Only register these specific tools across any serverPARE_TOOLS=git:status,git:log,npm:install npx @paretools/git

Disable all tools — set the env var to an empty string:

bash
PARE_GIT_TOOLS= npx @paretools/git   # no tools registered
Env VarScopeFormatExample
PARE_TOOLSAll serversserver:tool,...git:status,npm:install
PARE_{SERVER}_TOOLSOne servertool,...status,log,diff

Rules:

  • No env var = all tools enabled (default)
  • PARE_TOOLS (universal) takes precedence over per-server vars
  • Server names use uppercase with hyphens replaced by underscores (e.g., PARE_MY_SERVER_TOOLS)
  • Whitespace around commas is ignored

Common patterns:

bash
# Read-only git (no push, commit, add, checkout)PARE_GIT_TOOLS=status,log,diff,branch,show
# Minimal npmPARE_NPM_TOOLS=install,test,run
# Only specific tools across all serversPARE_TOOLS=git:status,git:diff,npm:install,test:run

In JSON MCP config, set via the env key:

json
{  "mcpServers": {    "pare-git": {      "command": "npx",      "args": ["-y", "@paretools/git"],      "env": {        "PARE_GIT_TOOLS": "status,log,diff,show"      }    }  }}

Troubleshooting

IssueSolution
npx not found / ENOENT on WindowsUse cmd /c npx wrapper (see your client's setup guide)
Slow first startRun npx -y @paretools/git once to cache, or install globally: npm i -g @paretools/git
Node.js version errorPare requires Node.js >= 20
NVM/fnm PATH issuesUse absolute path to npx: e.g., ~/.nvm/versions/node/v22/bin/npx
MCP connection timeoutSet MCP_TIMEOUT=30000 for Claude Code, or increase initTimeout in client config
Too many tools filling contextUse tool selection env vars to limit tools, or only install the servers you need

Contributing

Each server is a self-contained package. See CONTRIBUTING.md for the full guide.

License

MIT

來源:README.md,提交 57e1980

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.8.1最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分