Aspire MCP Server 使用说明

项目简介

Aspire MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,专注于提供强大的 Web Scraping 功能。它利用 .NET 9 框架开发,旨在帮助用户通过 AI 工具高效、智能地抓取和分析网页内容。该服务器内置了 'WebContentTool' 和 'WebCrawlerService' 两个核心工具,可以轻松集成到现有的 .NET 生态系统中,为 LLM 客户端提供网页数据抓取能力。

主要功能点

  • AI 增强的网页抓取: 通过 MCP 协议提供 AI 工具,智能抓取和分析网页内容。
  • 易于集成: 基于 .NET 9 开发,方便集成到 .NET 应用环境。
  • 高效快速: 内置缓存和优化的 HTTP 处理,提升抓取速度。
  • 可扩展和定制: 可以轻松添加自定义的抓取逻辑、工具和 AI 集成。
  • WebContentTool: 抓取指定 URL 的 HTML 内容,自动清理 HTML 标签,提取主要内容,并支持缓存。
  • WebCrawlerService: 自动爬取网站,解析 'robots.txt' 和 Sitemap,抓取网站链接。

安装步骤

  1. 安装 .NET 9 SDK: 确保你的开发环境已安装 .NET 9 SDK。你可以从 官方网站 下载并安装。
  2. 克隆仓库: 使用 Git 克隆 'aspire-mcp' 仓库到本地。
    git clone https://github.com/IEvangelist/aspire-mcp.git
    cd aspire-mcp
  3. 构建项目: 使用 .NET CLI 构建项目。
    dotnet build
  4. 运行服务器: 在项目根目录下,运行服务器程序。
    dotnet run --project AspireMcp.Server
    服务器默认使用 Stdio 传输协议,并通过控制台输出日志。

服务器配置

MCP 客户端需要配置以下 JSON 格式信息以连接到 Aspire MCP Server。

{
  "serverName": "aspire-mcp-server",  // MCP 服务器的名称,客户端用于识别和调用
  "command": "dotnet",             // 启动 MCP 服务器的命令,这里使用 dotnet 运行 .NET 程序
  "args": [                         // 启动命令的参数
    "run",                          // 运行 .NET 项目的命令
    "--project",                    // 指定要运行的项目
    "AspireMcp.Server"             // 项目文件路径,指向 AspireMcp.Server.csproj 文件所在目录
  ]
}

配置参数注释:

  • 'serverName': 自定义的服务器名称,在 MCP 客户端配置中用于标识此服务器。
  • 'command': 运行服务器端程序的命令,对于 .NET 应用,通常是 'dotnet'。
  • 'args': 传递给 'command' 的参数列表。
    • '"run"': .NET CLI 命令,用于运行项目。
    • '"--project"': 'dotnet run' 命令的参数,指定项目路径。
    • '"AspireMcp.Server"': 'AspireMcp.Server' 项目的相对路径,确保在仓库根目录下执行命令时能找到项目文件。

注意: 请确保 MCP 客户端能够执行 'dotnet' 命令,并且 .NET 9 SDK 已正确安装在运行环境中。

基本使用方法

  1. 启动 Aspire MCP Server: 按照上述步骤运行服务器。服务器启动后,将监听来自 MCP 客户端的请求。
  2. 配置 MCP 客户端: 在 MCP 客户端中,配置上述 JSON 信息,指定连接到 'aspire-mcp-server'。
  3. 调用工具: 通过 MCP 客户端,可以调用服务器提供的工具,例如 'WebContentTool'。
    • 调用 'WebContentTool.ScrapeContentAsync' 工具并传入 URL 参数,即可抓取指定网页的内容。
    • 客户端可以根据服务器声明的工具描述和参数,构建 MCP 请求并发送给服务器,获取抓取结果。

示例 (MCP 客户端请求 - 假设使用 JSON-RPC over Stdio):

客户端发送 JSON-RPC 请求调用 'WebContentTool.ScrapeContentAsync' 工具:

{
  "jsonrpc": "2.0",
  "method": "Tool.WebContentTool.ScrapeContentAsync",
  "params": {
    "url": "https://www.example.com"
  },
  "id": 1
}

服务器收到请求后,会抓取 'https://www.example.com' 的内容,并将抓取结果作为 JSON-RPC 响应返回给客户端。

示例 (MCP 服务器响应 - 成功抓取):

{
  "jsonrpc": "2.0",
  "result": "抓取的网页内容...",
  "id": 1
}

示例 (MCP 服务器响应 - 抓取失败):

{
  "jsonrpc": "2.0",
  "error": {
    "code": -32603,
    "message": "Error scraping https://www.example.com: ...",
    "data": null
  },
  "id": 1
}

通过以上步骤,你可以成功部署和使用 Aspire MCP Server 提供的网页抓取功能。

信息

分类

网页与API