api-contract-validator

Cloudflare Workers MCP server: api-contract-validator

使うべきか

品質と安全性

A
説明の品質
94%
スキーマの完全性
100%
命名の品質
92%
ポイズニングのリスク
100%
権限の一致
100%
プロトコルへの準拠
100%

検出事項(1)

  • LOWTool 'lint_api_schema' description lacks action verblint_api_schema 内

ツール定義とプロトコルへの準拠に関する自動分析に基づいています。

コンテキストコスト

~608トークン数(ツール定義)
~1.1 KB一般的なレスポンスサイズ
注意への影響は最小限(128k コンテキストの 0.47%)

これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。

インストール

ワンクリックインストール

これを `claude_desktop_config.json` ファイルに追加してください:

{
  "mcpServers": {
    "api-contract-validator": {
      "url": "https://api.lazy-mac.com/api-contract-validator/mcp"
    }
  }
}

リモートエンドポイント

https://api.lazy-mac.com/api-contract-validator/mcpstreamable-http

できること

ツール一覧

ツール(5)

🟢 読み取り専用🟡 書き込み🔴 削除⚪ 不明
⚪validate_openapi_spec(spec, strict)

Validate an OpenAPI 3.x or AsyncAPI spec JSON. Returns structural errors, missing required fields, and warnings.

入力スキーマ

{
  "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.

入力スキーマ

{
  "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.

入力スキーマ

{
  "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.

入力スキーマ

{
  "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.

入力スキーマ

{
  "type": "object",
  "properties": {
    "spec_old": {
      "type": "object",
      "description": "Previous spec version"
    },
    "spec_new": {
      "type": "object",
      "description": "New spec version"
    }
  },
  "required": [
    "spec_old",
    "spec_new"
  ]
}

コミュニティ

このサーバーを評価する

エビデンス

最近の観測

検証済みバージョンは記録されていませんツール 5 件
検証済みバージョンは記録されていませんツール 5 件