XPath MCP Server

XPath MCP Server

site icon
2025.03.30 0
JavaScriptXML处理HTML解析数据提取开发效率
mcp-xpath 是一个用于执行 XPath 查询的 MCP 服务器,主要用于处理 XML 和 HTML 内容。它提供了两种工具:`xpath` 用于直接查询 XML 内容,`xpathwithurl` 用于从 URL 获取内容并执行 XPath 查询。该服务适用于需要从 XML 或 HTML 文档中提取特定数据的场景,如网页抓取、数据解析等。
View on GitHub

Overview

基本能力

产品定位

mcp-xpath 是一个专门用于执行 XPath 查询的 MCP 服务器,主要用于处理 XML 和 HTML 内容。

核心功能

  1. xpath工具
  2. 使用 XPath 表达式查询 XML 内容
  3. 输入参数:
    • xml (string): 要查询的 XML 内容
    • query (string): 要执行的 XPath 查询
    • mimeType (可选, string): MIME 类型(如 text/xml, application/xml, text/html, application/xhtml+xml)
  4. 返回:XPath 查询结果作为字符串

  5. xpathwithurl工具

  6. 从 URL 获取内容并使用 XPath 表达式查询
  7. 输入参数:
    • url (string): 要获取 XML/HTML 内容的 URL
    • query (string): 要执行的 XPath 查询
    • mimeType (可选, string): MIME 类型(如 text/xml, application/xml, text/html, application/xhtml+xml)
  8. 返回:XPath 查询结果作为字符串

适用场景

  1. 从 XML 文档中提取特定数据
  2. 从 HTML 页面中抓取链接或其他元素
  3. 从网页 URL 直接获取并解析内容

工具列表

  1. xpath:用于直接查询 XML 内容
  2. xpathwithurl:用于从 URL 获取内容并查询

使用教程

使用依赖

  1. 确保已安装 Node.js 和 npm

安装教程

  1. 通过 Smithery 安装:
npx -y @smithery/cli install @thirdstrandstudio/mcp-xpath --client claude
  1. 手动安装:
# 安装依赖
npm install

# 构建包
npm run build

调试方式

  1. 开发模式启动服务器:
npm start
  1. 使用示例代码测试功能:
// 查询 XML 内容
const result = await callTool("xpath", {
  xml: "<root><item>value1</item><item>value2</item></root>",
  query: "//item/text()",
  mimeType: "text/xml"
});

// 查询 HTML 内容
const result = await callTool("xpath", {
  xml: "<html><body><a href='link1.html'>Link 1</a><a href='link2.html'>Link 2</a></body></html>",
  query: "//a/@href",
  mimeType: "text/html"
});

// 查询 URL 内容
const result = await callTool("xpathwithurl", {
  url: "https://example.com",
  query: "//a/@href",
  mimeType: "text/html"
});

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。