{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_y5n8kpv9ztg4","handle":"excel-diff2-mcp","url":"https://wellknown.network/agents/excel-diff2-mcp","links":{"self":"https://wellknown.network/agents/excel-diff2-mcp/record.json","html":"https://wellknown.network/agents/excel-diff2-mcp","markdown":"https://wellknown.network/agents/excel-diff2-mcp/record.md","api":"https://wellknown.network/api/v1/agents/excel-diff2-mcp","status":"https://wellknown.network/api/v1/agents/excel-diff2-mcp/status","claim":"https://wellknown.network/agents/excel-diff2-mcp/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/excel-diff2-mcp/claim.json","badge":"https://wellknown.network/agents/excel-diff2-mcp/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/excel-diff2-mcp/history","tools":"https://wellknown.network/api/v1/agents/excel-diff2-mcp/tools"},"ard":{"identifier":"urn:air::server:excel-diff2-mcp","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"excel-diff2-mcp","summary":"MCP server for comparing Excel files with hierarchical module matching (stacked output)","description":"# excel-diff2-mcp\n\nMCP (Model Context Protocol) server for comparing Excel files with hierarchical module matching.\n\n## Features\n\n- **Hierarchical Module Matching**: Match Excel data by multiple levels of functional modules\n- **Stacked Output**: Output two tables stacked in a single result\n- **Dual Output Formats**: Support both CSV and Markdown output\n- **Flexible Input**: Accept HTTP(S) URLs or Base64-encoded file content\n- **Auto Header Detection**: Automatically detect header rows\n- **Merged Cell Handling**: Fill merged cells downward for accurate comparison\n\n## Installation\n\n```bash\npip install excel-diff2-mcp\n```\n\n## Usage\n\n### Command Line\n\n```bash\nexcel-diff2-mcp\n```\n\n### As MCP Tool\n\n```python\nfrom mcp.client.session import Session\n\nasync with Session() as session:\n    result = await session.call(\n        \"compare_excel\",\n        file1=\"https://example.com/file1.xlsx\",\n        file2=\"https://example.com/file2.xlsx\",\n        compare_columns=[\"一级功能模块\", \"二级功能模块\"],\n        output_format=\"markdown\",  # optional: \"csv\" (default) or \"markdown\"\n    )\n```\n\n### compare_excel Parameters\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `file1` | str | Yes | First Excel file (URL or Base64 content) |\n| `file2` | str | Yes | Second Excel file (URL or Base64 content) |\n| `compare_columns` | list | Yes | Columns for hierarchical matching |\n| `table_name1` | str | No | Display name for table 1 |\n| `table_name2` | str | No | Display name for table 2 |\n| `output_format` | str | No | Output format: `\"csv\"` (default) or `\"markdown\"` |\n\n### compare_columns Formats\n\n**Single array** (same columns for both tables):\n```python\n[\"一级功能模块\", \"二级功能模块\"]\n```\n\n**Dual array** (different columns per table):\n```python\n[[\"一级功能模块\", \"二级功能模块\"], [\"一级功能点\", \"二级功能点\"]]\n```\n\n## Output\n\n### CSV Format\n\n```csv\n表1名称,,,,\n一级功能模块,二级功能模块,描述,比对结果\n模块A,子模块1,描述内容,一级、二级功能模块均在【表2】找到\n模块B,子模块2,描述内容,一级功能模块在【表2】找到\n\n表2名称,,,,\n一级功能模块,二级功能模块,描述,比对结果\n模块A,子模块1,描述内容,一级、二级功能模块均在【表1…","publisher":null,"homepage":null,"repository":null,"version":"1.2.0","license":"MIT","protocols":["mcp"],"tags":["comparison","diff","excel","mcp","model-context-protocol"],"pricing":null,"endpoints":[{"url":"pypi:excel-diff2-mcp","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":null,"attribution":{"kind":"pypi","name":"pypi","license":"pypi","summary":"pypi","version":"pypi","description":"pypi"}},"derived":{"capabilities":[{"slug":"documents.spreadsheets","name":"Spreadsheets","confidence":1,"provenance":"declared"},{"slug":"dev.terminal","name":"Terminal & Shell","confidence":0.825,"provenance":"derived"}],"categories":["dev","documents"],"language":"en"},"observed":{"status":"unknown","statusReason":"Distributed as a package to run locally; no network endpoint to check.","lastOkAt":null,"lastProbedAt":null,"statusComputedAt":null,"reliability30d":null,"latestObservations":[],"tools":null,"package":{"name":"excel-diff2-mcp","registry":"pypi","observedAt":"2026-09-15T14:27:00.435Z","publishedAt":"2026-07-13T02:41:00.248494Z","latestVersion":"1.2.0"},"toolSurface":null,"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"excel-diff2-mcp","url":"https://pypi.org/project/excel-diff2-mcp/","firstSeenAt":"2026-09-09T15:22:01.695Z","fetchedAt":"2026-09-15T14:25:09.021Z","normalizedAt":"2026-09-15T14:25:09.021Z"}]},"firstSeenAt":"2026-09-09T15:22:01.695Z","updatedAt":"2026-09-15T14:27:00.435Z"}