REA 深度研究报告 · 当逆向工程被 Agent 化HTML
从 1513 星到 11 万星的六天里,REA 到底做了什么?本报告逐层拆开这个逆向工程 Agent 编排层的架构、16 类目标能力边界、证据强度与中美法律红线,并把星标曲线、npm 装机量、fork 比率与代码实现交叉核对,分清真实贡献与注意力泡沫。
从 1513 星到 11 万星的六天里,REA 到底做了什么?本报告逐层拆开这个逆向工程 Agent 编排层的架构、16 类目标能力边界、证据强度与中美法律红线,并把星标曲线、npm 装机量、fork 比率与代码实现交叉核对,分清真实贡献与注意力泡沫。
本文档主要介绍了 DXT (桌面扩展) 的开发指南,它是一种将 MCP 服务器 转换为可分发扩展的工具。文档详述了如何使用 DXT 工具来 初始化、验证和打包 扩展,并提供了 目录结构示例。此外,还强调了在打包 Python 依赖项时需要注意的 跨平台兼容性问题,特别是在不同架构(如 arm64 macOS 与 x86_64 Linux)之间。最终目标是创建一个 .dxt 文件,其中包含所有必需的服务器文件和元数据,以便于分发和管理。

graph TD
A[DXT扩展] -->|打包| B(calculator-mcp-server)
B -->|元数据和配置| C[manifest.json]
B -->|实现| D[server/*.py]
B -->|依赖库| E[server/lib/]
B -->|图标| F[icon.png]
G[MCPHub] -->|运行| H[MCP Servers]
H -->|包含| B
H -->|管理| I[其他 MCP Servers]
J[开发者] -->|开发| B
J -->|使用| K[DXT工具]
K -->|初始化| C
K -->|打包| A
M[用户] -->|上传/安装 DXT扩展| G
P[MCP客户端] -->|调用| G
M[用户] -->|使用| P
style A fill:#f9f,stroke:#333
style G fill:#bbf,stroke:#333
style B fill:#9f9,stroke:#333
style K fill:#ff9,stroke:#333
style P fill:#ccf,stroke:#333
DXT 的核心是包含您的整个 MCP 服务器和 manifest.json 的简单 zip 文件。因此,将本地 MCP 服务器转换为扩展非常直接:您只需将所有必需文件放入一个文件夹,创建一个 manifest.json,然后创建一个压缩包。
DXT 工具
用于构建桌面扩展(Desktop Extensions)的工具。
安装
npm install -g @anthropic-ai/dxt
检查版本
dxt --version
0.2.0
dxt 命令
init [选项] [目录]:创建一个新的 DXT 扩展清单validate <清单文件>:验证 DXT 清单文件pack [目录] [输出文件]:将目录打包成 DXT 扩展unpack <dxt文件> [输出目录]:解压 DXT 扩展文件sign [选项] <dxt文件>:签署 DXT 扩展文件verify <dxt文件>:验证 DXT 扩展文件的签名info <dxt文件>:显示 DXT 扩展文件的信息unsign <dxt文件>:从 DXT 扩展文件中移除签名help [命令]:显示指定命令的帮助信息本文档详细介绍了 Docker AI 的新功能,旨在通过集成人工智能提升开发者的体验。主要亮点包括 Docker Model Runner,它简化了 AI 模型的管理和部署,支持从各种注册表拉取和运行模型,并通过兼容 OpenAI 的 API 提供服务。此外,MCP Toolkit 实现了容器化 MCP 服务器的无缝设置和管理,而 Ask Gordon 则作为嵌入式 AI 助手,在 Docker Desktop 和 CLI 中提供上下文帮助,包括改进 Dockerfile 和故障排除等。这些功能共同旨在简化 AI 驱动型应用程序的开发和部署。

Docker AI 配置

Docker Desktop 和命令行(CLI)中启用 “Ask Gordon” 功能。MCP Toolkit” 功能。
桌面扩展(DXT)是一种 zip 格式的软件包,旨在简化本地 MCP 服务器的安装和分发。它类似于其他应用程序扩展,通过包含一个本地 MCP 服务器及其功能的 manifest.json 文件,允许用户实现一键安装。该项目不仅提供扩展规范和用于创建 DXT 文件的 CLI 工具,还开源了 Claude for macOS and Windows 中用于加载和验证 DXT 扩展的代码,旨在为 MCP 服务器构建一个开放且可移植的生态系统。开发者只需将 MCP 服务器文件、manifest.json 放入文件夹并打包成 .dxt 文件,即可轻松创建扩展,从而方便地在支持 DXT 的应用程序中运行本地 AI 工具。
桌面扩展 (.dxt) 是一种 zip 压缩包,其中包含一个本地 MCP 服务器和一个 manifest.json 文件,该文件描述了服务器及其功能。其格式在理念上类似于 Chrome 扩展 (.crx) 或 VS Code 扩展 (.vsix),使用户能够一键安装本地 MCP 服务器。
本仓库提供三个组件:MANIFEST.md 中的扩展规范,一个用于创建扩展的 CLI 工具(参见 CLI.md),以及 Claude for macOS and Windows 用于加载和验证 DXT 扩展的代码 (src/index.ts)。
该文档概述了 DXT Manifest.json 规范,这是一个用于定义扩展元数据和配置的JSON文件标准。它详细说明了 manifest.json 文件的结构,包括 必填字段 如版本、名称、作者和服务器配置,以及 可选字段 如显示名称、描述、存储库信息和屏幕截图。此外,规范还涵盖了 兼容性要求(针对客户端、平台和运行时)、服务器配置(支持Python、Node.js和二进制类型,并允许平台特定覆盖和变量替换),以及 用户可配置选项 的定义和传递方式。最后,文档解释了如何声明扩展提供的 工具和提示,并支持动态生成这些功能。
Manifest 结构
manifest.json 文件包含所有扩展的元数据和配置。大多数字段是可选的。
一个只包含必填字段的基本 manifest.json 如下所示:
该文档详细介绍了如何使用 FastMCP 框架来构建和集成计算器 MCP 服务器与客户端。它首先指导用户初始化并设置开发环境,包括创建虚拟环境和安装 FastMCP。接着,文档展示了MCP 服务器的开发过程,通过 main.py 文件定义了加、减、乘、除、幂等计算工具,并配置了项目元数据文件 pyproject.toml。此外,文档还提供了构建和发布服务器到 PyPI 的步骤,以及运行 MCP 服务器的方法,包括使用 MCP Inspector 进行调试和通过 FastMCP CLI 运行。最后,文档展示了MCP 客户端的开发,演示了客户端如何调用服务器上的工具,并深入探讨了将 MCP 客户端与 OpenAI 集成,实现通过自然语言与计算器服务器进行交互的能力。
创建 MCP 服务器
初始化
uv init calculator-mcp-server
cd calculator-mcp-server
创建虚拟环境
uv venv
Using CPython 3.10.9 interpreter at: /opt/miniconda/bin/python3.10
Creating virtual environment at: .venv
Activate with: source .venv/bin/activate
激活虚拟环境
source .venv/bin/activate
本文档指导用户构建一个本地 PyPI 源,以便持久化存储 Python 包并进行离线安装。接着,文档说明了自定义 MCPHub 配置,包括定义 MCP 服务器市场中的服务(例如:mcp-server-time, calculator-mcp-server)以及调整 MCPHub 自身的运行时设置,例如指定本地 PyPI 源和用户认证信息。
架构图

graph TD
subgraph Docker Host
A[Local PyPI Server] -->|Serves| B[MCPHub]
B -->|Stores Data| C[PostgreSQL]
B -->|Reads Config| D[Custom Config Files]
end
subgraph A[Local PyPI Server]
A1[pypiserver Container] --> A2[./pypi_packages Volume]
end
subgraph B[MCPHub]
B1[mcphub Container] --> B2[Registry Volume]
B1 --> B3[servers.json]
B1 --> B4[mcp_settings.json]
B1 --> B5[pip.conf]
end
subgraph C[PostgreSQL]
C1[pgvector Container] --> C2[./postgres Volume]
end
subgraph D[Custom Config Files]
D1[servers.json] --> D2[Server Marketplace]
D3[mcp_settings.json] --> D4[Runtime Settings]
D5[pip.conf] --> D6[PyPI Config]
end
A -->|Fallback to| E[Official PyPI]
B -->|Depends On| A
B -->|Depends On| C
搭建本地 PyPI 源
拉取 pypiserver 镜像
docker pull pypiserver/pypiserver
创建存储 Python 包的目录
Docker 容器是隔离的,容器内的数据默认会随着容器的删除而丢失。为了持久化你的 Python 包,你需要将宿主机上的一个目录挂载到容器内部。
mkdir pypi_packages
下载 mcp-server-time 及其依赖包
把需要部署的 MCP 服务器及其依赖包存储到 pypi_packages 目录中,以便在内网环境中使用。
pip download mcp-server-time --dest ./pypi_packages
最好到 mcphub 容器中进行下载
pip download calculator-mcp-server --dest /app/registry -i https://pypi.org/simple/ --resume-retries 3
本文档重点介绍了如何在内网(离线)集成和配置一个名为 "mcp-server-time" 的特定 MCP 服务器。首先指导用户如何 获取 MCPHub 容器的 Python 环境信息,包括版本和平台标签,以便下载兼容的 Python 包。接着,文档详细阐述了如何使用 pip download 命令 下载服务器及其依赖包,并解释了各个命令参数的用途。最后,展示了如何通过 编辑 custom/servers.json 和 custom/mcp_settings.json 文件 来自定义 MCP 服务器市场配置和运行时设置,并给出了 Docker Compose 配置示例,以实现自定义配置的替换并部署。
这里使用 mcp-server-time 作为示例。
查看 MCPHub 容器的 Python 环境信息(版本和平台)
进入 MCPHub 容器
docker exec -it mcphub bash
安装 packaging 库
pip install packaging
编辑 get_info.py
本文档介绍了 MCPHub,一个用于管理和扩展 Model Context Protocol (MCP) 服务器的聚合平台。它通过将多个 MCP 服务器组织成灵活的流式 HTTP (SSE) 端点来简化操作,并支持按需访问单个或分组服务器。MCPHub 提供了包括广泛服务器兼容性、集中式管理控制台、热插拔配置以及基于 JWT 和 bcrypt 的安全认证机制等核心功能,并且支持 Docker 部署以实现快速启动。用户可以通过其直观的 Web UI 监控服务器状态,管理访问权限,并配置 GitHub 或 GitLab 等特定服务。此外,文档还详细说明了各种可流式传输的 HTTP 和 SSE 端点,以及如何在 MCP 客户端(例如 Cline)中配置和使用 MCPHub。
MCPHub 简介
MCPHub 通过将多个 MCP(Model Context Protocol)服务器组织为灵活的流式 HTTP(SSE)端点,简化了管理与扩展工作。系统支持按需访问全部服务器、单个服务器或按场景分组的服务器集合。
🚀 功能亮点
开发协议
有效的 MCP 服务器开发的核心是遵循结构化的协议。该协议通过位于 MCP 工作目录根目录(/Users/your-name/Documents/Cline/MCP)中的 .clinerules 文件实现。
使用 .clinerules 文件
.clinerules 文件是一个特殊的配置文件,Cline 会在放置该文件的目录中工作时自动读取。这些文件:
以下是应放置在 .clinerules 文件中的完整 MCP 服务器开发协议:
❓ 什么是 MCP 服务器?
可以把 MCP 服务器想象成给 Cline 提供额外功能的特殊助手!它们让 Cline 能够完成像获取网页或处理文件这样的酷炫功能。
⚠️ 重要提示:系统要求
停一下!在继续之前,你必须验证以下要求:
必需软件
node --versionpython --versionpip install uvuv --version❗ 如果以上任何命令失败或显示较旧的版本,请在继续之前进行安装/更新!
⚠️ 如果遇到其他错误,请参见下方的"故障排除"部分。
🎯 快速步骤(仅在满足要求后执行!)
1. 🛠️ 安装你的第一个 MCP 服务器
MCP Server 标签Edit MCP Settings 按钮Windows 系统:
使用 Cline 从零开始构建自定义 MCP 服务器:综合指南
本指南提供了使用 Cline 的强大 AI 功能从零开始构建自定义 MCP (Model Context Protocol) 服务器的全面演示。示例将通过构建一个"GitHub 助手服务器"来说明这个过程。
理解 MCP 和 Cline 在构建服务器中的作用
什么是 MCP?
模型上下文协议(MCP)充当了像 Claude 这样的大型语言模型(LLMs)与外部工具和数据之间的桥梁。MCP 包含两个关键组件:
当你有一个 MCP 兼容的聊天界面(如 Claude Desktop)时,这种设置很有用,因为它可以利用这些服务器来访问信息和执行操作。
为什么使用 Cline 创建 MCP 服务器?
Cline 通过利用其 AI 功能简化了构建和集成 MCP 服务器的过程:
npm run build 这样的命令来编译和准备服务器。cline_mcp_settings.json 文件中。开发
这是第一次开发 MCP Server,想着使用智能编码工具(GitHub Copilot、Cursor、Trae)进行氛围编程,发现真不容易,Claude 3.7 sonnet 效果不错,在 GitHub Copilot 没用多长时间超限制了;Cursor 没有达到之前那种随心的效果;Trae 要排长队,太有挫败感了。于是,开始了以人编码为主,大模型辅助的开发过程。
MCP Server 的工作流程
创建 RAGFlow MCP Server 项目
uvx create-mcp-server \
--path ragflow-mcp-server \
--name ragflow-mcp-server \
--version 0.1.0 \
--description "RAGFlow MCP Server" \
--no-claudeapp
cd ragflow-mcp-server
uv sync --dev --all-extras
uv add ragflow-sdk
下载 MCP 开发文档和 RAGFlow Python API 文档
本页展示了各种模型上下文协议(MCP)服务器,这些服务器展示了该协议的功能和多样性。这些服务器使大型语言模型(LLM)能够安全地访问工具和数据源。
参考实现
这些官方参考服务器展示了核心 MCP 功能和 SDK 用法:
数据和文件系统
开发工具
Web 和浏览器自动化
生产力和通信
AI 和专业工具 EverArt - 使用各种模型的 AI 图像生成 Sequential Thinking -
MCP 服务器创建工具
创建无需构建配置的 模型上下文协议 (MCP) 服务器项目。
快速概览
# 使用 uvx (推荐)
uvx create-mcp-server
# 或者使用 pip
pip install create-mcp-server
create-mcp-server
您无需手动安装或配置任何依赖项。 该工具将设置创建 MCP 服务器所需的一切。
创建服务器
您需要在您的机器上安装 UV >= 0.4.10。
要创建新服务器,请运行以下任一命令:
使用 uvx (推荐)
uvx create-mcp-server
使用 pip
pip install create-mcp-server
create-mcp-server
它将引导您创建一个新的 MCP 服务器项目。 完成后,您将拥有一个具有以下结构的新目录:
my-server/
├── README.md
├── pyproject.toml
└── src/
└── my_server/
├── __init__.py
├── __main__.py
└── server.py
没有配置或复杂的文件夹结构,只有运行服务器所需的文件。
安装完成后,您可以启动服务器:
cd my-server
uv sync --dev --all-extras
uv run my-server
特性
Cline 和模型上下文协议 (MCP) 服务器:增强 AI 能力
快速链接:
本文档解释了模型上下文协议 (MCP) 服务器的功能以及 Cline 如何帮助构建和使用它们。
概述
MCP 服务器充当大型语言模型 (LLM)(如 Claude)与外部工具或数据源之间的中介。它们是向 LLM 提供功能的小程序,使其能够通过 MCP 与外部世界交互。MCP 服务器本质上就像 LLM 可以使用的 API。
核心概念
MCP 服务器定义了一组"工具",即 LLM 可以执行的函数。这些工具提供了广泛的功能。
MCP 的工作原理:
使用场景
MCP 服务器的潜力非常广阔。它们可以用于多种用途。
以下是 MCP 服务器的一些具体使用示例:
没有找到匹配的文章