Token导航 LogoToken导航TokenDH.com
MCP Data Fetch Server logo
浏览器工具未说明官方级别未说明来源级核验

MCP Data Fetch Server

MCP Server

MCP Data Fetch Server 是一个安全的沙盒服务器,通过模型控制协议(MCP)抓取网页内容并提取数据,不执行JavaScript。

工具数

0

提示词数

0

GitHub Stars

2

资源数

0
浏览器自动化Python数据提取Session认证

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

undici77

提供方

undici77

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

📂 MCP数据提取服务器

MCP数据提取服务器 是一个安全的沙盒服务器,通过 模型控制协议(MCP)不执行JavaScript。

______________________________________________________________________

目录

- initialize - tools/list - tools/call

- fetch_webpage - extract_links - - get_page_metadata - check_url

______________________________________________________________________

🎯 特性

  • 安全网页获取 –删除脚本、iframe和cookie横幅;没有JavaScript执行。
  • 丰富的数据提取 –检索链接、元数据、打开 图形/推特卡和可下载资源。
  • 安全文件下载 -沙盒缓存中的大小限制、文件名净化和路径遍历保护。
  • 内置缓存 –可选的缓存目录可减少重复的网络调用。
  • 快速注射检测 –验证URL并获取恶意指令的内容。

______________________________________________________________________

📦 安装和快速启动

# Clone the repository (or copy the MCPDataFetchServer.1 folder)
git clone https://github.com/undici77/MCPDataFetchServer.git
cd MCPDataFetchServer

# Make the startup script executable
chmod +x run.sh

# Run the server, pointing to a sandboxed working directory
./run.sh -d /path/to/working/directory
📌 三步概述\ 1.️⃣ 该脚本创建虚拟环境并安装依赖项。\ 2.️⃣ 它准备一个缓存文件夹(.fetch_cache)在项目根目录内。\ 3️⃣ main.py 启动MCP服务器,监听 *stdin/stdout* 对于JSON-RPC请求。

______________________________________________________________________

⚙️ 命令行选项

选项描述
-d, --working-dir通往 沙盒工作目录 其中所有文件操作都受到限制(默认值: ~/.mcp_datafetch).
-c, --cache-dir名称 缓存子目录 相对于工作目录(默认值: cache).
-h, --help显示帮助消息并退出。

______________________________________________________________________

🤝 与LM集成 工作室 *(或任何兼容MCP的客户端)*

将条目添加到您的 mcp.json 配置使LM Studio可以自动启动服务器。

{
  "mcpServers": {
    "datafetch": {
      "command": "/absolute/path/to/MCPDataFetchServer.1/run.sh",
      "args": [
        "-d",
        "/absolute/path/to/working/directory"
      ],
      "env": { "WORKING_DIR": "." }
    }
  }
}
📌 提示: 确保 run.sh 可执行(chmod +x …)并且虚拟环境可以在首次启动时安装所需的Python包。

______________________________________________________________________

📡 MCP API概述

所有通信如下 JSON-RPC 2.0 超过 *stdin/stdout*.

initialize

请求:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "initialize",
  "params": {}
}

响应包含协议版本、服务器功能和基本元数据(例如名称 =mcp-datafetch-server,版本 =2.1.0).

tools/list

请求:

{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tools/list",
  "params": {}
}

答复: { "tools": [ …tool definitions… ] }每个定义包括 name, description 和a 输入模式 (JSON 模式)。

tools/call

通用请求形状(替换 `` 以及必要的论据):

{
  "jsonrpc": "2.0",
  "id": 3,
  "method": "tools/call",
  "params": {
    "name": "",
    "arguments": { … }
  }
}

服务器根据工具的模式验证请求,执行操作,并返回 ToolResult 包含一个或多个 内容块.

______________________________________________________________________

🛠️ 可用工具

fetch_webpage

  • 安全地获取网页,并以请求的格式返回干净的内容。
