# ruff-check

Runs ruff check and returns structured lint diagnostics (file, line, code, message).

Agent View of the PolicyLayer registry record for `ruff-check`. HTML page: https://policylayer.com/tools/io-github-dave-london-pare-python/ruff-check

## Facts

- Tool: `ruff-check`
- Server: Python (`Dave-London/Pare`) — https://policylayer.com/tools/io-github-dave-london-pare-python.md
- Homepage: https://github.com/Dave-London/Pare
- Risk category: Execute (High risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 12
- Recommended policy verdict: Rate-limited

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `fix` | boolean | no | Auto-fix problems |
| `diff` | boolean | no | Show diff of fixes without applying (--diff) |
| `path` | string | no | Project root path |
| `config` | string | no | Path to custom ruff config file |
| `ignore` | array | no | Rule codes or prefixes to suppress (e.g. ['E501']) |
| `select` | array | no | Rule codes or prefixes to enable (e.g. ['E', 'F401']) |
| `compact` | boolean | no | Prefer compact output |
| `exclude` | array | no | File patterns to exclude from checking |
| `noCache` | boolean | no | Disable cache (--no-cache) |
| `preview` | boolean | no | Enable preview rules (--preview) |
| `targets` | array | no | Files or directories to check (default: ['.']) |
| `lineLength` | integer | no | Override the configured line length (--line-length) |

Parameters from the server's own tool schema.

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "ruff-check",
    "arguments": {}
  }
}
```

## Why ruff-check is rated High

The tool executes the ruff linter against code/files. While ruff check is read-only in intent (it only checks, not fixes), it runs an external process whose scope depends on arguments. It could scan arbitrary files or directories. Classified as Execute due to running an external command, with medium severity since it does not modify or delete data.

From the tool's own definition: "Runs ruff check and returns structured lint diagnostics"

Risk signals: Accepts file system path (path) · High parameter count (16 properties)

## Use case

AI agents invoke ruff-check to trigger actions in Python. What it does depends on the arguments the agent supplies, and its effects often reach beyond the immediate call: builds kicked off, notifications sent, workflows started.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Python:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "ruff-check": {
      "limits": [
        {
          "counter": "ruff-check_rate",
          "window": "minute",
          "max": 10,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on Python (13)

- `conda` — Execute — https://policylayer.com/tools/io-github-dave-london-pare-python/conda.md
- `mypy` — Execute — https://policylayer.com/tools/io-github-dave-london-pare-python/mypy.md
- `pip-install` — Execute — https://policylayer.com/tools/io-github-dave-london-pare-python/pip-install.md
- `poetry` — Execute — https://policylayer.com/tools/io-github-dave-london-pare-python/poetry.md
- `pyenv` — Execute — https://policylayer.com/tools/io-github-dave-london-pare-python/pyenv.md
- `pytest` — Execute — https://policylayer.com/tools/io-github-dave-london-pare-python/pytest.md
- `uv-install` — Execute — https://policylayer.com/tools/io-github-dave-london-pare-python/uv-install.md
- `uv-run` — Execute — https://policylayer.com/tools/io-github-dave-london-pare-python/uv-run.md
- `black` — Read — https://policylayer.com/tools/io-github-dave-london-pare-python/black.md
- `pip-audit` — Read — https://policylayer.com/tools/io-github-dave-london-pare-python/pip-audit.md
- `pip-list` — Read — https://policylayer.com/tools/io-github-dave-london-pare-python/pip-list.md
- `pip-show` — Read — https://policylayer.com/tools/io-github-dave-london-pare-python/pip-show.md
- `ruff-format` — Read — https://policylayer.com/tools/io-github-dave-london-pare-python/ruff-format.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=io-github-dave-london-pare-python · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/io-github-dave-london-pare-python
