XPath MCP Server
Execute XPath queries on XML content.
XPath MCP Server
MCP Server for executing XPath queries on XML content.
Tools
-
xpath- Query XML content using XPath expressions
- Inputs:
xml(string): The XML content to queryquery(string): The XPath query to executemimeType(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
-
xpathwithurl- Fetch content from a URL and query it using XPath expressions
- Inputs:
url(string): The URL to fetch XML/HTML content fromquery(string): The XPath query to executemimeType(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.
Related Servers
Web-curl
Fetch, extract, and process web and API content. Supports resource blocking, authentication, and Google Custom Search.
MCP Go Colly Crawler
A web crawling framework that integrates the Model Context Protocol (MCP) with the Colly web scraping library.
Cloudflare Playwright
Control a browser for web automation tasks using Playwright on Cloudflare Workers.
Playwright Server
Automate web browsers and perform web scraping tasks using the Playwright framework.
Bilibili Comments
Fetch Bilibili video comments in bulk, including nested replies. Requires a Bilibili cookie for authentication.
MCP YouTube Transcript Server
Retrieves transcripts from YouTube videos for content analysis and processing.
Open Crawler MCP Server
A web crawler and content extractor that supports multiple output formats like text, markdown, and JSON.
HTTP Requests
An MCP server for making HTTP requests, enabling LLMs to fetch and process web content.
MCP Substack Server
Download and parse Substack posts.
Career Site Jobs
A MCP server to retrieve up-to-date jobs from company career sites.
