Pare Python

io.github.Dave-London由 GitHub 账号 Dave-London 发布v0.8.1更新于 Oct 24, 2026

Pare Python ג€” Structured Python tool output (ruff, mypy, pip, uv, black, pytest) as typed JSON.

已验证STDIO仅桌面开发者工具数据与分析

概览

AI 生成的概览

封装 Python 工具链(ruff、mypy、pip、uv、black、pytest),让助手获得经过模式校验的 JSON,而不是原始终端文本。

可以做什么
Pare Python 是 Pare 系列 MCP 服务器中的一个包,用于封装命令行开发工具并返回结构化输出。每个工具同时返回人类可读的 content 和带类型、经模式校验的 structuredContent,因此 lint 结果、类型错误、依赖安装和测试结果都以一致字段呈现,而不是带 ANSI 转义符的文本。README 称该系列覆盖 28 个包、240 个工具,涉及版本控制、语言与包管理、构建/检查/测试、基础设施和实用工具,本包对应 Python 生态。
适用场景
当助手需要运行 Python 的代码检查、类型检查、依赖管理或测试,并以编程方式处理结果时适用。它对安装和测试运行等输出冗长的命令最有价值,README 称可大幅减少 token;也适合需要跨平台、跨工具版本保持一致行为的工作流。
运行要求
以 npm 包(@paretools/python)通过 npx 在本地以 stdio 运行,需要 Node.js 20 或更高版本。被封装的本机 Python 工具(ruff、mypy、pip、uv、black、pytest)必须可用。未声明认证、环境变量或请求头;可通过 PARE_TOOLS 或 PARE_{SERVER}_TOOLS 可选地筛选工具。
安装前请注意
该服务器会执行本地开发命令,因此安装包、修改文件或运行测试等工具会直接作用于用户的机器和项目。可用 PARE_TOOLS、PARE_{SERVER}_TOOLS 等变量限制暴露的命令,例如仅保留只读操作。本包不要求任何凭据。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Pare Python,将其添加到工作区。
  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 分