api-contract-validator
Cloudflare Workers MCP server: api-contract-validator
Sollte ich dies verwenden
Qualität und Sicherheit
Befunde (1)
- LOWin lint_api_schema
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"api-contract-validator": {
"url": "https://api.lazy-mac.com/api-contract-validator/mcp"
}
}
}Remote-Endpunkte
https://api.lazy-mac.com/api-contract-validator/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (5)
⚪validate_openapi_spec(spec, strict)
Validate an OpenAPI 3.x or AsyncAPI spec JSON. Returns structural errors, missing required fields, and warnings.
Eingabe-Schema
{
"type": "object",
"properties": {
"spec": {
"type": "object",
"description": "OpenAPI or AsyncAPI spec as a JSON object"
},
"strict": {
"type": "boolean",
"description": "Treat warnings as errors (default: false)",
"default": false
}
},
"required": [
"spec"
]
}⚪diff_request_response(spec, request, response)
Compare a real HTTP request/response against an OpenAPI spec contract. Returns per-field violations.
Eingabe-Schema
{
"type": "object",
"properties": {
"spec": {
"type": "object",
"description": "OpenAPI spec JSON object"
},
"request": {
"type": "object",
"description": "HTTP request to validate",
"properties": {
"method": {
"type": "string",
"description": "HTTP method"
},
"path": {
"type": "string",
"description": "Request path (e.g. /users/123)"
},
"body": {
"type": "object",
"description": "Request body"
},
"contentType": {
"type": "string",
"description": "Content-Type (default: application/json)"
},
"params": {
"type": "object",
"properties": {
"query": {
"type": "object"
},
"path": {
"type": "object"
}
}
}
},
"required": [
"method",
"path"
]
},
"response": {
"type": "object",
"description": "HTTP response to validate (optional)",
"properties": {
"statusCode": {
"type": "integer"
},
"body": {
"type": "object"
},
"contentType": {
"type": "string"
}
}
}
},
"required": [
"spec",
"request"
]
}⚪lint_api_schema(spec, rules)
Lint an API spec for quality and best practice compliance. Rules: operation-id-kebab-case, response-success-required, tags-defined, no-empty-description, security-defined.
Eingabe-Schema
{
"type": "object",
"properties": {
"spec": {
"type": "object",
"description": "OpenAPI spec JSON object"
},
"rules": {
"type": "array",
"items": {
"type": "string"
},
"description": "Rules to apply (defaults to all)"
}
},
"required": [
"spec"
]
}⚪generate_mock_from_spec(spec, path, method, statusCode)
Generate mock response data from an OpenAPI spec. Uses examples, defaults, formats, and type heuristics.
Eingabe-Schema
{
"type": "object",
"properties": {
"spec": {
"type": "object",
"description": "OpenAPI spec JSON object"
},
"path": {
"type": "string",
"description": "Target path (optional; generates all if omitted)"
},
"method": {
"type": "string",
"description": "HTTP method (used with path)"
},
"statusCode": {
"type": "string",
"description": "Response status code (default: 200)",
"default": "200"
}
},
"required": [
"spec"
]
}🟢check_breaking_changes(spec_old, spec_new)
Compare two OpenAPI spec versions to detect breaking changes: removed paths/operations, new required parameters, removed response codes, operationId renames.
Eingabe-Schema
{
"type": "object",
"properties": {
"spec_old": {
"type": "object",
"description": "Previous spec version"
},
"spec_new": {
"type": "object",
"description": "New spec version"
}
},
"required": [
"spec_old",
"spec_new"
]
}Community
Nachweis