Skip to main content
Glama
bsmi021

MCP Webscan Server

by bsmi021

MCP 웹스캔 서버

대장간 배지

웹 콘텐츠 스캐닝 및 분석을 위한 모델 컨텍스트 프로토콜(MCP) 서버입니다. 이 서버는 웹 페이지에서 정보를 가져오고, 분석하고, 추출하는 도구를 제공합니다.

특징

  • 페이지 페칭 : 웹 페이지를 마크다운으로 변환하여 쉽게 분석할 수 있습니다.

  • 링크 추출 : 웹 페이지에서 링크를 추출하고 분석합니다.

  • 사이트 크롤링 : 콘텐츠를 발견하기 위해 웹사이트를 재귀적으로 크롤링합니다.

  • 링크 확인 : 웹 페이지에서 끊어진 링크 식별

  • 패턴 매칭 : 특정 패턴과 일치하는 URL 찾기

  • 사이트맵 생성 : 웹사이트용 XML 사이트맵 생성

Related MCP server: Fetch MCP Server

설치

Smithery를 통해 설치

Smithery를 통해 Claude Desktop용 Webscan을 자동으로 설치하려면:

지엑스피1

수동 설치

# Clone the repository
git clone <repository-url>
cd mcp-server-webscan

# Install dependencies
npm install

# Build the project
npm run build

용법

서버 시작

npm start

서버는 stdio 전송을 기반으로 실행되므로 Claude Desktop과 같은 MCP 클라이언트와 호환됩니다.

사용 가능한 도구

  1. fetch-page

    • 웹 페이지를 가져와서 마크다운으로 변환합니다.

    • 매개변수:

      • url (필수): 가져올 페이지의 URL입니다.

      • selector (선택 사항): 특정 콘텐츠를 타겟으로 하는 CSS 선택기입니다.

  2. extract-links

    • 웹 페이지에서 모든 링크와 텍스트를 추출합니다.

    • 매개변수:

      • url (필수): 분석할 페이지의 URL입니다.

      • baseUrl (선택 사항): 링크를 필터링할 기본 URL입니다.

      • limit (선택 사항, 기본값: 100): 반환할 링크의 최대 개수.

  3. crawl-site

    • 지정된 깊이까지 웹사이트를 재귀적으로 크롤링합니다.

    • 매개변수:

      • url (필수): 크롤링 시작 URL.

      • maxDepth (선택 사항, 기본값: 2): 최대 크롤링 깊이(0-5).

  4. check-links

    • 페이지에서 끊어진 링크를 확인합니다.

    • 매개변수:

      • url (필수): 링크를 확인할 URL입니다.

  5. find-patterns

    • 특정 패턴과 일치하는 URL을 찾습니다.

    • 매개변수:

      • url (필수): 검색할 URL입니다.

      • pattern (필수): URL을 일치시키기 위한 JavaScript 호환 정규식 패턴입니다.

  6. generate-site-map

    • 크롤링을 통해 간단한 XML 사이트맵을 생성합니다.

    • 매개변수:

      • url (필수): 사이트맵 크롤링을 위한 루트 URL입니다.

      • maxDepth (선택 사항, 기본값: 2): URL을 검색하기 위한 최대 크롤링 깊이(0-5).

      • limit (선택 사항, 기본값: 1000): 사이트맵에 포함할 URL의 최대 개수입니다.

Claude Desktop을 사용한 예시 사용

  1. Claude Desktop 설정에서 서버를 구성하세요.

{
  "mcpServers": {
    "webscan": {
      "command": "node",
      "args": ["path/to/mcp-server-webscan/build/index.js"], // Corrected path
      "env": {
        "NODE_ENV": "development",
        "LOG_LEVEL": "info" // Example: Set log level via env var
      }
    }
  }
}
  1. 대화에서 도구를 활용하세요:

Could you fetch the content from https://example.com and convert it to Markdown?

개발

필수 조건

  • 노드.js >= 18

  • 엔피엠

프로젝트 구조(리팩토링 후)

mcp-server-webscan/
├── src/
│   ├── config/
│   │   └── ConfigurationManager.ts
│   ├── services/
│   │   ├── CheckLinksService.ts
│   │   ├── CrawlSiteService.ts
│   │   ├── ExtractLinksService.ts
│   │   ├── FetchPageService.ts
│   │   ├── FindPatternsService.ts
│   │   ├── GenerateSitemapService.ts
│   │   └── index.ts
│   ├── tools/
│   │   ├── checkLinksTool.ts
│   │   ├── checkLinksToolParams.ts
│   │   ├── crawlSiteTool.ts
│   │   ├── crawlSiteToolParams.ts
│   │   ├── extractLinksTool.ts
│   │   ├── extractLinksToolParams.ts
│   │   ├── fetchPageTool.ts
│   │   ├── fetchPageToolParams.ts
│   │   ├── findPatterns.ts
│   │   ├── findPatternsToolParams.ts
│   │   ├── generateSitemapTool.ts
│   │   ├── generateSitemapToolParams.ts
│   │   └── index.ts
│   ├── types/
│   │   ├── checkLinksTypes.ts
│   │   ├── crawlSiteTypes.ts
│   │   ├── extractLinksTypes.ts
│   │   ├── fetchPageTypes.ts
│   │   ├── findPatternsTypes.ts
│   │   ├── generateSitemapTypes.ts
│   │   └── index.ts
│   ├── utils/
│   │   ├── errors.ts
│   │   ├── index.ts
│   │   ├── logger.ts
│   │   ├── markdownConverter.ts
│   │   └── webUtils.ts
│   ├── initialize.ts
│   └── index.ts    # Main server entry point
├── build/          # Compiled JavaScript (Corrected)
├── node_modules/
├── .clinerules
├── .gitignore
├── Dockerfile
├── LICENSE
├── mcp-consistant-servers-guide.md
├── package.json
├── package-lock.json
├── README.md
├── RFC-2025-001-Refactor.md
├── smithery.yaml
└── tsconfig.json

건물

npm run build

개발 모드

npm run dev

오류 처리

서버는 포괄적인 오류 처리를 구현합니다.

  • 잘못된 매개변수

  • 네트워크 오류

  • 콘텐츠 구문 분석 오류

  • URL 검증

모든 오류는 MCP 사양에 따라 올바르게 형식화되었습니다.

기여하다

  1. 저장소를 포크하세요

  2. 기능 브랜치를 생성합니다( git checkout -b feature/amazing-feature )

  3. 변경 사항을 커밋하세요( git commit -m 'Add some amazing feature' )

  4. 브랜치에 푸시( git push origin feature/amazing-feature )

  5. 풀 리퀘스트 열기

특허

MIT 라이센스 - 자세한 내용은 LICENSE 파일을 참조하세요.

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/bsmi021/mcp-server-webscan'

If you have feedback or need assistance with the MCP directory API, please join our Discord server