Tools reference

list_endpoints, get_endpoint, lint_spec, diff_specs und contract_test: Eingaben, Ausgaben und Beispielantworten.

list_endpoints

Listet jeden Endpunkt im Katalog auf (method, path und summary), ohne Request-/Response-Details. Nutz es, um herauszufinden, was es gibt, bevor du get_endpoint aufrufst.

Optionaler filter-Parameter: ein Groß-/Kleinschreibung-unabhängiger Substring-Abgleich gegen path, summary oder tags.

text
GET /
POST /auth/register — Register
POST /auth/login — Login
GET /auth/profile — Get profile

get_endpoint

Gibt den vollständigen Text im Copy for AI-Format für einen Endpunkt zurück (Purpose, Request, Parameters, Validation, Success Response und Error Responses), anhand von method und path.

text
Endpoint: POST /auth/login

Purpose:
Login

Request:
{
  "email": "string",
  "password": "string"
}

Validation:
- email must be valid

Success Response (201):
{
  "success": "boolean",
  "data": { "access_token": "string", "user": { "id": "string", "role": "string" } }
}

Error Responses:
400 Bad Request

lint_spec

Prüft den geladenen Katalog auf Spec-Qualitätsprobleme: fehlende summary/description, fehlende tags, fehlende 4xx/5xx-Antworten, undokumentierte Response-Beschreibungen und doppelte Operation-IDs.

text
✖ POST /auth/login: [missing-description] no description declared
✖ POST /auth/login: [no-error-response] no 4xx/5xx response declared

diff_specs

Vergleicht den geladenen Katalog mit einer anderen Spec (angegeben als path für eine lokale Datei oder url) und meldet hinzugefügte/entfernte Endpunkte sowie breaking vs. informative Feldänderungen (neue Pflichtparameter, ein zur Pflicht gewordenes requestBody, ein entfernter Response-Code).

text
+ POST /users
- DELETE /users/{id}
! GET /users/{id}: parameter "id" (path) is now required

contract_test

Feuert eine echte Anfrage an jeden Endpunkt (oder eine gefilterte Teilmenge) eines bereits laufenden Servers, der aus der geladenen Spec gebaut wurde, und validiert jede Live-Antwort gegen ihr deklariertes Schema. Es ist ein Äquivalent zum Postman-Collection-Runner, ganz ohne Setup.

Nimmt baseUrl, eine optionale headers-Liste (wiederholbare „Name: value“-Strings, z. B. für Auth) und einen optionalen filter, um eine Teilmenge zu testen.

text
✓ GET /users (http://localhost:3000/users) — 200, matches schema
✖ POST /users (http://localhost:3000/users) — 201, 1 mismatch(es): body.email (required property missing)