ikeytz – Schlüsseldienst Ludwigsburg
REMOTE · WWW.IKEYTZ.COM · 2 COMPONENTS · SCANNED SEP 24
Read/Link MCP tools for Schlüsseldienst Ludwigsburg ikeytz. Public read-only. No forms. ai-train=no.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security66
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation not fully verified: no authorisation is required to call this server, and 47 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe. See how to fix → View diagnostics → Unverified
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC is configured correctly; the domain's records validate against the full chain to the root. View diagnostics → Pass
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability67
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 10440 tokens (~222/item across 47 items; 47 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
- No destabilizing schema changes in the last 30 days.Pass
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 47 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 48 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
How do I install the ikeytz – Schlüsseldienst Ludwigsburg MCP server?
ikeytz – Schlüsseldienst Ludwigsburg is a hosted endpoint at https://www.ikeytz.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · www.ikeytz.com
claude mcp add --transport http com-ikeytz-website 'https://www.ikeytz.com/mcp'
{
"mcpServers": {
"com-ikeytz-website": {
"url": "https://www.ikeytz.com/mcp"
}
}
} {
"servers": {
"com-ikeytz-website": {
"type": "http",
"url": "https://www.ikeytz.com/mcp"
}
}
} [mcp_servers.com-ikeytz-website] url = "https://www.ikeytz.com/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"com-ikeytz-website": {
"type": "remote",
"url": "https://www.ikeytz.com/mcp",
"enabled": true
}
}
} openclaw mcp add com-ikeytz-website --url 'https://www.ikeytz.com/mcp' --transport streamable-http
mcp_servers:
com-ikeytz-website:
url: "https://www.ikeytz.com/mcp" {
"McpServers": {
"com-ikeytz-website": {
"Transport": "http",
"Url": "https://www.ikeytz.com/mcp"
}
}
} assistant mcp add com-ikeytz-website -t streamable-http -u 'https://www.ikeytz.com/mcp'
{
"mcpServers": {
"com-ikeytz-website": {
"type": "http",
"url": "https://www.ikeytz.com/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 24 Sept 26 0
- Stability: 0.97 → pass security
- The server rewrote its instructions, which are the text every model session reads security
- Tool “get_discovery” rewrote its description, which is the text the model reads security
- Tool “get_llms_mcp_server” rewrote its description, which is the text the model reads security
- New tool “get_llms_jsonld” functional
- New tool “get_llms_serp_txt” functional
- “get_discovery” reworded the description of “which” cosmetic
- 23 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.
- 22 Sept 26 0
- The server rewrote its instructions, which are the text every model session reads security
- Tool “get_discovery” rewrote its description, which is the text the model reads security
- Tool “get_geo_office” rewrote its description, which is the text the model reads security
- Tool “get_page_summary” rewrote its description, which is the text the model reads security
- Tool “get_sitemap_txt” rewrote its description, which is the text the model reads security
- Stability: fail → 0.93 functional
- “get_page_summary” added an optional parameter “locale” cosmetic
- “get_page_summary” added an optional parameter “path” cosmetic
- “get_ai_txt” reworded the description of “limit” cosmetic
- “get_discovery” reworded the description of “limit” cosmetic
- “get_llms_mcp_server” reworded the description of “limit” cosmetic
- “get_llms_mcp_web” reworded the description of “limit” cosmetic
- “get_llms_txt” reworded the description of “limit” cosmetic
- “get_sitemap_txt” reworded the description of “limit” cosmetic
- 20 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 82 to 85.
- 18 Sept 26 +1
- Stability: unverified → fail ▼ security
- Injection markers: unverified → pass ▲ security
- HSTS header: unverified → pass ▲ security
- Transport: fail → pass ▲ security
- Authorization: Authorisation not fully verified: no authorisation is required to call this server, and 45 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe. security
- Endpoint reachability: unreachable → reachable ▲ functional
- Tool coverage: unverified → 100 ▲ functional
- MCP protocol: unverified → pass ▲ functional
- 17 Sept 26 0
- Endpoint reachability: reachable → unreachable ▼ security
- Stability: fail → unverified ▼ security
- Tool safety: pass → unverified ▼ security
- HSTS header: pass → unverified ▼ security
- Transport: pass → fail ▼ security
- Authorization: Authorisation not yet verified: we couldn't confirm whether this endpoint requires it. security
- Capabilities: pass → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- 16 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 69 to 72.
- 14 Sept 26 +1
- Stability: unverified → fail ▼ security
- HSTS header: unverified → pass ▲ security
- Injection markers: unverified → pass ▲ security
- Transport: fail → pass ▲ security
- Authorization: Authorisation not fully verified: no authorisation is required to call this server, and 45 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe. security
- Endpoint reachability: unreachable → reachable ▲ functional
- Tool coverage: unverified → 100 ▲ functional
- MCP protocol: unverified → pass ▲ functional
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 24 Sept 2026 · Probed https://www.ikeytz.com/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_256_GCM_SHA384 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=ikeytz.com | CN=YE2,O=Let's Encrypt,C=US | 21 Sept 2026 | 20 Dec 2026 | ECDSA 256 | ECDSA-SHA384 | 6c4f3cb1c45db70822a79152a73950a4626 |
| SANs: ikeytz.com, www.ikeytz.com | ||||||
| CN=YE2,O=Let's Encrypt,C=US (CA) | CN=Root YE,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | ECDSA 384 | ECDSA-SHA384 | 4df3b15dd6c0784c507cd37b58e6f115 |
| CN=Root YE,O=ISRG,C=US (CA) | CN=ISRG Root X2,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | ECDSA-SHA384 | 872165fc34b6e5fba8add5b3705fb53a |
| CN=ISRG Root X2,O=Internet Security Research Group,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | SHA256-RSA | 6c8f1dc727c7117f7baf853ac980f9cd |
Background: What to check on a remote MCP endpoint →
DNSSEC secure
Validation of www.ikeytz.com. — Secure
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| ikeytz.com. | present | 2371 | 13 | Verified |
| www.ikeytz.com. | Verified address RRset verified with the apex keys |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=63072000; includeSubDomains; preload |
| content-security-policy | default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://challenges.cloudflare.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https:; font-src 'self' data:; connect-src 'self' https://challenges.cloudflare.com; frame-src https://challenges.cloudflare.com https://maps.ikeytz.com; frame-ancestors 'none'; base-uri 'self'; form-action 'self'; object-src 'none'; upgrade-insecure-requests |
| x-content-type-options | nosniff |
| x-frame-options | DENY |
| referrer-policy | same-origin |
| permissions-policy | camera=(), microphone=(), geolocation=() |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://www.ikeytz.com/mcp | Verified | 200 | |
| http (plaintext) | http://www.ikeytz.com/mcp | HTTPS enforced | 301 | https://www.ikeytz.com/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
get_partner_info Get Partner Info ~151
WHAT: Partner-werden info. formSubmit=false — agents MUST NOT claim they sent the form. RETURNS partnerEmail for a mailto. NEXT: compose_mailto or tell the user to open /partner-werden themselves.
| Name | Type | Req | Description |
|---|---|---|---|
| locale | string | – | HTML locale for canonicalUrl and path prefixes. de = default, URLs have no prefix (https://www.ikeytz.com/preise). en|fr|ru|fa|ar|tr = prefix /{locale}/ (https://www.ikeytz.com/en/preise). Omit or em… |
| Name | Type | Req | Description |
|---|---|---|---|
| attribution | string | yes | Required citation: 'Quelle: Schlüsseldienst Ludwigsburg ikeytz (ikeytz.com) · ai-train=no · https://www.ikeytz.com/.well-known/ai.txt' |
| canonicalUrl | string | – | Best URL to show the user: https://www.ikeytz.com… page, or tel:+49…, mailto:…, https://wa.me/…. Prefer this over constructing URLs. |
| error | string | – | Present when ok=false. Codes include: unknown_tool, unknown_place, unknown_auswahl, unknown_ratgeber, unknown_doc, unknown_discovery, faq_not_found, wissen_not_found, serp_not_found, q_required, bad_… |
| hint | string | – | Present when ok=false. Absolute URL the agent should open or pass to get_ai_page / get_discovery. |
| locale | string | – | Locale actually used for URLs (args.locale or de). |
| ok | boolean | yes | true = use summary, canonicalUrl, and extra keys. false = do not invent data; read error + hint and retry with valid args or open hint. |
| related | array | – | Always includes https://www.ikeytz.com/llms.txt. Geo tools also include https://maps.ikeytz.com/llms.txt. |
| summary | string | – | Primary text for the model. For discovery tools this is the file window (possibly thousands of characters). For list tools a compact one-liner. Quote with attribution. |
| tool | string | yes | Echo of the tool name that produced this object (e.g. get_service_area). |
No examples provided.
get_prices Get Prices ~286
WHAT: Official Festpreis matrix + composition SYSTEM. Read composition first: exactly 10 end-invoices + one 49 € add-on (not 12, not 17 customer invoices). 49 € is cylinder_mount after an opening — already inside 148/198/178/228; never add 49 again. 49 € is NOT night/weekend/holiday (those are 149/179/198/228/119). RETURNS composition{ruleDe,doNotConfuse[],factors[],routes[],endInvoices[] with contactOption,howTo[]}, opening[], packages[], surcharges[], note. USE to understand how to assemble a price. DOES NOT compute one customer total — that is get_invoice_line_items(situationKey, whenKey). Contact: compose_whatsapp/compose_mailto with contactOption. whenKey: get_ort_datetime. No VAT (§ 19).
| Name | Type | Req | Description |
|---|---|---|---|
| locale | string | – | HTML locale for canonicalUrl and path prefixes. de = default, URLs have no prefix (https://www.ikeytz.com/preise). en|fr|ru|fa|ar|tr = prefix /{locale}/ (https://www.ikeytz.com/en/preise). Omit or em… |
| Name | Type | Req | Description |
|---|---|---|---|
| attribution | string | yes | Required citation: 'Quelle: Schlüsseldienst Ludwigsburg ikeytz (ikeytz.com) · ai-train=no · https://www.ikeytz.com/.well-known/ai.txt' |
| canonicalUrl | string | – | Best URL to show the user: https://www.ikeytz.com… page, or tel:+49…, mailto:…, https://wa.me/…. Prefer this over constructing URLs. |
| composition | object | – | How to assemble: 10 end-invoices, factors, question routes, formulas. Required reading before quoting €. |
| cylinderAfterOpening | object | – | Cylinder price after an opening |
| cylinderOnly | object | – | Cylinder-only prices |
| error | string | – | Present when ok=false. Codes include: unknown_tool, unknown_place, unknown_auswahl, unknown_ratgeber, unknown_doc, unknown_discovery, faq_not_found, wissen_not_found, serp_not_found, q_required, bad_… |
| hint | string | – | Present when ok=false. Absolute URL the agent should open or pass to get_ai_page / get_discovery. |
| locale | string | – | Locale actually used for URLs (args.locale or de). |
| note | string | – | Legal/price note |
| ok | boolean | yes | true = use summary, canonicalUrl, and extra keys. false = do not invent data; read error + hint and retry with valid args or open hint. |
| opening | array | – | Door-opening price blocks |
| packages | array | – | Invoice packages (day/night) |
| related | array | – | Always includes https://www.ikeytz.com/llms.txt. Geo tools also include https://maps.ikeytz.com/llms.txt. |
| summary | string | – | Primary text for the model. For discovery tools this is the file window (possibly thousands of characters). For list tools a compact one-liner. Quote with attribution. |
| surcharges | array | – | Surcharge rows |
| tool | string | yes | Echo of the tool name that produced this object (e.g. get_service_area). |
No examples provided.
get_ratgeber Get Ratgeber ~165
WHAT: Pointer to one Ratgeber. REQUIRED slug from list_ratgeber. Unknown → unknown_ratgeber. NEXT: get_ai_page({path:'/ratgeber/'+slug}).
| Name | Type | Req | Description |
|---|---|---|---|
| locale | string | – | HTML locale for canonicalUrl and path prefixes. de = default, URLs have no prefix (https://www.ikeytz.com/preise). en|fr|ru|fa|ar|tr = prefix /{locale}/ (https://www.ikeytz.com/en/preise). Omit or em… |
| slug | string | yes | Required. Exact Ratgeber slug from list_ratgeber.slugs (ASCII hyphenated). |
| Name | Type | Req | Description |
|---|---|---|---|
| attribution | string | yes | Required citation: 'Quelle: Schlüsseldienst Ludwigsburg ikeytz (ikeytz.com) · ai-train=no · https://www.ikeytz.com/.well-known/ai.txt' |
| canonicalUrl | string | – | Best URL to show the user: https://www.ikeytz.com… page, or tel:+49…, mailto:…, https://wa.me/…. Prefer this over constructing URLs. |
| error | string | – | Present when ok=false. Codes include: unknown_tool, unknown_place, unknown_auswahl, unknown_ratgeber, unknown_doc, unknown_discovery, faq_not_found, wissen_not_found, serp_not_found, q_required, bad_… |
| hint | string | – | Present when ok=false. Absolute URL the agent should open or pass to get_ai_page / get_discovery. |
| locale | string | – | Locale actually used for URLs (args.locale or de). |
| ok | boolean | yes | true = use summary, canonicalUrl, and extra keys. false = do not invent data; read error + hint and retry with valid args or open hint. |
| related | array | – | Always includes https://www.ikeytz.com/llms.txt. Geo tools also include https://maps.ikeytz.com/llms.txt. |
| slug | string | – | Resolved Ratgeber slug |
| summary | string | – | Primary text for the model. For discovery tools this is the file window (possibly thousands of characters). For list tools a compact one-liner. Quote with attribution. |
| tool | string | yes | Echo of the tool name that produced this object (e.g. get_service_area). |
No examples provided.
get_review_url Get Review Url ~157
WHAT: Short /review redirect to the Google review URL. RETURNS googleReviewUrl (full Google) and canonicalUrl = https://www.ikeytz.com/review. USE when the user wants to leave a review. Not a list of existing ratings.
| Name | Type | Req | Description |
|---|---|---|---|
| locale | string | – | HTML locale for canonicalUrl and path prefixes. de = default, URLs have no prefix (https://www.ikeytz.com/preise). en|fr|ru|fa|ar|tr = prefix /{locale}/ (https://www.ikeytz.com/en/preise). Omit or em… |
| Name | Type | Req | Description |
|---|---|---|---|
| attribution | string | yes | Required citation: 'Quelle: Schlüsseldienst Ludwigsburg ikeytz (ikeytz.com) · ai-train=no · https://www.ikeytz.com/.well-known/ai.txt' |
| canonicalUrl | string | – | Best URL to show the user: https://www.ikeytz.com… page, or tel:+49…, mailto:…, https://wa.me/…. Prefer this over constructing URLs. |
| error | string | – | Present when ok=false. Codes include: unknown_tool, unknown_place, unknown_auswahl, unknown_ratgeber, unknown_doc, unknown_discovery, faq_not_found, wissen_not_found, serp_not_found, q_required, bad_… |
| googleReviewUrl | string | – | Full Google review URL |
| hint | string | – | Present when ok=false. Absolute URL the agent should open or pass to get_ai_page / get_discovery. |
| locale | string | – | Locale actually used for URLs (args.locale or de). |
| ok | boolean | yes | true = use summary, canonicalUrl, and extra keys. false = do not invent data; read error + hint and retry with valid args or open hint. |
| related | array | – | Always includes https://www.ikeytz.com/llms.txt. Geo tools also include https://maps.ikeytz.com/llms.txt. |
| summary | string | – | Primary text for the model. For discovery tools this is the file window (possibly thousands of characters). For list tools a compact one-liner. Quote with attribution. |
| tool | string | yes | Echo of the tool name that produced this object (e.g. get_service_area). |
No examples provided.
get_serp_snippet Get Serp Snippet ~233
WHAT: Slice of /llms-serp.txt around the first occurrence of the target URL (title/description/URL rows). path or url required in practice. If path is not http(s), it is turned into www(locale, path). No match → serp_not_found. RETURNS matchContext (~200 chars before + 400 after). Not a Google API.
| Name | Type | Req | Description |
|---|---|---|---|
| locale | string | – | HTML locale for canonicalUrl and path prefixes. de = default, URLs have no prefix (https://www.ikeytz.com/preise). en|fr|ru|fa|ar|tr = prefix /{locale}/ (https://www.ikeytz.com/en/preise). Omit or em… |
| path | string | – | Site path (/preise) or used with locale to build the www URL to find in llms-serp.txt. |
| url | string | – | If this starts with http, it is used as the search needle instead of path. |
| Name | Type | Req | Description |
|---|---|---|---|
| attribution | string | yes | Required citation: 'Quelle: Schlüsseldienst Ludwigsburg ikeytz (ikeytz.com) · ai-train=no · https://www.ikeytz.com/.well-known/ai.txt' |
| canonicalUrl | string | – | Best URL to show the user: https://www.ikeytz.com… page, or tel:+49…, mailto:…, https://wa.me/…. Prefer this over constructing URLs. |
| error | string | – | Present when ok=false. Codes include: unknown_tool, unknown_place, unknown_auswahl, unknown_ratgeber, unknown_doc, unknown_discovery, faq_not_found, wissen_not_found, serp_not_found, q_required, bad_… |
| hint | string | – | Present when ok=false. Absolute URL the agent should open or pass to get_ai_page / get_discovery. |
| locale | string | – | Locale actually used for URLs (args.locale or de). |
| matchContext | string | – | Surrounding SERP lines |
| ok | boolean | yes | true = use summary, canonicalUrl, and extra keys. false = do not invent data; read error + hint and retry with valid args or open hint. |
| related | array | – | Always includes https://www.ikeytz.com/llms.txt. Geo tools also include https://maps.ikeytz.com/llms.txt. |
| summary | string | – | Primary text for the model. For discovery tools this is the file window (possibly thousands of characters). For list tools a compact one-liner. Quote with attribution. |
| tool | string | yes | Echo of the tool name that produced this object (e.g. get_service_area). |
No examples provided.
get_service_area Get Service Area ~365
WHAT: One service-area place. Lookup order: slug (exact getOrt), else first ORTE with plz === args.plz, else first name substring (lowercase). No silent Pattonville fallback — unknown → ok=false error=unknown_place hint=/einsatzgebiet. RETURNS that place's own lat/lng (52 unique pairs), google_maps, icbm, embed_map, geo_api, maps_mcp, kind, parent. USE when the user names a town or PLZ. NOT verify_zip_code / verify_coordinates (those names do not exist). maps MCP is a second machine. NEXT: get_ai_page path=/schluesseldienst-ludwigsburg-{slug}.
| Name | Type | Req | Description |
|---|---|---|---|
| locale | string | – | HTML locale for canonicalUrl and path prefixes. de = default, URLs have no prefix (https://www.ikeytz.com/preise). en|fr|ru|fa|ar|tr = prefix /{locale}/ (https://www.ikeytz.com/en/preise). Omit or em… |
| name | string | – | German name substring, case-insensitive (e.g. 'Vaihingen'). First includes() match. Prefer slug. |
| plz | string | – | 5-digit German PLZ. First matching place wins (71638 → pattonville). Use slug if you already know it. |
| slug | string | – | Preferred. Exact orte slug: pattonville, asperg, bietigheim-bissingen, kornwestheim, … (52). Not 'ludwigsburg' as a catch-all unless that slug exists. |
| Name | Type | Req | Description |
|---|---|---|---|
| attribution | string | yes | Required citation: 'Quelle: Schlüsseldienst Ludwigsburg ikeytz (ikeytz.com) · ai-train=no · https://www.ikeytz.com/.well-known/ai.txt' |
| canonicalUrl | string | – | Best URL to show the user: https://www.ikeytz.com… page, or tel:+49…, mailto:…, https://wa.me/…. Prefer this over constructing URLs. |
| embed_map | string | – | iframe/src and maps page: https://maps.ikeytz.com/{slug} (German host, no /en/). |
| error | string | – | Present when ok=false. Codes include: unknown_tool, unknown_place, unknown_auswahl, unknown_ratgeber, unknown_doc, unknown_discovery, faq_not_found, wissen_not_found, serp_not_found, q_required, bad_… |
| geo_api | string | – | https://maps.ikeytz.com/api/v1/embed/ort/{slug} JSON for the embed. |
| google_maps | string | – | Paste-ready 'lat, lng' for Google Maps search (same digits as lat/lng). |
| hint | string | – | Present when ok=false. Absolute URL the agent should open or pass to get_ai_page / get_discovery. |
| icbm | string | – | ICBM 'lat, lng' string (same as google_maps). |
| kind | string | – | Place kind from orte SSOT (stadtteil / gemeinde / …). |
| lat | number | – | WGS84 latitude of THIS place or the office. Unique per slug — never a silent Pattonville fallback. Example Pattonville ≈ 48.863. |
| lng | number | – | WGS84 longitude of THIS place or the office. Example Pattonville ≈ 9.185. |
| locale | string | – | Locale actually used for URLs (args.locale or de). |
| maps_mcp | string | – | maps machine MCP endpoint. www /mcp does not proxy this. |
| name | string | – | German place name as on the website. |
| ok | boolean | yes | true = use summary, canonicalUrl, and extra keys. false = do not invent data; read error + hint and retry with valid args or open hint. |
| parent | string | – | Parent place name when this is a district; else empty/omit. |
| plz | string | – | German postcode. First match wins if several places share a PLZ (e.g. 71638 → pattonville). |
| related | array | – | Always includes https://www.ikeytz.com/llms.txt. Geo tools also include https://maps.ikeytz.com/llms.txt. |
| slug | string | – | URL slug of a service-area place, e.g. pattonville, bietigheim-bissingen, walheim. Matches maps.ikeytz.com/{slug} and www /schluesseldienst-ludwigsburg-{slug}. |
| summary | string | – | Primary text for the model. For discovery tools this is the file window (possibly thousands of characters). For list tools a compact one-liner. Quote with attribution. |
| tool | string | yes | Echo of the tool name that produced this object (e.g. get_service_area). |
| url | string | – | www keyword page https://www.ikeytz.com[/locale]/schluesseldienst-ludwigsburg-{slug} |
No examples provided.
get_sitemap_txt Get Sitemap Txt ~280
WHAT: Fetch /sitemap.txt (same URL set as sitemap.xml). ~9076 http-URLs (Stand 2026-09-22): marketing ×7 + discovery/media. Contains 0× maps.ikeytz.com (intentional). summary = line window + trailing # MCP-META (totalUrls, nextOffset, truncated). Use offset/limit + nextOffset to page; omit limit for the full list. Dedicated maps list is on maps.ikeytz.com, not here.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | number | – | Maximum number of lines to return after offset. Omit or null = return every remaining line in the loaded file. Clamped to 1..10000. For sitemap.txt (~9076 http-URLs, Stand 2026-09-22) omit limit to g… |
| offset | number | – | 0-based line index into the fetched UTF-8 file (split on \n). 0 = first line. Omit = 0. Combined with limit = a sliding window. Use nextOffset from the previous result to page. Does not count bytes;… |
| Name | Type | Req | Description |
|---|---|---|---|
| attribution | string | yes | Required citation: 'Quelle: Schlüsseldienst Ludwigsburg ikeytz (ikeytz.com) · ai-train=no · https://www.ikeytz.com/.well-known/ai.txt' |
| bytesReturned | number | – | UTF-8 byte length of the returned body window (before # MCP-META). |
| canonicalUrl | string | – | Best URL to show the user: https://www.ikeytz.com… page, or tel:+49…, mailto:…, https://wa.me/…. Prefer this over constructing URLs. |
| error | string | – | Present when ok=false. Codes include: unknown_tool, unknown_place, unknown_auswahl, unknown_ratgeber, unknown_doc, unknown_discovery, faq_not_found, wissen_not_found, serp_not_found, q_required, bad_… |
| fetchTruncated | boolean | – | true if a byte cap cut the load (line-boundary safe). Rare for sitemap.txt (reads public/). |
| hint | string | – | Present when ok=false. Absolute URL the agent should open or pass to get_ai_page / get_discovery. |
| limit | number|null | – | Applied line limit, or null if the caller omitted limit. |
| locale | string | – | Locale actually used for URLs (args.locale or de). |
| nextOffset | number|null | – | offset + returnedLines when more lines remain in the loaded file; else null. Pass as the next offset. Also in # MCP-META. |
| offset | number | – | Applied 0-based line offset. |
| ok | boolean | yes | true = use summary, canonicalUrl, and extra keys. false = do not invent data; read error + hint and retry with valid args or open hint. |
| path | string | – | Public path on www, e.g. /llms.txt or /.well-known/ai.txt |
| related | array | – | Always includes https://www.ikeytz.com/llms.txt. Geo tools also include https://maps.ikeytz.com/llms.txt. |
| returnedLines | number | – | How many lines are in summary/body this call (before # MCP-META). |
| returnedUrls | number | – | Lines in this window that start with http(s):// |
| summary | string | – | Primary text for the model. For discovery tools this is the file window (possibly thousands of characters). For list tools a compact one-liner. Quote with attribution. |
| tool | string | yes | Echo of the tool name that produced this object (e.g. get_service_area). |
| totalLines | number | – | Line count of the loaded file (full public/ file when available). |
| totalUrls | number | – | http(s) lines in the loaded file (full count when public/ read succeeds). |
| truncated | boolean | – | true if load hit a byte cap OR offset+limit left more lines. Also mirrored in trailing # MCP-META lines in summary. |
| which | string | – | Resolved discovery id after alias fold (llms, sitemap-txt, ard, ai-catalog, …). |
No examples provided.
get_wissen_entry Get Wissen Entry ~181
WHAT: One Wissen article. REQUIRED id. summary includes title + first 500 chars of body. structuredContent has id+title (not full body). Unknown id → wissen_not_found. NEXT: get_ai_page({path:'/wissen'}) or canonicalUrl #id.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Required. Exact Wissen article id from list_wissen.items[].id. |
| locale | string | – | HTML locale for canonicalUrl and path prefixes. de = default, URLs have no prefix (https://www.ikeytz.com/preise). en|fr|ru|fa|ar|tr = prefix /{locale}/ (https://www.ikeytz.com/en/preise). Omit or em… |
| Name | Type | Req | Description |
|---|---|---|---|
| attribution | string | yes | Required citation: 'Quelle: Schlüsseldienst Ludwigsburg ikeytz (ikeytz.com) · ai-train=no · https://www.ikeytz.com/.well-known/ai.txt' |
| canonicalUrl | string | – | Best URL to show the user: https://www.ikeytz.com… page, or tel:+49…, mailto:…, https://wa.me/…. Prefer this over constructing URLs. |
| error | string | – | Present when ok=false. Codes include: unknown_tool, unknown_place, unknown_auswahl, unknown_ratgeber, unknown_doc, unknown_discovery, faq_not_found, wissen_not_found, serp_not_found, q_required, bad_… |
| hint | string | – | Present when ok=false. Absolute URL the agent should open or pass to get_ai_page / get_discovery. |
| id | string | – | Article id |
| locale | string | – | Locale actually used for URLs (args.locale or de). |
| ok | boolean | yes | true = use summary, canonicalUrl, and extra keys. false = do not invent data; read error + hint and retry with valid args or open hint. |
| related | array | – | Always includes https://www.ikeytz.com/llms.txt. Geo tools also include https://maps.ikeytz.com/llms.txt. |
| summary | string | – | Primary text for the model. For discovery tools this is the file window (possibly thousands of characters). For list tools a compact one-liner. Quote with attribution. |
| title | string | – | Article title |
| tool | string | yes | Echo of the tool name that produced this object (e.g. get_service_area). |
No examples provided.
list_auswahl List Auswahl ~166
WHAT: Auswahl hub groups (situation chooser on /auswahl). RETURNS groups[] {id, hash, hubUrl, slugs[], urls[]}. USE to discover valid slugs for get_auswahl_item. Unknown slug → get_auswahl_item ok=false unknown_auswahl.
| Name | Type | Req | Description |
|---|---|---|---|
| locale | string | – | HTML locale for canonicalUrl and path prefixes. de = default, URLs have no prefix (https://www.ikeytz.com/preise). en|fr|ru|fa|ar|tr = prefix /{locale}/ (https://www.ikeytz.com/en/preise). Omit or em… |
| Name | Type | Req | Description |
|---|---|---|---|
| attribution | string | yes | Required citation: 'Quelle: Schlüsseldienst Ludwigsburg ikeytz (ikeytz.com) · ai-train=no · https://www.ikeytz.com/.well-known/ai.txt' |
| canonicalUrl | string | – | Best URL to show the user: https://www.ikeytz.com… page, or tel:+49…, mailto:…, https://wa.me/…. Prefer this over constructing URLs. |
| error | string | – | Present when ok=false. Codes include: unknown_tool, unknown_place, unknown_auswahl, unknown_ratgeber, unknown_doc, unknown_discovery, faq_not_found, wissen_not_found, serp_not_found, q_required, bad_… |
| groups | array | – | Auswahl groups with slugs and URLs |
| hint | string | – | Present when ok=false. Absolute URL the agent should open or pass to get_ai_page / get_discovery. |
| locale | string | – | Locale actually used for URLs (args.locale or de). |
| ok | boolean | yes | true = use summary, canonicalUrl, and extra keys. false = do not invent data; read error + hint and retry with valid args or open hint. |
| related | array | – | Always includes https://www.ikeytz.com/llms.txt. Geo tools also include https://maps.ikeytz.com/llms.txt. |
| summary | string | – | Primary text for the model. For discovery tools this is the file window (possibly thousands of characters). For list tools a compact one-liner. Quote with attribution. |
| tool | string | yes | Echo of the tool name that produced this object (e.g. get_service_area). |
No examples provided.
list_faq List Faq ~171
WHAT: FAQ question list (id + question, no answers). Policy/text only — euro in answers are SSOT tokens, not a live invoice. For a customer total: get_prices.composition → get_ort_datetime → get_invoice_line_items. USE get_faq({id}) or get_faq({q}).
| Name | Type | Req | Description |
|---|---|---|---|
| locale | string | – | HTML locale for canonicalUrl and path prefixes. de = default, URLs have no prefix (https://www.ikeytz.com/preise). en|fr|ru|fa|ar|tr = prefix /{locale}/ (https://www.ikeytz.com/en/preise). Omit or em… |
| Name | Type | Req | Description |
|---|---|---|---|
| attribution | string | yes | Required citation: 'Quelle: Schlüsseldienst Ludwigsburg ikeytz (ikeytz.com) · ai-train=no · https://www.ikeytz.com/.well-known/ai.txt' |
| canonicalUrl | string | – | Best URL to show the user: https://www.ikeytz.com… page, or tel:+49…, mailto:…, https://wa.me/…. Prefer this over constructing URLs. |
| error | string | – | Present when ok=false. Codes include: unknown_tool, unknown_place, unknown_auswahl, unknown_ratgeber, unknown_doc, unknown_discovery, faq_not_found, wissen_not_found, serp_not_found, q_required, bad_… |
| hint | string | – | Present when ok=false. Absolute URL the agent should open or pass to get_ai_page / get_discovery. |
| items | array | – | FAQ ids and questions |
| locale | string | – | Locale actually used for URLs (args.locale or de). |
| ok | boolean | yes | true = use summary, canonicalUrl, and extra keys. false = do not invent data; read error + hint and retry with valid args or open hint. |
| related | array | – | Always includes https://www.ikeytz.com/llms.txt. Geo tools also include https://maps.ikeytz.com/llms.txt. |
| summary | string | – | Primary text for the model. For discovery tools this is the file window (possibly thousands of characters). For list tools a compact one-liner. Quote with attribution. |
| tool | string | yes | Echo of the tool name that produced this object (e.g. get_service_area). |
No examples provided.
list_footer List Footer ~192
WHAT: Curated internal footer paths including legal + /it + /mcp-hub + /angebot + /ankuendigungen. RETURNS items[] {path,url}. Not a pixel-perfect HTML scrape; external directory URLs live on get_links / MCP_PUBLIC_LINKS via get_mcp_hub. USE to discover legal slugs before get_legal. NEXT: get_legal(doc), get_it, get_mcp_hub.
| Name | Type | Req | Description |
|---|---|---|---|
| locale | string | – | HTML locale for canonicalUrl and path prefixes. de = default, URLs have no prefix (https://www.ikeytz.com/preise). en|fr|ru|fa|ar|tr = prefix /{locale}/ (https://www.ikeytz.com/en/preise). Omit or em… |
| Name | Type | Req | Description |
|---|---|---|---|
| attribution | string | yes | Required citation: 'Quelle: Schlüsseldienst Ludwigsburg ikeytz (ikeytz.com) · ai-train=no · https://www.ikeytz.com/.well-known/ai.txt' |
| canonicalUrl | string | – | Best URL to show the user: https://www.ikeytz.com… page, or tel:+49…, mailto:…, https://wa.me/…. Prefer this over constructing URLs. |
| error | string | – | Present when ok=false. Codes include: unknown_tool, unknown_place, unknown_auswahl, unknown_ratgeber, unknown_doc, unknown_discovery, faq_not_found, wissen_not_found, serp_not_found, q_required, bad_… |
| hint | string | – | Present when ok=false. Absolute URL the agent should open or pass to get_ai_page / get_discovery. |
| items | array | – | Internal footer paths |
| locale | string | – | Locale actually used for URLs (args.locale or de). |
| ok | boolean | yes | true = use summary, canonicalUrl, and extra keys. false = do not invent data; read error + hint and retry with valid args or open hint. |
| related | array | – | Always includes https://www.ikeytz.com/llms.txt. Geo tools also include https://maps.ikeytz.com/llms.txt. |
| summary | string | – | Primary text for the model. For discovery tools this is the file window (possibly thousands of characters). For list tools a compact one-liner. Quote with attribution. |
| tool | string | yes | Echo of the tool name that produced this object (e.g. get_service_area). |
No examples provided.
list_locales List Locales ~95
WHAT: The seven public HTML locales. RETURNS locales[] {id, name, prefix}. prefix is '' for de and '/en' '/fr' '/ru' '/fa' '/ar' '/tr' for others. Host is always www.ikeytz.com (apex redirects). maps.ikeytz.com has NO locales (/en/pattonville = 404). USE before resolve_locale_url. Call with {}.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| attribution | string | yes | Required citation: 'Quelle: Schlüsseldienst Ludwigsburg ikeytz (ikeytz.com) · ai-train=no · https://www.ikeytz.com/.well-known/ai.txt' |
| canonicalUrl | string | – | Best URL to show the user: https://www.ikeytz.com… page, or tel:+49…, mailto:…, https://wa.me/…. Prefer this over constructing URLs. |
| error | string | – | Present when ok=false. Codes include: unknown_tool, unknown_place, unknown_auswahl, unknown_ratgeber, unknown_doc, unknown_discovery, faq_not_found, wissen_not_found, serp_not_found, q_required, bad_… |
| hint | string | – | Present when ok=false. Absolute URL the agent should open or pass to get_ai_page / get_discovery. |
| locale | string | – | Locale actually used for URLs (args.locale or de). |
| locales | array | – | Seven locales with URL prefix |
| ok | boolean | yes | true = use summary, canonicalUrl, and extra keys. false = do not invent data; read error + hint and retry with valid args or open hint. |
| related | array | – | Always includes https://www.ikeytz.com/llms.txt. Geo tools also include https://maps.ikeytz.com/llms.txt. |
| summary | string | – | Primary text for the model. For discovery tools this is the file window (possibly thousands of characters). For list tools a compact one-liner. Quote with attribution. |
| tool | string | yes | Echo of the tool name that produced this object (e.g. get_service_area). |
No examples provided.
list_nav List Nav ~212
WHAT: Curated main-header hubs (not a 1:1 dump of every <a> in the header). RETURNS items[]: Start, Notfall, Leistungen, Auswahl, Preise, Einsatzgebiet, Wissen, Ratgeber, FAQ, Kontakt — each path + locale URL + label. DOES NOT include /it, /mcp-hub, /links, locale switcher, or DevSecOps. USE to pick a hub URL. NEXT: get_ai_page(path) or get_page_summary(path) for body text.
| Name | Type | Req | Description |
|---|---|---|---|
| locale | string | – | HTML locale for canonicalUrl and path prefixes. de = default, URLs have no prefix (https://www.ikeytz.com/preise). en|fr|ru|fa|ar|tr = prefix /{locale}/ (https://www.ikeytz.com/en/preise). Omit or em… |
| Name | Type | Req | Description |
|---|---|---|---|
| attribution | string | yes | Required citation: 'Quelle: Schlüsseldienst Ludwigsburg ikeytz (ikeytz.com) · ai-train=no · https://www.ikeytz.com/.well-known/ai.txt' |
| canonicalUrl | string | – | Best URL to show the user: https://www.ikeytz.com… page, or tel:+49…, mailto:…, https://wa.me/…. Prefer this over constructing URLs. |
| error | string | – | Present when ok=false. Codes include: unknown_tool, unknown_place, unknown_auswahl, unknown_ratgeber, unknown_doc, unknown_discovery, faq_not_found, wissen_not_found, serp_not_found, q_required, bad_… |
| hint | string | – | Present when ok=false. Absolute URL the agent should open or pass to get_ai_page / get_discovery. |
| items | array | – | Header hub links |
| locale | string | – | Locale actually used for URLs (args.locale or de). |
| ok | boolean | yes | true = use summary, canonicalUrl, and extra keys. false = do not invent data; read error + hint and retry with valid args or open hint. |
| related | array | – | Always includes https://www.ikeytz.com/llms.txt. Geo tools also include https://maps.ikeytz.com/llms.txt. |
| summary | string | – | Primary text for the model. For discovery tools this is the file window (possibly thousands of characters). For list tools a compact one-liner. Quote with attribution. |
| tool | string | yes | Echo of the tool name that produced this object (e.g. get_service_area). |
No examples provided.
list_ratgeber List Ratgeber ~137
WHAT: All Ratgeber slugs and locale URLs /ratgeber/{slug}. USE get_ratgeber({slug}) then get_ai_page for fulltext.
| Name | Type | Req | Description |
|---|---|---|---|
| locale | string | – | HTML locale for canonicalUrl and path prefixes. de = default, URLs have no prefix (https://www.ikeytz.com/preise). en|fr|ru|fa|ar|tr = prefix /{locale}/ (https://www.ikeytz.com/en/preise). Omit or em… |
| Name | Type | Req | Description |
|---|---|---|---|
| attribution | string | yes | Required citation: 'Quelle: Schlüsseldienst Ludwigsburg ikeytz (ikeytz.com) · ai-train=no · https://www.ikeytz.com/.well-known/ai.txt' |
| canonicalUrl | string | – | Best URL to show the user: https://www.ikeytz.com… page, or tel:+49…, mailto:…, https://wa.me/…. Prefer this over constructing URLs. |
| error | string | – | Present when ok=false. Codes include: unknown_tool, unknown_place, unknown_auswahl, unknown_ratgeber, unknown_doc, unknown_discovery, faq_not_found, wissen_not_found, serp_not_found, q_required, bad_… |
| hint | string | – | Present when ok=false. Absolute URL the agent should open or pass to get_ai_page / get_discovery. |
| locale | string | – | Locale actually used for URLs (args.locale or de). |
| ok | boolean | yes | true = use summary, canonicalUrl, and extra keys. false = do not invent data; read error + hint and retry with valid args or open hint. |
| related | array | – | Always includes https://www.ikeytz.com/llms.txt. Geo tools also include https://maps.ikeytz.com/llms.txt. |
| slugs | array | – | Ratgeber slugs |
| summary | string | – | Primary text for the model. For discovery tools this is the file window (possibly thousands of characters). For list tools a compact one-liner. Quote with attribution. |
| tool | string | yes | Echo of the tool name that produced this object (e.g. get_service_area). |
| urls | array | – | Locale Ratgeber URLs |
No examples provided.
list_service_areas List Service Areas ~237
WHAT: All 52 service-area places (orte SSOT). Each item: slug, name, plz, lat, lng, google_maps, icbm, kind, parent, url (www keyword page), embed_map (https://maps.ikeytz.com/{slug}), geo_api, maps_mcp. related includes maps llms.txt. count=52. USE to pick a slug before get_service_area. DOES NOT verify GPS live. www sitemap contains 0× maps.ikeytz.com. iframe on HTML is DE Ortsseiten only. NEXT: get_service_area({slug}) or maps MCP find_by_geo (not this server).
| Name | Type | Req | Description |
|---|---|---|---|
| locale | string | – | HTML locale for canonicalUrl and path prefixes. de = default, URLs have no prefix (https://www.ikeytz.com/preise). en|fr|ru|fa|ar|tr = prefix /{locale}/ (https://www.ikeytz.com/en/preise). Omit or em… |
| Name | Type | Req | Description |
|---|---|---|---|
| attribution | string | yes | Required citation: 'Quelle: Schlüsseldienst Ludwigsburg ikeytz (ikeytz.com) · ai-train=no · https://www.ikeytz.com/.well-known/ai.txt' |
| canonicalUrl | string | – | Best URL to show the user: https://www.ikeytz.com… page, or tel:+49…, mailto:…, https://wa.me/…. Prefer this over constructing URLs. |
| count | number | – | Always 52 when ok. |
| error | string | – | Present when ok=false. Codes include: unknown_tool, unknown_place, unknown_auswahl, unknown_ratgeber, unknown_doc, unknown_discovery, faq_not_found, wissen_not_found, serp_not_found, q_required, bad_… |
| hint | string | – | Present when ok=false. Absolute URL the agent should open or pass to get_ai_page / get_discovery. |
| items | array | – | One object per place; fields = PLACE geo + maps URLs. |
| locale | string | – | Locale actually used for URLs (args.locale or de). |
| ok | boolean | yes | true = use summary, canonicalUrl, and extra keys. false = do not invent data; read error + hint and retry with valid args or open hint. |
| related | array | – | Always includes https://www.ikeytz.com/llms.txt. Geo tools also include https://maps.ikeytz.com/llms.txt. |
| summary | string | – | Primary text for the model. For discovery tools this is the file window (possibly thousands of characters). For list tools a compact one-liner. Quote with attribution. |
| tool | string | yes | Echo of the tool name that produced this object (e.g. get_service_area). |
No examples provided.
list_services List Services ~171
WHAT: Core service list from SITE.services (Türöffnung, Notdienst, Sicherheitstechnik, Schlosswechsel, …) with locale /leistungen#anchor URLs. USE as a menu. For situations (zugefallen, Schlüssel weg) use list_auswahl / get_auswahl_item. For euro amounts use get_prices.
| Name | Type | Req | Description |
|---|---|---|---|
| locale | string | – | HTML locale for canonicalUrl and path prefixes. de = default, URLs have no prefix (https://www.ikeytz.com/preise). en|fr|ru|fa|ar|tr = prefix /{locale}/ (https://www.ikeytz.com/en/preise). Omit or em… |
| Name | Type | Req | Description |
|---|---|---|---|
| attribution | string | yes | Required citation: 'Quelle: Schlüsseldienst Ludwigsburg ikeytz (ikeytz.com) · ai-train=no · https://www.ikeytz.com/.well-known/ai.txt' |
| canonicalUrl | string | – | Best URL to show the user: https://www.ikeytz.com… page, or tel:+49…, mailto:…, https://wa.me/…. Prefer this over constructing URLs. |
| error | string | – | Present when ok=false. Codes include: unknown_tool, unknown_place, unknown_auswahl, unknown_ratgeber, unknown_doc, unknown_discovery, faq_not_found, wissen_not_found, serp_not_found, q_required, bad_… |
| hint | string | – | Present when ok=false. Absolute URL the agent should open or pass to get_ai_page / get_discovery. |
| locale | string | – | Locale actually used for URLs (args.locale or de). |
| ok | boolean | yes | true = use summary, canonicalUrl, and extra keys. false = do not invent data; read error + hint and retry with valid args or open hint. |
| related | array | – | Always includes https://www.ikeytz.com/llms.txt. Geo tools also include https://maps.ikeytz.com/llms.txt. |
| services | array | – | Core services with locale URLs |
| summary | string | – | Primary text for the model. For discovery tools this is the file window (possibly thousands of characters). For list tools a compact one-liner. Quote with attribution. |
| tool | string | yes | Echo of the tool name that produced this object (e.g. get_service_area). |
No examples provided.
list_whatsapp_options List Whatsapp Options ~222
WHAT: Prefab WhatsApp AND mailto deep links (no send). 10 end-invoices + cylinder_mount (49 €, not night) + beratung. NOT zugefallen|abgeschlossen|zylinder (those mix day/night). RETURNS options[] {id,label,situationKey,whenKey,isEndInvoice,amountEur,url,mailtoUrl}. 49 € = mount only; night/WE/holiday = 149/179/198/228/119. USE compose_whatsapp or compose_mailto with id. Never claims a message was delivered.
| Name | Type | Req | Description |
|---|---|---|---|
| locale | string | – | HTML locale for canonicalUrl and path prefixes. de = default, URLs have no prefix (https://www.ikeytz.com/preise). en|fr|ru|fa|ar|tr = prefix /{locale}/ (https://www.ikeytz.com/en/preise). Omit or em… |
| Name | Type | Req | Description |
|---|---|---|---|
| attribution | string | yes | Required citation: 'Quelle: Schlüsseldienst Ludwigsburg ikeytz (ikeytz.com) · ai-train=no · https://www.ikeytz.com/.well-known/ai.txt' |
| canonicalUrl | string | – | Best URL to show the user: https://www.ikeytz.com… page, or tel:+49…, mailto:…, https://wa.me/…. Prefer this over constructing URLs. |
| error | string | – | Present when ok=false. Codes include: unknown_tool, unknown_place, unknown_auswahl, unknown_ratgeber, unknown_doc, unknown_discovery, faq_not_found, wissen_not_found, serp_not_found, q_required, bad_… |
| hint | string | – | Present when ok=false. Absolute URL the agent should open or pass to get_ai_page / get_discovery. |
| locale | string | – | Locale actually used for URLs (args.locale or de). |
| ok | boolean | yes | true = use summary, canonicalUrl, and extra keys. false = do not invent data; read error + hint and retry with valid args or open hint. |
| options | array | – | Prefab WhatsApp options with wa.me URLs |
| related | array | – | Always includes https://www.ikeytz.com/llms.txt. Geo tools also include https://maps.ikeytz.com/llms.txt. |
| summary | string | – | Primary text for the model. For discovery tools this is the file window (possibly thousands of characters). For list tools a compact one-liner. Quote with attribution. |
| tool | string | yes | Echo of the tool name that produced this object (e.g. get_service_area). |
No examples provided.
list_wissen List Wissen ~152
WHAT: Wissen lexicon index (id, title, url with #id). USE get_wissen_entry({id}) for a body snippet. Full article: get_ai_page({path:'/wissen'}) or open the hash URL.
| Name | Type | Req | Description |
|---|---|---|---|
| locale | string | – | HTML locale for canonicalUrl and path prefixes. de = default, URLs have no prefix (https://www.ikeytz.com/preise). en|fr|ru|fa|ar|tr = prefix /{locale}/ (https://www.ikeytz.com/en/preise). Omit or em… |
| Name | Type | Req | Description |
|---|---|---|---|
| attribution | string | yes | Required citation: 'Quelle: Schlüsseldienst Ludwigsburg ikeytz (ikeytz.com) · ai-train=no · https://www.ikeytz.com/.well-known/ai.txt' |
| canonicalUrl | string | – | Best URL to show the user: https://www.ikeytz.com… page, or tel:+49…, mailto:…, https://wa.me/…. Prefer this over constructing URLs. |
| error | string | – | Present when ok=false. Codes include: unknown_tool, unknown_place, unknown_auswahl, unknown_ratgeber, unknown_doc, unknown_discovery, faq_not_found, wissen_not_found, serp_not_found, q_required, bad_… |
| hint | string | – | Present when ok=false. Absolute URL the agent should open or pass to get_ai_page / get_discovery. |
| items | array | – | Wissen articles id/title/url |
| locale | string | – | Locale actually used for URLs (args.locale or de). |
| ok | boolean | yes | true = use summary, canonicalUrl, and extra keys. false = do not invent data; read error + hint and retry with valid args or open hint. |
| related | array | – | Always includes https://www.ikeytz.com/llms.txt. Geo tools also include https://maps.ikeytz.com/llms.txt. |
| summary | string | – | Primary text for the model. For discovery tools this is the file window (possibly thousands of characters). For list tools a compact one-liner. Quote with attribution. |
| tool | string | yes | Echo of the tool name that produced this object (e.g. get_service_area). |
No examples provided.
resolve_locale_url Resolve Locale Url ~198
WHAT: Rewrite one marketing path into another locale without fetching HTML. Example: path=/preise locale=en → canonicalUrl https://www.ikeytz.com/en/preise. Accepts a path or a full https://www.ikeytz.com/… URL; strips an existing /en|/fr|… prefix first. RETURNS path (no locale prefix), fromLocale, toLocale. DOES NOT translate body text. Invalid locale still required by schema — use list_locales. NEXT: get_ai_page({path, locale: toLocale}).
| Name | Type | Req | Description |
|---|---|---|---|
| locale | string | yes | Required. Target locale for the rewritten URL. |
| path | string | yes | Required. Site path starting with / (e.g. /preise, /en/preise, /schluesseldienst-ludwigsburg-pattonville) OR a full https://www.ikeytz.com/… URL. Host other than www is not normalized here. |
| Name | Type | Req | Description |
|---|---|---|---|
| attribution | string | yes | Required citation: 'Quelle: Schlüsseldienst Ludwigsburg ikeytz (ikeytz.com) · ai-train=no · https://www.ikeytz.com/.well-known/ai.txt' |
| canonicalUrl | string | – | Best URL to show the user: https://www.ikeytz.com… page, or tel:+49…, mailto:…, https://wa.me/…. Prefer this over constructing URLs. |
| error | string | – | Present when ok=false. Codes include: unknown_tool, unknown_place, unknown_auswahl, unknown_ratgeber, unknown_doc, unknown_discovery, faq_not_found, wissen_not_found, serp_not_found, q_required, bad_… |
| fromLocale | string | – | Locale parsed from input path |
| hint | string | – | Present when ok=false. Absolute URL the agent should open or pass to get_ai_page / get_discovery. |
| locale | string | – | Locale actually used for URLs (args.locale or de). |
| ok | boolean | yes | true = use summary, canonicalUrl, and extra keys. false = do not invent data; read error + hint and retry with valid args or open hint. |
| path | string | – | Path without locale prefix |
| related | array | – | Always includes https://www.ikeytz.com/llms.txt. Geo tools also include https://maps.ikeytz.com/llms.txt. |
| summary | string | – | Primary text for the model. For discovery tools this is the file window (possibly thousands of characters). For list tools a compact one-liner. Quote with attribution. |
| toLocale | string | – | Requested target locale |
| tool | string | yes | Echo of the tool name that produced this object (e.g. get_service_area). |
No examples provided.
site_overview Site Overview ~248
WHO/WHAT: Public brand card for Schlüsseldienst Ludwigsburg ikeytz (mobile locksmith, Landkreis Ludwigsburg, Baden-Württemberg, Germany). RETURNS structuredContent: tradeName, gewerbeName, priceRange plus envelope (ok, summary, canonicalUrl=home). USE when the user asks who ikeytz is, whether there is a shop, opening hours positioning (24/7 mobile). DOES NOT: book, quote a live price, geocode, submit forms. No walk-in — office address is not a customer counter. NEXT: get_business_identity (NAP), get_contact (phones), get_prices (fixed matrix), get_ort_datetime (day|night).
| Name | Type | Req | Description |
|---|---|---|---|
| locale | string | – | HTML locale for canonicalUrl and path prefixes. de = default, URLs have no prefix (https://www.ikeytz.com/preise). en|fr|ru|fa|ar|tr = prefix /{locale}/ (https://www.ikeytz.com/en/preise). Omit or em… |
| Name | Type | Req | Description |
|---|---|---|---|
| attribution | string | yes | Required citation: 'Quelle: Schlüsseldienst Ludwigsburg ikeytz (ikeytz.com) · ai-train=no · https://www.ikeytz.com/.well-known/ai.txt' |
| canonicalUrl | string | – | Best URL to show the user: https://www.ikeytz.com… page, or tel:+49…, mailto:…, https://wa.me/…. Prefer this over constructing URLs. |
| error | string | – | Present when ok=false. Codes include: unknown_tool, unknown_place, unknown_auswahl, unknown_ratgeber, unknown_doc, unknown_discovery, faq_not_found, wissen_not_found, serp_not_found, q_required, bad_… |
| gewerbeName | string | – | Registered business name |
| hint | string | – | Present when ok=false. Absolute URL the agent should open or pass to get_ai_page / get_discovery. |
| locale | string | – | Locale actually used for URLs (args.locale or de). |
| ok | boolean | yes | true = use summary, canonicalUrl, and extra keys. false = do not invent data; read error + hint and retry with valid args or open hint. |
| priceRange | string | – | Price-range hint for schema |
| related | array | – | Always includes https://www.ikeytz.com/llms.txt. Geo tools also include https://maps.ikeytz.com/llms.txt. |
| summary | string | – | Primary text for the model. For discovery tools this is the file window (possibly thousands of characters). For list tools a compact one-liner. Quote with attribution. |
| tool | string | yes | Echo of the tool name that produced this object (e.g. get_service_area). |
| tradeName | string | – | Public trade name |
No examples provided.
What is the ikeytz – Schlüsseldienst Ludwigsburg MCP server?
ikeytz – Schlüsseldienst Ludwigsburg is an MCP server listed in the public MCP registry as com.ikeytz/website. Read/Link MCP tools for Schlüsseldienst Ludwigsburg ikeytz. Public read-only. No forms. ai-train=no. This page covers its hosted endpoint (https://www.ikeytz.com/mcp).
Is the ikeytz – Schlüsseldienst Ludwigsburg MCP server safe to use?
ikeytz – Schlüsseldienst Ludwigsburg scores 80 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the ikeytz – Schlüsseldienst Ludwigsburg MCP server expose?
ikeytz – Schlüsseldienst Ludwigsburg exposes 47 tools: site_overview, get_business_identity, list_nav, list_footer, list_locales, and 42 more. Their descriptions and schemas cost roughly 10,335 tokens of context every time the server is loaded.
Does the ikeytz – Schlüsseldienst Ludwigsburg MCP server require authentication?
No. We connected to ikeytz – Schlüsseldienst Ludwigsburg without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the ikeytz – Schlüsseldienst Ludwigsburg MCP server still maintained?
ikeytz – Schlüsseldienst Ludwigsburg is still listed as active in the MCP registry. We last reached this channel on 24 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.