{"openapi":"3.1.0","info":{"title":"Steuern Mallorca Expats Public Agent API","version":"1.0.0","description":"Public read endpoints for German Spain tax Markdown pages, GraphRAG search and machine-readable tax datasets.","x-language-contract":{"primary_content_language":"de-DE","canonical_human_language":"de-DE","machine_metadata_language":"en","available_languages":["de-DE","en"],"human_page_policy":"German canonical human pages; English machine discovery, summary and field metadata."}},"servers":[{"url":"https://steuern.mallorca-expats.com"}],"paths":{"/api/markdown":{"get":{"summary":"Get the canonical Markdown representation of a content page","description":"Returns German canonical page content with English machine-summary frontmatter for AI crawlers, search engines and citation agents.","x-language-contract":{"primary_content_language":"de-DE","canonical_human_language":"de-DE","machine_metadata_language":"en","available_languages":["de-DE","en"],"human_page_policy":"German canonical human pages; English machine discovery, summary and field metadata."},"parameters":[{"name":"path","in":"query","required":false,"schema":{"type":"string","default":"/"}}],"responses":{"200":{"description":"Markdown page representation","content":{"text/markdown":{"schema":{"type":"string"}}}}}}},"/api/graphrag":{"get":{"summary":"Search Steuern Mallorca Expats with GraphRAG","description":"Returns citable German Spain tax knowledge chunks with graph context, source references and tax relations.","x-language-contract":{"primary_content_language":"de-DE","canonical_human_language":"de-DE","machine_metadata_language":"en","available_languages":["de-DE","en"],"human_page_policy":"German canonical human pages; English machine discovery, summary and field metadata."},"parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":8,"minimum":1,"maximum":20}}],"responses":{"200":{"description":"GraphRAG search results","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/mcp":{"get":{"summary":"Get MCP server metadata","x-language-contract":{"primary_content_language":"de-DE","canonical_human_language":"de-DE","machine_metadata_language":"en","available_languages":["de-DE","en"],"human_page_policy":"German canonical human pages; English machine discovery, summary and field metadata."},"responses":{"200":{"description":"MCP server metadata"}}},"post":{"summary":"Call the MCP JSON-RPC endpoint","x-language-contract":{"primary_content_language":"de-DE","canonical_human_language":"de-DE","machine_metadata_language":"en","available_languages":["de-DE","en"],"human_page_policy":"German canonical human pages; English machine discovery, summary and field metadata."},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object"}}}},"responses":{"200":{"description":"JSON-RPC response","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/llms.txt":{"get":{"summary":"Get the text agent navigation map","responses":{"200":{"description":"llms.txt"}}}},"/llms.json":{"get":{"summary":"Get the structured agent navigation map","responses":{"200":{"description":"llms.json"}}}},"/datasets":{"get":{"summary":"Get the human-readable dataset catalog","responses":{"200":{"description":"Dataset catalog HTML"}}}},"/datasets/catalog.json":{"get":{"summary":"Get the machine-readable dataset catalog","responses":{"200":{"description":"Dataset catalog JSON"}}}}}}