# Openapi Validator — REST API endpoint `openapi-validator`

Validate an OpenAPI 3.x (or Swagger 2.0) document given as JSON or YAML and return a report with errors, warnings, and summary info (title, version, path count, operation count). Errors cover a missing version field, missing info.title or info.version, a missing paths object, paths that do not start with "/", and operations without responses. Warnings cover missing operationId, Swagger 2.0 input, non-3.x versions, and component schemas with no type, $ref, or composition keyword.

- Category: validation
- MCP server: https://mcp.findutils.com/ (Streamable HTTP, no API keys, 120 req/min per IP)
- REST endpoint: POST https://api.findutils.com/api/tools/openapi-validator/execute (no API keys, 60 req/min per IP)
- Reference page: https://findutils.com/api/openapi-validator/
- Same tool on the other surface: https://findutils.com/mcp/openapi-validator/

## Call the endpoint (verified example)

```bash
curl -X POST https://api.findutils.com/api/tools/openapi-validator/execute \
  -H "Content-Type: application/json" \
  -d '{
    "spec": "{\"openapi\":\"3.0.3\",\"info\":{\"title\":\"Sample API\",\"version\":\"1.0.0\"},\"paths\":{\"/users\":{\"get\":{\"operationId\":\"listUsers\",\"responses\":{\"200\":{\"description\":\"ok\"}}}}}}"
  }'

# Parameter schema
curl https://api.findutils.com/api/tools/openapi-validator
```

## Input schema

| Argument | Type | Required | Description |
|---|---|---|---|
| `spec` | string | yes | The OpenAPI or Swagger document as JSON or YAML text. |

Example arguments (verified):

```json
{
  "spec": "{\"openapi\":\"3.0.3\",\"info\":{\"title\":\"Sample API\",\"version\":\"1.0.0\"},\"paths\":{\"/users\":{\"get\":{\"operationId\":\"listUsers\",\"responses\":{\"200\":{\"description\":\"ok\"}}}}}}"
}
```

Decoded `spec` argument (readability only — send it as a string):

```json
{
  "openapi": "3.0.3",
  "info": {
    "title": "Sample API",
    "version": "1.0.0"
  },
  "paths": {
    "/users": {
      "get": {
        "operationId": "listUsers",
        "responses": {
          "200": {
            "description": "ok"
          }
        }
      }
    }
  }
}
```

OpenAPI 3.1 spec: https://findutils.com/api/openapi.json · Interactive docs: https://findutils.com/api/docs/

## Also an MCP tool

```bash
claude mcp add findutils --transport http https://mcp.findutils.com/
```

Then ask the client to call `findutils:openapi_validator`. Full MCP reference: https://findutils.com/mcp/openapi-validator/

---
Full catalog: GET https://api.findutils.com/api/tools · https://findutils.com/api/ · https://findutils.com/llms.txt
