분석된 URL
https://www.otodom.pl/pl/profil/agenci-nieruchomosci/marianna-boczko-ID30
AI-Ready 점수
미흡
/ 100
토큰 절감량
점수 상세
신흥 프로토콜
3개 중 0개 감지AI 에이전트가 찾는 well-known 엔드포인트. 감지되면 에이전트가 서비스를 자동으로 발견하고 연결할 수 있습니다.
-
OAuth Discovery RFC 8414
/.well-known/oauth-authorization-server -
MCP Server Card Anthropic
/.well-known/mcp.json -
A2A Agent Card Google
/.well-known/agent.json
사이트에 llms.txt 파일이 없습니다. AI 에이전트가 사이트 구조를 이해하도록 돕는 새로운 표준입니다.
구현 방법
llmstxt.org 사양에 따라 /llms.txt 파일을 만드세요. 사이트 설명과 주요 페이지 링크를 포함하세요.
페이지의 실제 콘텐츠와 전체 HTML의 비율이 낮습니다. 페이지 무게의 상당 부분이 콘텐츠가 아닌 마크업, 스크립트, 스타일입니다.
구현 방법
CSS를 외부 스타일시트로 이동하고, 인라인 스타일을 제거하고, JavaScript를 최소화하고, HTML이 콘텐츠 구조에 집중하도록 하세요.
사이트가 Markdown for Agents를 지원하지 않습니다. 이 Cloudflare 표준을 통해 AI 에이전트가 마크다운 형식으로 콘텐츠를 요청할 수 있으며, 토큰 사용량을 ~80% 줄일 수 있습니다.
구현 방법
다음 중 하나 이상을 구현하세요: (1) Accept: text/markdown에 마크다운 콘텐츠로 응답. (2) .md URL 제공 (예: /page.md). (3) <link rel="alternate" type="text/markdown"> 태그 추가. (4) 마크다운 발견을 위한 Link HTTP 헤더 추가.
Content-Signal 지시어가 발견되지 않았습니다. 이는 AI 에이전트에게 콘텐츠 사용 방법(검색 색인, AI 입력, 훈련 데이터)을 알려줍니다. 권장 위치는 robots.txt입니다.
구현 방법
robots.txt에 Content-Signal을 추가하세요: User-agent: *\nContent-Signal: search=yes, ai-input=yes, ai-train=no. 마크다운 응답의 HTTP 헤더로도 추가할 수 있습니다.
Schema.org 구조화 데이터를 찾을 수 없습니다. JSON-LD는 AI 에이전트가 페이지에서 사실 기반의 구조화 정보를 추출하는 데 도움을 줍니다.
구현 방법
Schema.org 마크업이 포함된 <script type="application/ld+json"> 블록을 추가하세요. 적절한 유형을 사용하세요: 블로그 게시물에는 Article, 제품 페이지에는 Product, 회사 페이지에는 Organization.
페이지가 <div> 요소에 크게 의존합니다. <section>, <nav>, <header>, <footer>, <aside> 같은 시맨틱 요소는 AI 에이전트에게 의미 있는 구조를 제공합니다.
구현 방법
범용 <div> 컨테이너를 적절한 시맨틱 요소로 교체하세요. 주제별 그룹에는 <section>, 내비게이션에는 <nav>, 페이지/섹션 헤더와 푸터에는 <header>/<footer>를 사용하세요.
주요 콘텐츠가 HTML 문서의 후반부에 나타납니다. AI 에이전트는 일찍 나타나는 콘텐츠에 더 높은 가중치를 줄 수 있습니다.
구현 방법
<main> 또는 <article> 콘텐츠가 사이드바와 부가 콘텐츠보다 먼저 나타나도록 HTML을 재구성하세요.
제목 구조에 문제가 있습니다 (레벨 건너뛰기 또는 다중 h1 태그). 깔끔한 계층 구조는 AI 에이전트가 콘텐츠 구성을 이해하는 데 도움을 줍니다.
구현 방법
페이지당 정확히 하나의 <h1>을 유지하고, 제목이 순차적 순서를 따르도록 하세요: h1 > h2 > h3. 레벨을 건너뛰지 마세요 (예: h1에서 바로 h3).
Open Graph 태그가 없거나 불완전합니다. OG 태그는 AI 에이전트(및 소셜 플랫폼)가 페이지의 제목, 설명, 이미지를 이해하는 데 도움을 줍니다.
구현 방법
페이지의 <head>에 og:title, og:description, og:image 메타 태그를 추가하세요.
많은 요소에 인라인 스타일 속성이 있습니다. 이는 콘텐츠를 추출하는 AI 에이전트에게 잡음이 됩니다.
구현 방법
모든 인라인 스타일을 스타일시트의 CSS 클래스로 이동하세요. 많은 고유 스타일이 필요하면 Tailwind 같은 유틸리티 CSS 프레임워크를 사용하세요.
## O mnie Obszar działania Gdańsk Doświadczenie Mieszkania, Lokale użytkowe, Garaże, Kawalerki ### Bio Jestem komunikatywna, łatwo nawiązuję kontakty, jestem lojalna, odpowiedzialna i konsekwentna w działaniu, a swoją pracę wykonuję z pasją. Stawiam sobie ambitne cele i lubię wyzwania.
Marianna Boczko - Agent nieruchomości - Gdańsk [](https://www.otodom.pl/) Moje konto Dodaj ogłoszenie  TYSZKIEWICZ NIERUCHOMOŚCI   ## Marianna Boczko Agent nieruchomości w biurze [TYSZKIEWICZ NIERUCHOMOŚCI](https://www.otodom.pl/pl/firmy/biura-nieruchomosci/tyszkiewicz-nieruchomosci-ID629621)  Pokaż numer Biuro na Otodom od 2013 Udostępnij profil ## O mnie ## 0 Ogłoszenia sprzedaży ## 0 Ogłoszenia wynajmu Obszar działania Gdańsk Doświadczenie Mieszkania, Lokale użytkowe, Garaże, Kawalerki ### Bio Jestem komunikatywna, łatwo nawiązuję kontakty, jestem lojalna, odpowiedzialna i konsekwentna w działaniu, a swoją pracę wykonuję z pasją. Stawiam sobie ambitne cele i lubię wyzwania.
이 파일을 서버의 /pl/profil/agenci-nieruchomosci/marianna-boczko-ID30.md에 업로드하여 AI 에이전트가 페이지의 깔끔한 버전에 접근할 수 있게 하세요. Accept: text/markdown 콘텐츠 협상을 설정하여 자동으로 제공할 수도 있습니다.
이 단일 페이지용으로 생성된 llms.txt
# www.otodom.pl/ > Najpopularniejszy serwis nieruchomosci. Sprzedaz i wynajem w kategoriach mieszkania, domy, dzialki, lokale uzytkowe. Oferty biur nieruchomosci, bezposrednie oraz od deweloperów. Znajdz swój dom marzen razem z nami - otoDom.pl ## Main - [Otodom: Ogloszenia Nieruchomosci, Mieszkania, Domy, Dzialki](https://www.otodom.pl/pl/profil/agenci-nieruchomosci/marianna-boczko-ID30): Najpopularniejszy serwis nieruchomosci. Sprzedaz i wynajem w kategoriach mieszkania, domy, dzialki, lokale uzytkowe. Of… - [Mieszkania](https://www.otodom.pl/pl/wyniki/sprzedaz/mieszkanie/cala-polska) - [Kawalerki](https://www.otodom.pl/pl/wyniki/sprzedaz/kawalerka/cala-polska) - [Domy](https://www.otodom.pl/pl/wyniki/sprzedaz/dom/cala-polska) - [Działki](https://www.otodom.pl/pl/wyniki/sprzedaz/dzialka/cala-polska) - [Lokale użytkowe](https://www.otodom.pl/pl/wyniki/sprzedaz/lokal/cala-polska) - [Biura](https://www.otodom.pl/pl/wyniki/sprzedaz/lokal,biuro/cala-polska) - [Hale i magazyny](https://www.otodom.pl/pl/wyniki/sprzedaz/haleimagazyny/cala-polska) - [Garaże](https://www.otodom.pl/pl/wyniki/sprzedaz/garaz/cala-polska)
전체 llms.txt는 도메인 전체 분석이 필요합니다 (곧 출시)
이 파일을 도메인 루트의 https://www.otodom.pl/llms.txt에 업로드하세요. ChatGPT, Claude, Perplexity 등의 AI 에이전트가 이 파일을 확인하여 사이트 구조를 파악합니다.
시맨틱 HTML
Has <main>
no <h1>
5 semantic elements, 78 divs (ratio: 6%)
7/8 images with meaningful alt text
Avg div depth: 5.0, max: 8
콘텐츠 효율성
100% token reduction (HTML→Markdown)
Content ratio: 0.1% (274 content chars / 228914 HTML bytes)
30/756 elements with inline styles (4.0%)
HTML size: 224KB
AI 발견 가능성
No llms.txt found
robots.txt exists
All major AI bots allowed
Sitemap found
구조화 데이터
No JSON-LD / Schema.org found
2/3 OG tags present
Meta description: 225 chars
Canonical URL present
lang="pl"
접근성
Content available without JavaScript
Page size: 224KB
Main content starts at 77% of HTML
{
"url": "https://www.otodom.pl/pl/profil/agenci-nieruchomosci/marianna-boczko-ID30",
"timestamp": 1779974071870,
"fetch": {
"mode": "simple",
"timeMs": 518,
"htmlSizeBytes": 228914,
"supportsMarkdown": false,
"markdownAgents": {
"contentNegotiation": false,
"mdUrl": {
"found": false,
"url": null
},
"linkTag": {
"found": false,
"url": null
},
"linkHeader": {
"found": false,
"url": null
},
"responseHeaders": {
"contentSignal": null,
"xMarkdownTokens": null,
"vary": null
},
"frontmatter": {
"present": false,
"fields": [],
"level": "none"
},
"level": "none"
},
"statusCode": 200
},
"extraction": {
"title": "Otodom: Ogloszenia Nieruchomosci, Mieszkania, Domy, Dzialki",
"excerpt": "Najpopularniejszy serwis nieruchomosci. Sprzedaz i wynajem w kategoriach mieszkania, domy, dzialki, lokale uzytkowe. Oferty biur nieruchomosci, bezposrednie oraz od deweloperów. Znajdz swój dom marzen razem z nami - otoDom.pl",
"byline": null,
"siteName": "www.otodom.pl/",
"lang": "pl",
"contentLength": 274,
"metadata": {
"description": "Najpopularniejszy serwis nieruchomosci. Sprzedaz i wynajem w kategoriach mieszkania, domy, dzialki, lokale uzytkowe. Oferty biur nieruchomosci, bezposrednie oraz od deweloperów. Znajdz swój dom marzen razem z nami - otoDom.pl",
"ogTitle": "Otodom: Ogloszenia Nieruchomosci, Mieszkania, Domy, Dzialki",
"ogDescription": null,
"ogImage": "https://statics.otodom.pl/static/otodompl/naspersclassifieds-regional/verticalsre-atlas-web-otodompl/static/img/fb/fb-image200x200.png?t=20-11-09",
"ogType": "website",
"canonical": "https://www.otodom.pl/",
"lang": "pl",
"schemas": [],
"robotsMeta": "index, follow",
"author": null,
"generator": null,
"markdownAlternateHref": null
}
},
"markdown": "## O mnie\n\nObszar działania\n\nGdańsk\n\nDoświadczenie\n\nMieszkania, Lokale użytkowe, Garaże, Kawalerki\n\n### Bio\n\nJestem komunikatywna, łatwo nawiązuję kontakty, jestem lojalna, odpowiedzialna i konsekwentna w działaniu, a swoją pracę wykonuję z pasją. Stawiam sobie ambitne cele i lubię wyzwania.\n\n\n",
"fullPageMarkdown": "Marianna Boczko - Agent nieruchomości - Gdańsk\n\n[](https://www.otodom.pl/)\n\nMoje konto\n\nDodaj ogłoszenie\n\n\n\nTYSZKIEWICZ NIERUCHOMOŚCI\n\n\n\n\n\n## Marianna Boczko\n\nAgent nieruchomości w biurze [TYSZKIEWICZ NIERUCHOMOŚCI](https://www.otodom.pl/pl/firmy/biura-nieruchomosci/tyszkiewicz-nieruchomosci-ID629621)\n\n\n\nPokaż numer\n\nBiuro na Otodom od 2013\n\nUdostępnij profil\n\n## O mnie\n\n## 0\n\nOgłoszenia sprzedaży\n\n## 0\n\nOgłoszenia wynajmu\n\nObszar działania\n\nGdańsk\n\nDoświadczenie\n\nMieszkania, Lokale użytkowe, Garaże, Kawalerki\n\n### Bio\n\nJestem komunikatywna, łatwo nawiązuję kontakty, jestem lojalna, odpowiedzialna i konsekwentna w działaniu, a swoją pracę wykonuję z pasją. Stawiam sobie ambitne cele i lubię wyzwania.\n\n\n\n\n",
"markdownStats": {
"images": 0,
"links": 0,
"tables": 0,
"codeBlocks": 0,
"headings": 2
},
"tokens": {
"htmlTokens": 76275,
"markdownTokens": 110,
"reduction": 76165,
"reductionPercent": 100
},
"score": {
"score": 58,
"grade": "D",
"dimensions": {
"semanticHtml": {
"score": 75,
"weight": 20,
"grade": "B",
"checks": {
"uses_article_or_main": {
"score": 100,
"weight": 20,
"details": "Has <main>"
},
"proper_heading_hierarchy": {
"score": 70,
"weight": 25,
"details": "no <h1>"
},
"semantic_elements": {
"score": 20,
"weight": 20,
"details": "5 semantic elements, 78 divs (ratio: 6%)"
},
"meaningful_alt_texts": {
"score": 88,
"weight": 15,
"details": "7/8 images with meaningful alt text"
},
"low_div_nesting": {
"score": 100,
"weight": 20,
"details": "Avg div depth: 5.0, max: 8"
}
}
},
"contentEfficiency": {
"score": 55,
"weight": 25,
"grade": "D",
"checks": {
"token_reduction_ratio": {
"score": 100,
"weight": 40,
"details": "100% token reduction (HTML→Markdown)"
},
"content_to_noise_ratio": {
"score": 0,
"weight": 30,
"details": "Content ratio: 0.1% (274 content chars / 228914 HTML bytes)"
},
"minimal_inline_styles": {
"score": 50,
"weight": 15,
"details": "30/756 elements with inline styles (4.0%)"
},
"reasonable_page_weight": {
"score": 50,
"weight": 15,
"details": "HTML size: 224KB"
}
}
},
"aiDiscoverability": {
"score": 35,
"weight": 25,
"grade": "F",
"checks": {
"has_llms_txt": {
"score": 0,
"weight": 20,
"details": "No llms.txt found"
},
"has_robots_txt": {
"score": 100,
"weight": 10,
"details": "robots.txt exists"
},
"robots_allows_ai_bots": {
"score": 100,
"weight": 15,
"details": "All major AI bots allowed"
},
"has_sitemap": {
"score": 100,
"weight": 10,
"details": "Sitemap found"
},
"supports_markdown_negotiation": {
"score": 0,
"weight": 25,
"details": "No Markdown for Agents support detected"
},
"has_content_signals": {
"score": 0,
"weight": 20,
"details": "No Content-Signal found (robots.txt or HTTP headers)"
}
}
},
"structuredData": {
"score": 62,
"weight": 15,
"grade": "C",
"checks": {
"has_schema_org": {
"score": 0,
"weight": 30,
"details": "No JSON-LD / Schema.org found"
},
"has_open_graph": {
"score": 67,
"weight": 25,
"details": "2/3 OG tags present"
},
"has_meta_description": {
"score": 100,
"weight": 20,
"details": "Meta description: 225 chars"
},
"has_canonical_url": {
"score": 100,
"weight": 15,
"details": "Canonical URL present"
},
"has_lang_attribute": {
"score": 100,
"weight": 10,
"details": "lang=\"pl\""
}
}
},
"accessibility": {
"score": 72,
"weight": 15,
"grade": "C",
"checks": {
"content_without_js": {
"score": 100,
"weight": 40,
"details": "Content available without JavaScript"
},
"reasonable_page_size": {
"score": 80,
"weight": 30,
"details": "Page size: 224KB"
},
"fast_content_position": {
"score": 25,
"weight": 30,
"details": "Main content starts at 77% of HTML"
}
}
}
}
},
"recommendations": [
{
"id": "add_llms_txt",
"priority": "critical",
"category": "aiDiscoverability",
"titleKey": "rec.add_llms_txt.title",
"descriptionKey": "rec.add_llms_txt.description",
"howToKey": "rec.add_llms_txt.howto",
"effort": "quick-win",
"estimatedImpact": 10,
"checkScore": 0,
"checkDetails": "No llms.txt found"
},
{
"id": "improve_content_ratio",
"priority": "critical",
"category": "contentEfficiency",
"titleKey": "rec.improve_content_ratio.title",
"descriptionKey": "rec.improve_content_ratio.description",
"howToKey": "rec.improve_content_ratio.howto",
"effort": "moderate",
"estimatedImpact": 6,
"checkScore": 0,
"checkDetails": "Content ratio: 0.1% (274 content chars / 228914 HTML bytes)"
},
{
"id": "add_markdown_negotiation",
"priority": "critical",
"category": "aiDiscoverability",
"titleKey": "rec.add_markdown_negotiation.title",
"descriptionKey": "rec.add_markdown_negotiation.description",
"howToKey": "rec.add_markdown_negotiation.howto",
"effort": "significant",
"estimatedImpact": 6,
"checkScore": 0,
"checkDetails": "No Markdown for Agents support detected"
},
{
"id": "add_content_signals",
"priority": "critical",
"category": "aiDiscoverability",
"titleKey": "rec.add_content_signals.title",
"descriptionKey": "rec.add_content_signals.description",
"howToKey": "rec.add_content_signals.howto",
"effort": "quick-win",
"estimatedImpact": 5,
"checkScore": 0,
"checkDetails": "No Content-Signal found (robots.txt or HTTP headers)"
},
{
"id": "add_schema_org",
"priority": "high",
"category": "structuredData",
"titleKey": "rec.add_schema_org.title",
"descriptionKey": "rec.add_schema_org.description",
"howToKey": "rec.add_schema_org.howto",
"effort": "moderate",
"estimatedImpact": 6,
"checkScore": 0,
"checkDetails": "No JSON-LD / Schema.org found"
},
{
"id": "add_semantic_elements",
"priority": "high",
"category": "semanticHtml",
"titleKey": "rec.add_semantic_elements.title",
"descriptionKey": "rec.add_semantic_elements.description",
"howToKey": "rec.add_semantic_elements.howto",
"effort": "moderate",
"estimatedImpact": 5,
"checkScore": 20,
"checkDetails": "5 semantic elements, 78 divs (ratio: 6%)"
},
{
"id": "move_content_earlier",
"priority": "high",
"category": "accessibility",
"titleKey": "rec.move_content_earlier.title",
"descriptionKey": "rec.move_content_earlier.description",
"howToKey": "rec.move_content_earlier.howto",
"effort": "moderate",
"estimatedImpact": 4,
"checkScore": 25,
"checkDetails": "Main content starts at 77% of HTML"
},
{
"id": "fix_heading_hierarchy",
"priority": "medium",
"category": "semanticHtml",
"titleKey": "rec.fix_heading_hierarchy.title",
"descriptionKey": "rec.fix_heading_hierarchy.description",
"howToKey": "rec.fix_heading_hierarchy.howto",
"effort": "quick-win",
"estimatedImpact": 6,
"checkScore": 70,
"checkDetails": "no <h1>"
},
{
"id": "add_open_graph",
"priority": "medium",
"category": "structuredData",
"titleKey": "rec.add_open_graph.title",
"descriptionKey": "rec.add_open_graph.description",
"howToKey": "rec.add_open_graph.howto",
"effort": "quick-win",
"estimatedImpact": 4,
"checkScore": 67,
"checkDetails": "2/3 OG tags present"
},
{
"id": "remove_inline_styles",
"priority": "medium",
"category": "contentEfficiency",
"titleKey": "rec.remove_inline_styles.title",
"descriptionKey": "rec.remove_inline_styles.description",
"howToKey": "rec.remove_inline_styles.howto",
"effort": "moderate",
"estimatedImpact": 3,
"checkScore": 50,
"checkDetails": "30/756 elements with inline styles (4.0%)"
}
],
"llmsTxtPreview": "# www.otodom.pl/\n\n> Najpopularniejszy serwis nieruchomosci. Sprzedaz i wynajem w kategoriach mieszkania, domy, dzialki, lokale uzytkowe. Oferty biur nieruchomosci, bezposrednie oraz od deweloperów. Znajdz swój dom marzen razem z nami - otoDom.pl\n\n## Main\n- [Otodom: Ogloszenia Nieruchomosci, Mieszkania, Domy, Dzialki](https://www.otodom.pl/pl/profil/agenci-nieruchomosci/marianna-boczko-ID30): Najpopularniejszy serwis nieruchomosci. Sprzedaz i wynajem w kategoriach mieszkania, domy, dzialki, lokale uzytkowe. Of…\n- [Mieszkania](https://www.otodom.pl/pl/wyniki/sprzedaz/mieszkanie/cala-polska)\n- [Kawalerki](https://www.otodom.pl/pl/wyniki/sprzedaz/kawalerka/cala-polska)\n- [Domy](https://www.otodom.pl/pl/wyniki/sprzedaz/dom/cala-polska)\n- [Działki](https://www.otodom.pl/pl/wyniki/sprzedaz/dzialka/cala-polska)\n- [Lokale użytkowe](https://www.otodom.pl/pl/wyniki/sprzedaz/lokal/cala-polska)\n- [Biura](https://www.otodom.pl/pl/wyniki/sprzedaz/lokal,biuro/cala-polska)\n- [Hale i magazyny](https://www.otodom.pl/pl/wyniki/sprzedaz/haleimagazyny/cala-polska)\n- [Garaże](https://www.otodom.pl/pl/wyniki/sprzedaz/garaz/cala-polska)\n\n",
"llmsTxtExisting": null,
"emergingProtocols": {
"oauthDiscovery": {
"exists": false,
"url": "https://www.otodom.pl/.well-known/oauth-authorization-server"
},
"mcpServerCard": {
"exists": false,
"url": "https://www.otodom.pl/.well-known/mcp.json"
},
"a2aAgentCard": {
"exists": false,
"url": "https://www.otodom.pl/.well-known/agent.json"
},
"count": 0
},
"snippets": [
{
"id": "add_llms_txt",
"title": "Create /llms.txt",
"description": "Upload this file to your web root. It tells AI agents what your site is about and which pages matter.",
"language": "markdown",
"code": "# www.otodom.pl/\n\n> Najpopularniejszy serwis nieruchomosci. Sprzedaz i wynajem w kategoriach mieszkania, domy, dzialki, lokale uzytkowe. Oferty biur nieruchomosci, bezposrednie oraz od deweloperów. Znajdz swój dom marzen razem z nami - otoDom.pl\n\n## Main\n- [Otodom: Ogloszenia Nieruchomosci, Mieszkania, Domy, Dzialki](https://www.otodom.pl/pl/profil/agenci-nieruchomosci/marianna-boczko-ID30): Najpopularniejszy serwis nieruchomosci. Sprzedaz i wynajem w kategoriach mieszkania, domy, dzialki, lokale uzytkowe. Of…\n- [Mieszkania](https://www.otodom.pl/pl/wyniki/sprzedaz/mieszkanie/cala-polska)\n- [Kawalerki](https://www.otodom.pl/pl/wyniki/sprzedaz/kawalerka/cala-polska)\n- [Domy](https://www.otodom.pl/pl/wyniki/sprzedaz/dom/cala-polska)\n- [Działki](https://www.otodom.pl/pl/wyniki/sprzedaz/dzialka/cala-polska)\n- [Lokale użytkowe](https://www.otodom.pl/pl/wyniki/sprzedaz/lokal/cala-polska)\n- [Biura](https://www.otodom.pl/pl/wyniki/sprzedaz/lokal,biuro/cala-polska)\n- [Hale i magazyny](https://www.otodom.pl/pl/wyniki/sprzedaz/haleimagazyny/cala-polska)\n- [Garaże](https://www.otodom.pl/pl/wyniki/sprzedaz/garaz/cala-polska)\n\n",
"filename": "/llms.txt"
},
{
"id": "fix_heading_hierarchy",
"title": "Fix heading hierarchy",
"description": "Your page has no <h1>. Every page needs exactly one <h1> as the main heading. Add it inside your <main> or <article>.",
"language": "html",
"code": "<h1>Otodom: Ogloszenia Nieruchomosci, Mieszkania, Domy, Dzialki</h1>",
"filename": "<main> or <article>"
},
{
"id": "add_open_graph",
"title": "Add missing Open Graph tags",
"description": "Open Graph tags control how your page looks when shared on social media and how AI platforms preview your URL in answers.",
"language": "html",
"code": "<meta property=\"og:description\" content=\"Najpopularniejszy serwis nieruchomosci. Sprzedaz i wynajem w kategoriach mieszkania, domy, dzialki, lokale uzytkowe. Oferty biur nieruchomosci, bezposrednie oraz od deweloperów. Znajdz swój dom marzen razem z nami - otoDom.pl\">\n<meta property=\"og:url\" content=\"https://www.otodom.pl/pl/profil/agenci-nieruchomosci/marianna-boczko-ID30\">\n<meta property=\"og:type\" content=\"website\">",
"filename": "<head>",
"stacks": [
{
"id": "html",
"label": "HTML <head>",
"language": "html",
"filename": "<head>",
"code": "<meta property=\"og:description\" content=\"Najpopularniejszy serwis nieruchomosci. Sprzedaz i wynajem w kategoriach mieszkania, domy, dzialki, lokale uzytkowe. Oferty biur nieruchomosci, bezposrednie oraz od deweloperów. Znajdz swój dom marzen razem z nami - otoDom.pl\">\n<meta property=\"og:url\" content=\"https://www.otodom.pl/pl/profil/agenci-nieruchomosci/marianna-boczko-ID30\">\n<meta property=\"og:type\" content=\"website\">"
},
{
"id": "wordpress",
"label": "WordPress",
"language": "php",
"filename": "functions.php",
"code": "<?php\n// Quick Open Graph tags without a plugin (skip if Yoast / Rank Math is active)\nadd_action('wp_head', function () {\n if (!is_singular()) return;\n $post = get_queried_object();\n $title = get_the_title($post);\n $desc = get_the_excerpt($post) ?: wp_trim_words(strip_tags($post->post_content), 30);\n $image = get_the_post_thumbnail_url($post, 'large') ?: 'https://statics.otodom.pl/static/otodompl/naspersclassifieds-regional/verticalsre-atlas-web-otodompl/static/img/fb/fb-image200x200.png?t=20-11-09';\n $url = get_permalink($post);\n printf('<meta property=\"og:title\" content=\"%s\">' . \"\\n\", esc_attr($title));\n printf('<meta property=\"og:description\" content=\"%s\">' . \"\\n\", esc_attr($desc));\n printf('<meta property=\"og:image\" content=\"%s\">' . \"\\n\", esc_url($image));\n printf('<meta property=\"og:url\" content=\"%s\">' . \"\\n\", esc_url($url));\n echo '<meta property=\"og:type\" content=\"article\">' . \"\\n\";\n}, 5);"
},
{
"id": "nextjs",
"label": "Next.js",
"language": "typescript",
"filename": "app/page.tsx",
"code": "// Next.js App Router — Metadata API\nimport type { Metadata } from 'next';\n\nexport const metadata: Metadata = {\n title: \"Otodom: Ogloszenia Nieruchomosci, Mieszkania, Domy, Dzialki\",\n description: \"Najpopularniejszy serwis nieruchomosci. Sprzedaz i wynajem w kategoriach mieszkania, domy, dzialki, lokale uzytkowe. Oferty biur nieruchomosci, bezposrednie oraz od deweloperów. Znajdz swój dom marzen razem z nami - otoDom.pl\",\n openGraph: {\n title: \"Otodom: Ogloszenia Nieruchomosci, Mieszkania, Domy, Dzialki\",\n description: \"Najpopularniejszy serwis nieruchomosci. Sprzedaz i wynajem w kategoriach mieszkania, domy, dzialki, lokale uzytkowe. Oferty biur nieruchomosci, bezposrednie oraz od deweloperów. Znajdz swój dom marzen razem z nami - otoDom.pl\",\n url: \"https://www.otodom.pl/pl/profil/agenci-nieruchomosci/marianna-boczko-ID30\",\n images: [\"https://statics.otodom.pl/static/otodompl/naspersclassifieds-regional/verticalsre-atlas-web-otodompl/static/img/fb/fb-image200x200.png?t=20-11-09\"],\n type: 'website',\n },\n};"
}
]
},
{
"id": "add_schema_org",
"title": "Add Schema.org JSON-LD",
"description": "Structured data helps AI agents understand the type, author, and purpose of your content.",
"language": "html",
"code": "<script type=\"application/ld+json\">\n{\n \"@context\": \"https://schema.org\",\n \"@type\": \"WebPage\",\n \"name\": \"Otodom: Ogloszenia Nieruchomosci, Mieszkania, Domy, Dzialki\",\n \"description\": \"Najpopularniejszy serwis nieruchomosci. Sprzedaz i wynajem w kategoriach mieszkania, domy, dzialki, lokale uzytkowe. Oferty biur nieruchomosci, bezposrednie oraz od deweloperów. Znajdz swój dom marzen razem z nami - otoDom.pl\",\n \"url\": \"https://www.otodom.pl/pl/profil/agenci-nieruchomosci/marianna-boczko-ID30\",\n \"inLanguage\": \"pl\",\n \"isPartOf\": {\n \"@type\": \"WebSite\",\n \"name\": \"www.otodom.pl/\"\n }\n}\n</script>",
"filename": "<head>"
},
{
"id": "add_content_signals",
"title": "Add Content-Signal directives",
"description": "Content-Signal tells AI agents how they may use your content. The canonical location is robots.txt, but you can also expose it as an HTTP header from any stack.",
"language": "txt",
"code": "User-agent: *\nContent-Signal: search=yes, ai-input=yes, ai-train=no",
"filename": "/robots.txt",
"stacks": [
{
"id": "robots",
"label": "robots.txt",
"language": "txt",
"filename": "/robots.txt",
"code": "User-agent: *\nContent-Signal: search=yes, ai-input=yes, ai-train=no"
},
{
"id": "nginx",
"label": "Nginx",
"language": "nginx",
"filename": "server block",
"code": "# Inside your server { } block:\nadd_header Content-Signal \"search=yes, ai-input=yes, ai-train=no\" always;"
},
{
"id": "apache",
"label": "Apache",
"language": "apache",
"filename": ".htaccess",
"code": "# In .htaccess (or VirtualHost):\nHeader set Content-Signal \"search=yes, ai-input=yes, ai-train=no\""
},
{
"id": "wordpress",
"label": "WordPress",
"language": "php",
"filename": "functions.php",
"code": "<?php\n// In your theme's functions.php or a small mu-plugin\nadd_action('send_headers', function () {\n header('Content-Signal: search=yes, ai-input=yes, ai-train=no');\n});\n\n// Optional: also append the directive to the dynamic robots.txt\nadd_filter('robots_txt', function ($output) {\n return $output . \"\\nContent-Signal: search=yes, ai-input=yes, ai-train=no\\n\";\n}, 10, 1);"
},
{
"id": "nextjs",
"label": "Next.js",
"language": "typescript",
"filename": "middleware.ts",
"code": "// middleware.ts (Next.js 13+ App Router or Pages Router)\nimport { NextResponse } from 'next/server';\nexport function middleware() {\n const res = NextResponse.next();\n res.headers.set(\n 'Content-Signal',\n 'search=yes, ai-input=yes, ai-train=no'\n );\n return res;\n}\nexport const config = { matcher: '/:path*' };"
},
{
"id": "cloudflare",
"label": "Cloudflare Workers",
"language": "javascript",
"filename": "worker.js",
"code": "// Cloudflare Worker that proxies your origin and adds the header\nexport default {\n async fetch(request, env, ctx) {\n const res = await fetch(request);\n const newRes = new Response(res.body, res);\n newRes.headers.set(\n 'Content-Signal',\n 'search=yes, ai-input=yes, ai-train=no'\n );\n return newRes;\n },\n};"
},
{
"id": "express",
"label": "Express / Fastify",
"language": "javascript",
"filename": "server.js",
"code": "// Express\napp.use((req, res, next) => {\n res.setHeader('Content-Signal', 'search=yes, ai-input=yes, ai-train=no');\n next();\n});\n\n// Fastify\nfastify.addHook('onSend', (request, reply, payload, done) => {\n reply.header('Content-Signal', 'search=yes, ai-input=yes, ai-train=no');\n done();\n});"
}
]
},
{
"id": "add_markdown_negotiation",
"title": "Support Markdown for Agents",
"description": "Let AI agents request a clean Markdown version of any page via content negotiation, .md alternate URLs, link tags or Link headers.",
"language": "html",
"code": "<!-- Mechanism 3: link tag advertising the .md alternate -->\n<link rel=\"alternate\" type=\"text/markdown\" href=\"/page.md\">",
"filename": "<head>",
"stacks": [
{
"id": "html",
"label": "HTML <head>",
"language": "html",
"filename": "<head>",
"code": "<!-- Mechanism 3: link tag advertising the .md alternate -->\n<link rel=\"alternate\" type=\"text/markdown\" href=\"/page.md\">"
},
{
"id": "express",
"label": "Express",
"language": "javascript",
"filename": "server.js",
"code": "// Mechanisms 1 + 4: content negotiation + Link header\napp.get('/page', (req, res) => {\n res.setHeader('Vary', 'Accept');\n res.setHeader('Link', '</page.md>; rel=\"alternate\"; type=\"text/markdown\"');\n if ((req.headers.accept || '').includes('text/markdown')) {\n res.type('text/markdown; charset=utf-8');\n return res.send(renderMarkdown('page'));\n }\n res.render('page');\n});"
},
{
"id": "fastify",
"label": "Fastify",
"language": "javascript",
"filename": "server.js",
"code": "// Mechanisms 1 + 4: content negotiation + Link header\nfastify.get('/page', async (req, reply) => {\n reply.header('Vary', 'Accept');\n reply.header('Link', '</page.md>; rel=\"alternate\"; type=\"text/markdown\"');\n if ((req.headers.accept || '').includes('text/markdown')) {\n return reply.type('text/markdown; charset=utf-8').send(renderMarkdown('page'));\n }\n return reply.view('/page.ejs');\n});"
},
{
"id": "nextjs",
"label": "Next.js",
"language": "typescript",
"filename": "app/page/route.ts",
"code": "// Next.js App Router — Route Handler returning Markdown\nimport { NextRequest } from 'next/server';\nimport { renderMarkdown } from '@/lib/md';\nexport async function GET(req: NextRequest) {\n const accept = req.headers.get('accept') || '';\n if (accept.includes('text/markdown')) {\n return new Response(await renderMarkdown('page'), {\n headers: {\n 'Content-Type': 'text/markdown; charset=utf-8',\n 'Vary': 'Accept',\n },\n });\n }\n // Fall through to the page component\n return new Response(null, { status: 404 });\n}"
},
{
"id": "wordpress",
"label": "WordPress",
"language": "php",
"filename": "functions.php",
"code": "<?php\n// Mechanism 1: respond to Accept: text/markdown on the same URL\nadd_action('template_redirect', function () {\n if (!is_singular()) return;\n $accept = $_SERVER['HTTP_ACCEPT'] ?? '';\n if (strpos($accept, 'text/markdown') === false) return;\n header('Content-Type: text/markdown; charset=utf-8');\n header('Vary: Accept');\n $post = get_queried_object();\n echo \"# \" . get_the_title($post) . \"\\n\\n\";\n echo wp_strip_all_tags(apply_filters('the_content', $post->post_content));\n exit;\n});"
},
{
"id": "static",
"label": "Hugo / Jekyll / Astro",
"language": "txt",
"filename": "static/page.md",
"code": "# Mechanism 2: serve .md alongside .html\n# Hugo: place page.md in /static/ — built unchanged\n# Jekyll: drop page.md in /assets/ — copied as-is\n# Astro: src/pages/page.md.ts that exports a GET returning markdown\n\n# Then advertise with mechanism 3 in <head>:\n# <link rel=\"alternate\" type=\"text/markdown\" href=\"/page.md\">"
}
]
}
]
}
API를 사용하여 프로그래밍 방식으로 가져올 수 있습니다 (곧 출시)
이 JSON은 내부용입니다 — Markdown 및 llms.txt 파일과 달리 사이트에 업로드하기 위한 것이 아닙니다. 시간에 따른 점수 추적을 위한 기준값으로 저장하거나, 개발팀과 공유하거나, CI/CD 파이프라인에 통합하세요.
배지 삽입
이 배지를 사이트에 추가하세요. AI 준비도 점수가 변경되면 자동으로 업데이트됩니다.
<script src="https://agentready.md/badge.js" data-id="d638e1c1-6905-4d74-a294-c704acd2ac94" data-domain="www.otodom.pl"></script>
[](https://agentready.md/ko/r/d638e1c1-6905-4d74-a294-c704acd2ac94)
곧 출시: 전체 도메인 분석
전체 도메인을 크롤링하고, llms.txt를 생성하고, AI 준비도 점수를 시간에 따라 모니터링하세요. 대기자 명단에 등록하여 알림을 받으세요.