mcp-xpath

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Offers direct Node.js execution capabilities for the MCP server, with configuration options for connecting the XPath functionality to Node.js environments.

  • Enables execution of XPath queries on XML content, allowing content extraction and transformation from XML documents with support for various MIME types including text/xml and application/xml.

XPath MCP Server

MCP Server for executing XPath queries on XML content.

Tools

  1. xpath
    • Query XML content using XPath expressions
    • Inputs:
      • xml (string): The XML content to query
      • query (string): The XPath query to execute
      • mimeType (optional, string): The MIME type (e.g. text/xml, application/xml, text/html, application/xhtml+xml)
    • Returns: The result of the XPath query as a string
  2. xpathwithurl
    • Fetch content from a URL and query it using XPath expressions
    • Inputs:
      • url (string): The URL to fetch XML/HTML content from
      • query (string): The XPath query to execute
      • mimeType (optional, string): The MIME type (e.g. text/xml, application/xml, text/html, application/xhtml+xml)
    • Returns: The result of the XPath query as a string

Installation

Installing via Smithery

To install mcp-xpath for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @thirdstrandstudio/mcp-xpath --client claude
# Install dependencies npm install # Build the package npm run build

Setup

Usage with Claude Desktop

Add the following to your claude_desktop_config.json:

npx

{ "mcpServers": { "xpath": { "command": "npx", "args": [ "@thirdstrandstudio/mcp-xpath" ] } } }

Direct Node.js

{ "mcpServers": { "xpath": { "command": "node", "args": [ "/path/to/mcp-xpath/dist/index.js" ] } } }

Replace /path/to/mcp-xpath with the actual path to your repository.

Examples

Query XML content

// Select all <item> elements from XML const result = await callTool("xpath", { xml: "<root><item>value1</item><item>value2</item></root>", query: "//item/text()", mimeType: "text/xml" });

Query HTML content

// Get all links from 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" });

Query URL content

// Get all links from a webpage const result = await callTool("xpathwithurl", { url: "https://example.com", query: "//a/@href", mimeType: "text/html" });

Development

# Install dependencies npm install # Start the server in development mode npm start

License

This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.

-
security - not tested
A
license - permissive license
-
quality - not tested

MCP Server for executing XPath queries on XML content

  1. Tools
    1. Installation
      1. Installing via Smithery
    2. Setup
      1. Usage with Claude Desktop
    3. Examples
      1. Query XML content
      2. Query HTML content
      3. Query URL content
    4. Development
      1. License
        ID: wdi74fq55l