Skip to main content
Glama

ikeytz - Schlüsseldienst Ludwigsburg

Get Llms Jsonld

get_llms_jsonld
Read-only

WHAT: Fetch /llms-jsonld.txt — map every marketing HTML URL to JSON-LD relatedLink (ai-pages fulltext) + mirrorId + optional geo_api/geo_grenze/geo_punkt (maps Embed-API). Format: pageUrl TAB relatedLink TAB mirrorId TAB geo_api TAB geo_grenze TAB geo_punkt. Ort = one URL each; PLZ = pipe-separated URLs per Ort of that PLZ (L-30). Same engine as get_sitemap_txt (offset/limit/nextOffset/# MCP-META). Not the page body (use get_ai_page). Not get_serp_snippet. Geo columns empty for Hub/Legal/non-ort.

Input Schema

NameRequiredDescriptionDefault
limitNoMaximum number of lines to return after offset. Omit or null = if remaining payload ≤~30KB return all remaining lines; if larger, return first ~30KB window + nextOffset (O9). Explicit limit keeps 1..10000 line window (MCP caps unchanged — not forced to 30KB). Meta also as trailing # MCP-META lines in summary.
offsetNo0-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; one line can be a long URL.

Output Schema

NameRequiredDescriptionDefault
okYestrue = use summary, canonicalUrl, and extra keys. false = do not invent data; read error + hint and retry with valid args or open hint.
hintNoPresent when ok=false. Absolute URL the agent should open or pass to get_ai_page / get_discovery.
pathNoPublic path on www, e.g. /llms.txt or /.well-known/ai.txt
toolYesEcho of the tool name that produced this object (e.g. get_service_area).
errorNoPresent 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_datetime, bad_when_key, plus HTTP errors from fetch.
limitNoApplied line limit, or null if the caller omitted limit.
whichNoResolved discovery id after alias fold (llms, sitemap-txt, ard, ai-catalog, …).
localeNoLocale actually used for URLs (args.locale or de).
offsetNoApplied 0-based line offset.
relatedNoAlways includes https://www.ikeytz.com/llms.txt. Geo tools also include https://maps.ikeytz.com/llms.txt.
summaryNoPrimary 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.
totalUrlsNohttp(s) lines in the loaded file (full count when public/ read succeeds).
truncatedNotrue if load hit a byte cap OR offset+limit left more lines. Also mirrored in trailing # MCP-META lines in summary.
nextOffsetNooffset + returnedLines when more lines remain in the loaded file; else null. Pass as the next offset. Also in # MCP-META.
totalBytesNoUncompressed UTF-8 byte length of the discovery file (decoded body). Content-Length is used only for identity responses when it is ≥ body size (full file if the load cap truncated). Gzip wire Content-Length is ignored. Also in # MCP-META.
totalCharsNoCharacter length of the downloaded body before applying discoveryFetchMax (may equal totalBytes for ASCII).
totalLinesNoLine count of the loaded file (full public/ file when available).
attributionYesRequired citation: 'Quelle: Schlüsseldienst Ludwigsburg ikeytz (ikeytz.com) · ai-train=no · https://www.ikeytz.com/.well-known/ai.txt'
canonicalUrlNoBest URL to show the user: https://www.ikeytz.com… page, or tel:+49…, mailto:…, https://wa.me/…. Prefer this over constructing URLs.
returnedUrlsNoLines in this window that start with http(s)://
bytesReturnedNoUTF-8 byte length of the returned body window (before # MCP-META).
returnedLinesNoHow many lines are in summary/body this call (before # MCP-META).
fetchTruncatedNotrue if discoveryFetchMax cut the load (line-boundary safe). Large discovery files (sitemap-xml ~12MB, llms-keywords ~55MB, llms-index ~2MB) must load full so offset/limit can reach EOF.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / properties / totalBytes / description
      Previous value: -"Full origin file size when Content-Length is present (e.g. llms-keywords ~50MB); else character length of the downloaded body before the load cap. Also in # MCP-META."New value: +"Uncompressed UTF-8 byte length of the discovery file (decoded body). Content-Length is used only for identity responses when it is ≥ body size (full file if the load cap truncated). Gzip wire Content-Length is ignored. Also in # MCP-META."
  2. Changed1 schema field changed
    • changedInput schema / properties / limit / description
      Previous value: -"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 get the full list (or page with offset/limit + nextOffset). For llms-keywords.txt prefer a window; the file is huge. Meta also as trailing # MCP-META lines in summary."New value: +"Maximum number of lines to return after offset. Omit or null = if remaining payload ≤~30KB return all remaining lines; if larger, return first ~30KB window + nextOffset (O9). Explicit limit keeps 1..10000 line window (MCP caps unchanged — not forced to 30KB). Meta also as trailing # MCP-META lines in summary."
  3. Changed1 schema field changed
    • changedOutput schema / properties / fetchTruncated / description
      Previous value: -"true if discoveryFetchMax cut the load (line-boundary safe). sitemap-xml (~12MB) and llms-index (~2MB) must load full; keywords stay capped — use totalBytes."New value: +"true if discoveryFetchMax cut the load (line-boundary safe). Large discovery files (sitemap-xml ~12MB, llms-keywords ~55MB, llms-index ~2MB) must load full so offset/limit can reach EOF."
  4. Changed1 schema field changed
    • changedOutput schema / properties / fetchTruncated / description
      Previous value: -"true if discoveryFetchMax cut the load (line-boundary safe). sitemap-xml must load full (~12MB cap); keywords stay capped — use totalBytes."New value: +"true if discoveryFetchMax cut the load (line-boundary safe). sitemap-xml (~12MB) and llms-index (~2MB) must load full; keywords stay capped — use totalBytes."
  5. Changed3 schema fields changed
    • changedOutput schema / properties / fetchTruncated / description
      Previous value: -"true if a byte cap cut the load (line-boundary safe). Rare for sitemap.txt (reads public/)."New value: +"true if discoveryFetchMax cut the load (line-boundary safe). sitemap-xml must load full (~12MB cap); keywords stay capped — use totalBytes."
    • addedOutput schema / properties / totalBytes
      Added value: +{
      +  "description": "Full origin file size when Content-Length is present (e.g. llms-keywords ~50MB); else character length of the downloaded body before the load cap. Also in # MCP-META.",
      +  "type": "number"
      +}
    • addedOutput schema / properties / totalChars
      Added value: +{
      +  "description": "Character length of the downloaded body before applying discoveryFetchMax (may equal totalBytes for ASCII).",
      +  "type": "number"
      +}
  6. Added

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover readOnlyHint=true, and the description adds substantial context beyond that: the payout format, the shared engine with get_sitemap_txt (offset/limit/nextOffset/# MCP-META), and that geo columns are empty for Hub/Legal/non-ort. This is exactly the extra behavioral context annotations do not carry.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense and front-loaded with WHAT and the format, then exclusions. It is long, but nearly every clause encodes a distinct fact; the one weak spot is the 'Ort/PLZ' glossary shorthand which assumes site-specific vocabulary an agent may not have.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only file-fetch tool with a full output schema, the description covers format, engine behavior, paging meta, and domain exceptions. The only gap is that the Ort/PLZ distinction is explained in terse German shorthand rather than plain terms, which could leave a non-domain-aware agent guessing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and both parameters have rich descriptions including the ~30KB window rule and offset/nextOffset paging. The description only restates the paging engine by reference, adding nothing beyond the schema, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific artifact (/llms-jsonld.txt), enumerates exactly what it maps (marketing HTML URL → relatedLink + mirrorId + optional geo columns), and gives the tab-separated column layout. It explicitly distinguishes from get_ai_page and get_serp_snippet, so an agent can tell it apart from siblings without opening a schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It states when-not to use it ('Not the page body (use get_ai_page). Not get_serp_snippet') and explains the Ort vs PLZ line semantics (one URL each vs pipe-separated per Ort). It does not say which sibling to use when the goal is the JSON-LD itself versus other llms_* variants, so a 5 is not warranted.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources