Metadata-Version: 2.4
Name: rulestamp-openapi-security-contract-lint
Version: 1.0.6
Summary: Finds the lines in an OpenAPI file that publish an endpoint with no authentication, an API key in the query string, or an OAuth grant RFC 9700 forbids. (bundled Node.js runtime)
Author-email: Rulestamp <support@getreadystack.com>
License: Proprietary - see LICENSE.txt
Project-URL: Homepage, https://getreadystack.com/tools/openapi-security-contract-lint?ref=pypi
Project-URL: Documentation, https://getreadystack.com/tools/openapi-security-contract-lint?ref=pypi
Project-URL: Support, https://getreadystack.com/support
Keywords: openapi,swagger,api-security,owasp-api-top-10,oauth,rfc9700,linter
Classifier: Programming Language :: Python :: 3
Classifier: Environment :: Console
Classifier: Topic :: Software Development :: Quality Assurance
Classifier: Operating System :: OS Independent
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE.txt
Requires-Dist: nodejs-wheel-binaries>=20
Dynamic: license-file

# OpenAPI Security Contract Lint

> Runs the same checker as our npm package on a Node.js runtime that pip installs for you (`nodejs-wheel-binaries`) - no system Node.js needed. Your files are checked locally.

Finds the lines in an OpenAPI file that publish an endpoint with no authentication, an API key in the query string, or an OAuth grant RFC 9700 forbids.

## Install

```
openapi-security-contract-lint file
```

Node 18+. The same 18 rules as the VS Code extension, from a terminal or CI.

## Free

- Audit the OpenAPI file open in the editor against all 18 rules - every finding, every line number, every rule reference, nothing withheld
- `--rules` lists every rule

## With a licence ($29 once)

- Sweep every OpenAPI document in the workspace, not just the open tab, and write a dated CSV/JSON/HTML report you keep with the release as evidence

```
openapi-security-contract-lint --dir ./templates --report html --out report.html
```

An application-security consultant reading the same contract by hand bills $150-$250 an hour

## Use from an AI agent (MCP)

Claude Code · Cursor · Windsurf · any MCP client - add to your MCP config:

```json
{ "mcpServers": { "openapi-security-contract-lint": { "command": "openapi-security-contract-lint", "args": ["--mcp"] } } }
```

Tools: `check_text` and `check_file` (free) · `check_dir` (licence). The agent gets every finding with the line number.

## Use in CI

```yaml
- name: OpenAPI Security Contract Lint
  run: pip install rulestamp-openapi-security-contract-lint && openapi-security-contract-lint --dir . --ci
```


The folder sweep, reports and CI mode need one licence — one payment, no subscription. Set `READYSTACK_LICENSE=<key>` or run `--license <key>` once.

[Get a licence](https://getreadystack.com/api/buy/cl/polar_cl_nXjacvEwIBQ8xjkXZXDymfZbCc9cnushVFkc83YVTJW)


<!-- openapi security contract lint -->


## Install (PyPI)

```
pip install rulestamp-openapi-security-contract-lint
openapi-security-contract-lint --help
```
