Python

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

Structured Python tool output (ruff, mypy, pip-audit, pip-install) as typed JSON.

已驗證STDIO僅桌面開發者工具安全與監控

概覽

AI 產生的概覽

一個本機 MCP 伺服器,執行 Python 工具(ruff、mypy、pip-audit、pip-install),回傳具型別、經 schema 驗證的 JSON,而非原始終端機文字。

可以做什麼
透過 ruff 和 mypy 執行 Python 程式碼檢查與型別檢查,回傳結構化結果而非終端機文字。用 pip-audit 稽核已安裝相依套件,並以具型別的 JSON 回傳發現。用 pip-install 安裝套件,取得精簡的結構化摘要。每次呼叫同時回傳人類可讀文字和經 schema 驗證的結構化內容,供助理直接處理。
適用情境
適合助理處理 Python 專案時使用,需要可靠的程式碼檢查、型別檢查、相依套件稽核或安裝結果,而不必解析易碎的 CLI 輸出,尤其在跨平台或跨工具版本時。
執行需求
透過 npx 從 npm 套件 @paretools/python 以本機 stdio 程序執行,需要 Node.js 20 或更新版本。機器上需具備底層 Python 工具(ruff、mypy、pip-audit、pip)。未宣告驗證或環境變數。
安裝前請注意
pip-install 工具會透過安裝套件變更本機 Python 環境,pip-audit 會回報已安裝相依套件。可用 PARE_TOOLS 或 PARE_PYTHON_TOOLS 等環境變數限制可用工具。授予專案存取權限前,請確認啟用了哪些工具。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 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.0最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

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

  • 近 30 天內可連通25 分

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

  • 已宣告認證方式10 分

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

  • 已列出工具15 分

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

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