{"version":"1.0.0","protocol":"WebMCP","browser_api":"document.modelContext","execution_context":"browser","page_url":"https:\/\/www.die-partei-reutlingen.de","documentation":"https:\/\/www.die-partei-reutlingen.de\/llms.txt","openapi":"https:\/\/www.die-partei-reutlingen.de\/api\/v1\/openapi.json","tools":[{"name":"beitraege_suchen","description":"Findet ver\u00f6ffentlichte Nachrichten der PARTEI Reutlingen mit Titel, Kurztext, Datum, Themen und Quellenlinks.","inputSchema":{"type":"object","properties":{"q":{"type":"string","maxLength":100,"description":"Suchtext; leer oder weggelassen liefert die neuesten Ergebnisse."},"jahr":{"type":"integer","minimum":2000,"maximum":2100,"description":"Ver\u00f6ffentlichungsjahr."},"thema":{"type":"string","maxLength":100,"description":"Exakter \u00f6ffentlicher Themenname, beispielsweise Gemeinderat."},"seite":{"type":"integer","minimum":1,"maximum":10000,"description":"Ergebnisseite ab 1; zehn Eintr\u00e4ge je Seite."}},"required":[],"additionalProperties":false},"outputSchema":{"$defs":{"TextContent":{"type":"object","properties":{"type":{"const":"text"},"text":{"type":"string"}},"required":["type","text"],"additionalProperties":false},"PostsResponse":{"type":"object","properties":{"data":{"type":"array","maxItems":10,"items":{"$ref":"#\/$defs\/PostSummary"}},"links":{"$ref":"#\/$defs\/PaginationLinks"},"meta":{"$ref":"#\/$defs\/PaginationMeta"},"view_url":{"type":"string","format":"uri"}},"required":["data","links","meta","view_url"],"additionalProperties":false},"PostSummary":{"type":"object","properties":{"type":{"const":"post"},"slug":{"type":"string"},"title":{"type":"string"},"excerpt":{"type":["string","null"]},"url":{"type":"string","format":"uri"},"published_at":{"type":["string","null"],"format":"date-time"},"topics":{"type":"array","items":{"type":"string"}},"event":{"$ref":"#\/$defs\/EventDetails"}},"required":["type","slug","title","excerpt","url","published_at","topics"],"additionalProperties":false},"EventDetails":{"type":"object","properties":{"starts_at":{"type":["string","null"],"format":"date-time"},"ends_at":{"type":["string","null"],"format":"date-time"},"timezone":{"const":"Europe\/Berlin"},"location":{"type":["string","null"]},"address":{"anyOf":[{"$ref":"#\/$defs\/Address"},{"type":"null"}]},"maps":{"type":"array","items":{"$ref":"#\/$defs\/MapLink"}}},"required":["starts_at","ends_at","timezone","location","address","maps"],"additionalProperties":false},"Address":{"type":"object","properties":{"street":{"type":["string","null"]},"postcode":{"type":["string","null"]},"city":{"type":["string","null"]},"country":{"type":["string","null"]}},"required":["street","postcode","city","country"],"additionalProperties":false},"MapLink":{"type":"object","properties":{"label":{"enum":["OpenStreetMap","Google Maps","Apple Karten"]},"url":{"type":"string","format":"uri"},"primary":{"type":"boolean"}},"required":["label","url","primary"],"additionalProperties":false},"PaginationLinks":{"type":"object","properties":{"first":{"type":"string","format":"uri"},"last":{"type":"string","format":"uri"},"prev":{"type":["string","null"],"format":"uri"},"next":{"type":["string","null"],"format":"uri"}},"required":["first","last","prev","next"],"additionalProperties":false},"PaginationMeta":{"type":"object","properties":{"current_page":{"type":"integer","minimum":1},"from":{"type":["integer","null"]},"last_page":{"type":"integer","minimum":1},"links":{"type":"array","items":{"$ref":"#\/$defs\/PaginationItem"}},"path":{"type":"string","format":"uri"},"per_page":{"const":10},"to":{"type":["integer","null"]},"total":{"type":"integer","minimum":0}},"required":["current_page","from","last_page","links","path","per_page","to","total"],"additionalProperties":false},"PaginationItem":{"type":"object","properties":{"url":{"type":["string","null"],"format":"uri"},"label":{"type":"string"},"page":{"type":["integer","null"]},"active":{"type":"boolean"}},"required":["url","label","active"],"additionalProperties":false},"ToolError":{"type":"object","properties":{"isError":{"const":true},"content":{"type":"array","minItems":1,"maxItems":1,"items":{"$ref":"#\/$defs\/TextContent"}}},"required":["isError","content"],"additionalProperties":false}},"type":"object","oneOf":[{"type":"object","required":["content","structuredContent"],"additionalProperties":false,"properties":{"content":{"type":"array","minItems":1,"maxItems":1,"items":{"$ref":"#\/$defs\/TextContent"}},"structuredContent":{"$ref":"#\/$defs\/PostsResponse"}}},{"$ref":"#\/$defs\/ToolError"}]},"annotations":{"readOnlyHint":true,"untrustedContentHint":true,"consequentialHint":false},"http":{"method":"GET","url":"https:\/\/www.die-partei-reutlingen.de\/api\/v1\/beitraege"}},{"name":"termine_suchen","description":"Findet \u00f6ffentliche Veranstaltungen der PARTEI Reutlingen mit Uhrzeit, Veranstaltungsort, Adresse und Quellenlink. Kommende Termine stehen chronologisch, vergangene umgekehrt chronologisch.","inputSchema":{"type":"object","properties":{"q":{"type":"string","maxLength":100,"description":"Suchtext im Titel, Text oder der Ortsangabe."},"vergangen":{"type":"boolean","description":"true f\u00fcr vergangene Veranstaltungen, sonst kommende und laufende Termine."},"seite":{"type":"integer","minimum":1,"maximum":10000,"description":"Ergebnisseite ab 1; zehn Eintr\u00e4ge je Seite."}},"required":[],"additionalProperties":false},"outputSchema":{"$defs":{"TextContent":{"type":"object","properties":{"type":{"const":"text"},"text":{"type":"string"}},"required":["type","text"],"additionalProperties":false},"EventsResponse":{"type":"object","properties":{"data":{"type":"array","maxItems":10,"items":{"$ref":"#\/$defs\/EventSummary"}},"links":{"$ref":"#\/$defs\/PaginationLinks"},"meta":{"$ref":"#\/$defs\/PaginationMeta"},"view_url":{"type":"string","format":"uri"}},"required":["data","links","meta","view_url"],"additionalProperties":false},"EventSummary":{"type":"object","properties":{"type":{"const":"event"},"slug":{"type":"string"},"title":{"type":"string"},"excerpt":{"type":["string","null"]},"url":{"type":"string","format":"uri"},"published_at":{"type":["string","null"],"format":"date-time"},"topics":{"type":"array","items":{"type":"string"}},"event":{"$ref":"#\/$defs\/EventDetails"}},"required":["type","slug","title","excerpt","url","published_at","topics","event"],"additionalProperties":false},"EventDetails":{"type":"object","properties":{"starts_at":{"type":["string","null"],"format":"date-time"},"ends_at":{"type":["string","null"],"format":"date-time"},"timezone":{"const":"Europe\/Berlin"},"location":{"type":["string","null"]},"address":{"anyOf":[{"$ref":"#\/$defs\/Address"},{"type":"null"}]},"maps":{"type":"array","items":{"$ref":"#\/$defs\/MapLink"}}},"required":["starts_at","ends_at","timezone","location","address","maps"],"additionalProperties":false},"Address":{"type":"object","properties":{"street":{"type":["string","null"]},"postcode":{"type":["string","null"]},"city":{"type":["string","null"]},"country":{"type":["string","null"]}},"required":["street","postcode","city","country"],"additionalProperties":false},"MapLink":{"type":"object","properties":{"label":{"enum":["OpenStreetMap","Google Maps","Apple Karten"]},"url":{"type":"string","format":"uri"},"primary":{"type":"boolean"}},"required":["label","url","primary"],"additionalProperties":false},"PaginationLinks":{"type":"object","properties":{"first":{"type":"string","format":"uri"},"last":{"type":"string","format":"uri"},"prev":{"type":["string","null"],"format":"uri"},"next":{"type":["string","null"],"format":"uri"}},"required":["first","last","prev","next"],"additionalProperties":false},"PaginationMeta":{"type":"object","properties":{"current_page":{"type":"integer","minimum":1},"from":{"type":["integer","null"]},"last_page":{"type":"integer","minimum":1},"links":{"type":"array","items":{"$ref":"#\/$defs\/PaginationItem"}},"path":{"type":"string","format":"uri"},"per_page":{"const":10},"to":{"type":["integer","null"]},"total":{"type":"integer","minimum":0}},"required":["current_page","from","last_page","links","path","per_page","to","total"],"additionalProperties":false},"PaginationItem":{"type":"object","properties":{"url":{"type":["string","null"],"format":"uri"},"label":{"type":"string"},"page":{"type":["integer","null"]},"active":{"type":"boolean"}},"required":["url","label","active"],"additionalProperties":false},"ToolError":{"type":"object","properties":{"isError":{"const":true},"content":{"type":"array","minItems":1,"maxItems":1,"items":{"$ref":"#\/$defs\/TextContent"}}},"required":["isError","content"],"additionalProperties":false}},"type":"object","oneOf":[{"type":"object","required":["content","structuredContent"],"additionalProperties":false,"properties":{"content":{"type":"array","minItems":1,"maxItems":1,"items":{"$ref":"#\/$defs\/TextContent"}},"structuredContent":{"$ref":"#\/$defs\/EventsResponse"}}},{"$ref":"#\/$defs\/ToolError"}]},"annotations":{"readOnlyHint":true,"untrustedContentHint":true,"consequentialHint":false},"http":{"method":"GET","url":"https:\/\/www.die-partei-reutlingen.de\/api\/v1\/termine"}},{"name":"inhalt_lesen","description":"Liest den vollst\u00e4ndigen ver\u00f6ffentlichten Inhalt eines Beitrags, einer Informationsseite oder Veranstaltung als Markdown. Liefert auch die kanonische Quellenadresse.","inputSchema":{"type":"object","properties":{"slug":{"type":"string","minLength":1,"maxLength":190,"pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$","description":"Letzter Pfadteil der kanonischen Inhaltsadresse, beispielsweise die-partei."}},"required":["slug"],"additionalProperties":false},"outputSchema":{"$defs":{"TextContent":{"type":"object","properties":{"type":{"const":"text"},"text":{"type":"string"}},"required":["type","text"],"additionalProperties":false},"ContentResponse":{"type":"object","properties":{"data":{"$ref":"#\/$defs\/ContentDetail"}},"required":["data"],"additionalProperties":false},"ContentDetail":{"type":"object","properties":{"type":{"enum":["post","page","event"]},"slug":{"type":"string"},"title":{"type":"string"},"excerpt":{"type":["string","null"]},"url":{"type":"string","format":"uri"},"published_at":{"type":["string","null"],"format":"date-time"},"topics":{"type":"array","items":{"type":"string"}},"event":{"$ref":"#\/$defs\/EventDetails"},"body_markdown":{"type":["string","null"]},"media":{"$ref":"#\/$defs\/Media"}},"required":["type","slug","title","excerpt","url","published_at","topics","body_markdown"],"additionalProperties":false},"EventDetails":{"type":"object","properties":{"starts_at":{"type":["string","null"],"format":"date-time"},"ends_at":{"type":["string","null"],"format":"date-time"},"timezone":{"const":"Europe\/Berlin"},"location":{"type":["string","null"]},"address":{"anyOf":[{"$ref":"#\/$defs\/Address"},{"type":"null"}]},"maps":{"type":"array","items":{"$ref":"#\/$defs\/MapLink"}}},"required":["starts_at","ends_at","timezone","location","address","maps"],"additionalProperties":false},"Address":{"type":"object","properties":{"street":{"type":["string","null"]},"postcode":{"type":["string","null"]},"city":{"type":["string","null"]},"country":{"type":["string","null"]}},"required":["street","postcode","city","country"],"additionalProperties":false},"MapLink":{"type":"object","properties":{"label":{"enum":["OpenStreetMap","Google Maps","Apple Karten"]},"url":{"type":"string","format":"uri"},"primary":{"type":"boolean"}},"required":["label","url","primary"],"additionalProperties":false},"Media":{"type":"object","properties":{"url":{"type":"string","format":"uri"},"alt":{"type":["string","null"]},"credit":{"type":["string","null"]}},"required":["url","alt","credit"],"additionalProperties":false},"ToolError":{"type":"object","properties":{"isError":{"const":true},"content":{"type":"array","minItems":1,"maxItems":1,"items":{"$ref":"#\/$defs\/TextContent"}}},"required":["isError","content"],"additionalProperties":false}},"type":"object","oneOf":[{"type":"object","required":["content","structuredContent"],"additionalProperties":false,"properties":{"content":{"type":"array","minItems":1,"maxItems":1,"items":{"$ref":"#\/$defs\/TextContent"}},"structuredContent":{"$ref":"#\/$defs\/ContentResponse"}}},{"$ref":"#\/$defs\/ToolError"}]},"annotations":{"readOnlyHint":true,"untrustedContentHint":true,"consequentialHint":false},"http":{"method":"GET","url":"https:\/\/www.die-partei-reutlingen.de\/api\/v1\/inhalte"}}]}