Skip to main content
Glama
bsmi021

MCP Webscan Server

by bsmi021

MCP 网络扫描服务器

铁匠徽章

用于 Web 内容扫描和分析的模型上下文协议 (MCP) 服务器。该服务器提供从网页获取、分析和提取信息的工具。

特征

  • 页面抓取:将网页转换为 Markdown 格式,方便分析

  • 链接提取:从网页中提取并分析链接

  • 网站爬取:递归爬取网站以发现内容

  • 链接检查:识别网页上的断开链接

  • 模式匹配:查找与特定模式匹配的 URL

  • 站点地图生成:为网站生成 XML 站点地图

Related MCP server: Fetch MCP Server

安装

通过 Smithery 安装

要通过Smithery自动安装 Claude Desktop 的 Webscan:

npx -y @smithery/cli install mcp-server-webscan --client claude

手动安装

# 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

    • 获取网页并将其转换为 Markdown。

    • 参数:

      • 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 (必需):与 JavaScript 兼容的正则表达式模式,用于匹配 URL。

  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?

发展

先决条件

  • Node.js >= 18

  • npm

项目结构(重构后)

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 许可证 - 详情请参阅许可证文件

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