사이트맵 MCP 서버
모든 URL에서 사이트맵을 가져오고, 파싱하고, 시각화하여 웹사이트 아키텍처를 파악하고 사이트 구조를 분석하세요. 숨겨진 페이지를 발견하고, 수동 탐색 없이 체계적인 계층 구조를 추출할 수 있습니다.
Claude Desktop용으로 즉시 사용 가능한 프롬프트 템플릿이 포함되어 있어, 이를 통해 웹사이트 분석, 사이트맵 상태 확인, URL 추출, 누락된 콘텐츠 찾기, URL 입력만으로 시각화 생성 등의 작업을 할 수 있습니다.
데모
사이트맵의 힘을 활용한 모든 웹사이트에 대한 질문에 대한 답변을 받아보세요.
도구 버튼 옆에 있는 "첨부" 버튼을 클릭하세요.
그런 다음 visualize_sitemap 선택합니다.
이제 windsurf.com에 접속해 보겠습니다.
그러면 사이트맵의 시각화를 볼 수 있습니다.
Related MCP server: Scrapezy
설치
uv가 설치되어 있는지 확인하세요.
Claude Desktop, Cursor 또는 Windsurf에 설치
claude_desktop_config.json , 커서 설정 등에 이 항목을 추가하세요.
지엑스피1
Claude가 실행 중이면 다시 시작하세요. 커서를 변경하려면 새로 고침을 누르거나 설정에서 MCP 서버를 활성화하세요.
Smithery를 통해 설치
Smithery를 통해 Claude Desktop용 사이트맵을 자동으로 설치하려면:
npx -y @smithery/cli install @mugoosse/sitemap --client claudeMCP 검사관
npx @modelcontextprotocol/inspector env TRANSPORT=stdio uvx sitemap-mcp-serverhttp://127.0.0.1:6274 에서 MCP Inspector를 열고 stdio 전송을 선택한 다음 MCP 서버에 연결합니다.
# Start the server
uvx sitemap-mcp-server
# Start the MCP Inspector in a separate terminal
npx @modelcontextprotocol/inspector connect http://127.0.0.1:8050http://127.0.0.1:6274 에서 MCP Inspector를 열고 sse transport를 선택한 후 MCP 서버에 연결합니다.
SSE 운송
SSE 전송을 사용하려면 다음 단계를 따르세요.
서버를 시작합니다:
uvx sitemap-mcp-serverMCP 클라이언트 구성(예: 커서):
{
"mcpServers": {
"sitemap": {
"transport": "sse",
"url": "http://localhost:8050/sse"
}
}
}지역 개발
소스에서 프로젝트를 빌드하고 실행하는 방법에 대한 지침은 DEVELOPERS.md 가이드를 참조하세요.
용법
도구
다음 도구는 MCP 서버를 통해 사용할 수 있습니다.
get_sitemap_tree - 웹사이트 URL에서 사이트맵 트리를 가져와서 구문 분석합니다.
인수:
url(웹사이트 URL),include_pages(선택 사항, 부울)반환: 사이트맵 트리 구조의 JSON 표현
get_sitemap_pages - 필터링 옵션을 사용하여 웹사이트 사이트맵의 모든 페이지를 가져옵니다.
인수:
url(웹사이트 URL),limit(선택 사항),include_metadata(선택 사항),route(선택 사항),sitemap_url(선택 사항),cursor(선택 사항)반환: 페이지 매김 메타데이터가 포함된 페이지의 JSON 목록
get_sitemap_stats - 웹사이트 사이트맵에 대한 통계를 가져옵니다.
인수:
url(웹사이트 URL)반환: 페이지 수, 수정 날짜, 하위 사이트맵 세부 정보를 포함한 사이트맵 통계가 포함된 JSON 객체
parse_sitemap_content - XML 또는 텍스트 콘텐츠에서 사이트맵을 직접 구문 분석합니다.
인수:
content(사이트맵 XML 콘텐츠),include_pages(선택 사항, 부울)반환: 구문 분석된 사이트맵의 JSON 표현
프롬프트
서버에는 Claude Desktop에서 템플릿으로 표시되는 즉시 사용 가능한 프롬프트가 포함되어 있습니다. 서버를 설치하면 "템플릿" 메뉴에서 다음 템플릿을 확인할 수 있습니다(메시지 입력란 옆의 + 아이콘 클릭).
사이트맵 분석 : 웹사이트 사이트맵의 포괄적인 구조 분석을 제공합니다.
사이트맵 상태 확인 : 사이트맵의 SEO 및 상태 측정 항목을 평가합니다.
사이트맵에서 URL 추출 : 사이트맵에서 특정 URL을 추출하고 필터링합니다.
사이트맵에서 누락된 콘텐츠 찾기 : 웹사이트 사이트맵의 콘텐츠 간격을 식별합니다.
사이트맵 구조 시각화 : 사이트맵 구조의 Mermaid.js 다이어그램 시각화를 생성합니다.
이러한 프롬프트를 사용하려면:
Claude Desktop의 메시지 입력 옆에 있는 + 아이콘을 클릭하세요.
목록에서 원하는 템플릿을 선택하세요
메시지가 표시되면 웹사이트 URL을 입력하세요
Claude는 적절한 사이트맵 분석을 실행합니다.
예시
전체 사이트맵 가져오기
{
"name": "get_sitemap_tree",
"arguments": {
"url": "https://example.com",
"include_pages": true
}
}필터링 및 페이지 매김을 사용하여 페이지 가져오기
경로별 필터링
{
"name": "get_sitemap_pages",
"arguments": {
"url": "https://example.com",
"limit": 100,
"include_metadata": true,
"route": "/blog/"
}
}특정 하위 사이트맵으로 필터링
{
"name": "get_sitemap_pages",
"arguments": {
"url": "https://example.com",
"limit": 100,
"include_metadata": true,
"sitemap_url": "https://example.com/blog-sitemap.xml"
}
}커서 기반 페이지 매김
서버는 대규모 사이트맵을 효율적으로 처리하기 위해 MCP 커서 기반 페이지 매김을 구현합니다.
초기 요청:
{
"name": "get_sitemap_pages",
"arguments": {
"url": "https://example.com",
"limit": 50
}
}페이지 번호가 포함된 응답:
{
"base_url": "https://example.com",
"pages": [...], // First batch of pages
"limit": 50,
"nextCursor": "eyJwYWdlIjoxfQ=="
}커서를 사용한 후속 요청:
{
"name": "get_sitemap_pages",
"arguments": {
"url": "https://example.com",
"limit": 50,
"cursor": "eyJwYWdlIjoxfQ=="
}
}더 이상 결과가 없으면 nextCursor 필드가 응답에서 사라집니다.
사이트맵 통계 가져오기
{
"name": "get_sitemap_stats",
"arguments": {
"url": "https://example.com"
}
}응답에는 전체 통계와 각 하위 사이트맵에 대한 자세한 통계가 모두 포함됩니다.
{
"total": {
"url": "https://example.com",
"page_count": 150,
"sitemap_count": 3,
"sitemap_types": ["WebsiteSitemap", "NewsSitemap"],
"priority_stats": {
"min": 0.1,
"max": 1.0,
"avg": 0.65
},
"last_modified_count": 120
},
"subsitemaps": [
{
"url": "https://example.com/sitemap.xml",
"type": "WebsiteSitemap",
"page_count": 100,
"priority_stats": {
"min": 0.3,
"max": 1.0,
"avg": 0.7
},
"last_modified_count": 80
},
{
"url": "https://example.com/blog/sitemap.xml",
"type": "WebsiteSitemap",
"page_count": 50,
"priority_stats": {
"min": 0.1,
"max": 0.9,
"avg": 0.5
},
"last_modified_count": 40
}
]
}이를 통해 MCP 클라이언트는 추가 조사가 필요한 하위 사이트맵을 파악할 수 있습니다. 그런 다음 get_sitemap_pages 의 sitemap_url 매개변수를 사용하여 특정 하위 사이트맵의 페이지를 필터링할 수 있습니다.
사이트맵 콘텐츠 직접 구문 분석
{
"name": "parse_sitemap_content",
"arguments": {
"content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?><urlset xmlns=\"http://www.sitemaps.org/schemas/sitemap/0.9\"><url><loc>https://example.com/</loc></url></urlset>",
"include_pages": true
}
}감사의 말
이 MCP 서버는 ultimate-sitemap-parser 라이브러리를 활용합니다.
Model Context Protocol Python SDK를 사용하여 구축됨
특허
이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 라이선스 파일을 참조하세요.