名称类型必填描述
urlstring✅ (无默认值)要获取的URL(仅限http/https).
formatstring❌ (markdown)输出格式-其中之一 markdown, text,或 html.
include_linksboolean❌ (true)是否追加提取的链接列表。
include_imagesboolean❌ (false)是否在输出中列出图像URL。
remove_bannersboolean❌ (true)尝试删除cookie横幅和弹出窗口。

示例

{
  "jsonrpc": "2.0",
  "id": 10,
  "method": "tools/call",
  "params": {
    "name": "fetch_webpage",
    "arguments": {
      "url": "https://example.com/article",
      "format": "markdown",
      "include_links": true,
      "include_images": false,
      "remove_banners": true
    }
  }
}

*注:* 该工具对HTML进行净化,删除脚本/iframe,并在返回内容之前检查提示注入模式。

______________________________________________________________________

extract_links

  • 从页面中提取并分类所有超链接。
名称类型必填描述
urlstring✅ (无默认值)要分析的页面的URL。
filterstring❌ (all)仅返回 all, internal, external,或 resources.

示例

{
  "jsonrpc": "2.0",
  "id": 11,
  "method": "tools/call",
  "params": {
    "name": "extract_links",
    "arguments": {
      "url": "https://example.com/blog",
      "filter": "internal"
    }
  }
}

*注:* 链接分类为 内部的 (同一域名)或 外部的;资源链接(图像、PDF…)可以通过以下方式过滤 resources.

______________________________________________________________________

download_file

  • 安全地将远程文件下载到沙盒缓存目录中。
名称类型必填描述
urlstring✅ (无默认值)指向文件的直接URL。
filenamestring❌ (自动生成)所需文件名;将被净化并强制进入缓存目录。

示例

{
  "jsonrpc": "2.0",
  "id": 12,
  "method": "tools/call",
  "params": {
    "name": "download_file",
    "arguments": {
      "url": "https://example.com/files/report.pdf",
      "filename": "report_latest.pdf"
    }
  }
}

*注:* 服务器强制执行 100 MB 下载限制,根据被阻止的域/扩展验证URL,并返回工作目录内的相对路径以供跨代理访问。

______________________________________________________________________

get_page_metadata

  • 提取结构化元数据(标题、描述、打开 图形、推特卡片)。
名称类型必填描述
urlstring✅ (无默认值)要检查的页面的URL。

示例

{
  "jsonrpc": "2.0",
  "id": 13,
  "method": "tools/call",
  "params": {
    "name": "get_page_metadata",
    "arguments": { "url": "https://example.com/product/42" }
  }
}

*注:* 该工具返回一个格式化的文本块,其中包含标题、描述、关键字、打开 图形属性和推特卡片字段。

______________________________________________________________________

check_url

  • 执行轻量级HEAD请求以报告状态代码、标头和大小,而无需下载正文。
名称类型必填描述
urlstring✅ (无默认值)要探测的URL。

示例

{
  "jsonrpc": "2.0",
  "id": 14,
  "method": "tools/call",
  "params": {
    "name": "check_url",
    "arguments": { "url": "https://example.com/resource.zip" }
  }
}

*注:* 响应包括重定向后的最终URL、简洁的状态摘要(✅ OK或⚠️ 错误),以及所选的HTTP标头,例如 Content‑TypeContent‑Length.

______________________________________________________________________

🔐 安全功能

  • 路径遍历保护 –所有文件操作都限制在沙盒中 *工作目录*.
  • 快速注射检测 在URL中获取HTML并生成内容。
  • 被阻止的域和扩展 (本地主机、私有IP范围、可执行/脚本文件)。
  • 内容大小限制 –最大值 50 MB用于页面提取,最大值 100 MB用于文件下载。
  • HTML净化 –删除 `, `,事件处理程序和其他风险元素。
  • Cookie/横幅处理 –在获取过程中可选择删除同意横幅和弹出窗口。

______________________________________________________________________

*©2025 Undici77-保留所有权利。*

目录标签

目录标签

浏览器自动化Python数据提取Session认证网页抓取本地部署安全沙盒JSON-RPCMCP协议

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

session

部署方式(deploymentType,部署类型)

remote-capable

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明sessionremote-capable

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP