mcpField
X
Xml Comparison Mcp Server

Xml Comparison Mcp Server

Local
github.com/ravikallaMemory & Knowledge0Updated 69w ago

About Xml Comparison Mcp Server

Xml Comparison Mcp Server compares XML files and reports semantic differences, including when element order varies. It is for users who need to inspect large XML files and export detailed results.

Key features

  1. 01Order-independent XML comparison
  2. 02Streaming XML parsing
  3. 03Input validation and error handling
  4. 04Excel reports with match and mismatch sheets

Use cases

  1. 01Compare XML files with reordered elements
  2. 02Review detailed differences in Excel
  3. 03Process large XML files

MCP support

The MCP server provides five tools for XML comparison, according to the project tagline.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

Issues Forks Stars Docker Stars Docker Pull License Java Maven

Compare two XMLs and write differences to an Excel

Features

  • Fast XML comparison regardless of element order
  • Excel output with detailed differences
  • Comprehensive input validation and error handling
  • Modern dependencies with security updates (Log4j 2.x, Apache POI 5.x, JUnit 5.x)
  • Docker support for containerized execution
  • Tested on large files (6MB+ XML files)

Recent Updates

  • ✅ Security fixed: Upgraded Log4j to 2.21.1 (fixes Log4Shell vulnerabilities)
  • ✅ Dependencies updated: Apache POI 5.2.5, JUnit 5.10.1
  • ✅ Code modernized: Better error handling, input validation, refactored architecture
  • ✅ Test coverage: Comprehensive unit tests added
Run Java code in local
java -jar xml-compare-0.0.1-SNAPSHOT-jar-with-dependencies.jar <Input XML1 path> <Input XML2 path> <Output XLS path>

Eg:

java -jar xml-compare-0.0.1-SNAPSHOT-jar-with-dependencies.jar /home/ravi/Desktop/Projects/xml-compare/src/main/resources/XML1.xml /home/ravi/Desktop/Projects/xml-compare/src/main/resources/XML2.xml /home/ravi/Desktop/Projects/xml-compare/src/main/resources/Results2.xls
Run as Docker image
docker run -p 8084:8080 -v <local path>:/usr/src -t ravikalla/xml-compare /usr/src/<XML1 filename> /usr/src/<XML2 filename> /usr/src/<Results.xls filename>

Eg:

docker run -p 8084:8080 -v /home/ravi/Desktop/Projects/xml-compare/src/main/resources:/usr/src -t ravikalla/xml-compare /usr/src/XML1.xml /usr/src/XML2.xml /usr/src/Results.xls

Usage Notes

  • Input validation: The tool validates file paths and accessibility before processing
  • Error handling: Clear error messages for common issues (file not found, permission errors, etc.)
  • Output format: Results are generated in Excel (.xls) format with separate sheets for matches and mismatches
Input files:

https://github.com/ravikalla/screenshots/blob/master/XMLs.png

Result:

https://github.com/ravikalla/screenshots/blob/master/ComparisonResults.png

Javadoc in Github pages: Javadoc

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.