ai.smithery/keremurat-mcp

AI 与智能体

by keremurat

可忽略元素顺序,深度比较两个 JSON 文件,并生成突出差异细节的报告。

什么是 ai.smithery/keremurat-mcp

可忽略元素顺序,深度比较两个 JSON 文件,并生成突出差异细节的报告。

README

🔍 JSON Compare MCP Server

<div align="center">

Python MCP Docker Smithery

Derinlemesine ve sıra-bağımsız JSON karşılaştırma MCP tool'u

İki JSON dosyasını akıllıca karşılaştırın, farklılıkları tespit edin!

🎯 Hızlı Başlangıç📦 Özellikler🚀 Kullanım🧪 Test

</div>

✨ Özellikler

  • 🔍 Derinlemesine Karşılaştırma - Nested objeler ve array'ler dahil tüm seviyeler
  • 🔀 Sıra-Bağımsız - Property ve obje sıralaması önemli değil
  • 📊 Detaylı Raporlama - Eksik, fazla ve farklı değerlerin detaylı raporu
  • 🎯 Path Tracking - Her farkın tam konumu (örn: root.user.settings.theme)
  • 🏷️ Tip Kontrolü - Değer tiplerini de karşılaştırır
  • Hızlı ve Verimli - Optimize edilmiş recursive algoritma

🎯 Hızlı Başlangıç

1. Kurulum

bash
git clone https://github.com/yourusername/json-compare-mcp.git
cd json-compare-mcp
pip install -r requirements.txt

2. MCP Server'ı Başlat

bash
python server.py

3. Test Et

bash
python test_compare.py

📦 Ne İçeriyor?

code
json-compare-mcp/
├── 🐍 app.py              # JSON karşılaştırma implementasyonu
├── 🚀 server.py           # MCP server yapılandırması
├── 🧪 test_compare.py     # Test suite
├── 📋 requirements.txt    # Python bağımlılıkları
├── 🐳 Dockerfile          # Container yapılandırması
├── ⚙️ smithery.yaml       # Smithery deployment config
└── 📁 test_samples/       # Örnek JSON dosyaları
    ├── file1.json
    ├── file2.json
    └── file3_different.json

🚀 Kullanım

MCP Tool: compare_json

python
# İki JSON string'ini karşılaştır
compare_json(
    json1='{"name": "Ahmet", "age": 30, "city": "Istanbul"}',
    json2='{"age": 30, "city": "Istanbul", "name": "Ahmet"}'
)

Not: Artık dosya yolu değil, direkt JSON string kullanın!

Çıktı Formatı

json
{
  "status": "different",
  "total_differences": 11,
  "differences": [
    {
      "type": "missing_key",
      "path": "root.user.settings.language",
      "key": "language",
      "file1_value": "tr",
      "message": "Key 'language' exists in file1 but missing in file2"
    },
    {
      "type": "value_mismatch",
      "path": "root.user.name",
      "file1_value": "Ahmet Yılmaz",
      "file2_value": "Mehmet Demir",
      "message": "Value mismatch at 'root.user.name'"
    }
  ],
  "summary": {
    "missing_keys": 1,
    "extra_keys": 2,
    "value_mismatches": 8,
    "type_mismatches": 0
  }
}

🔍 Karşılaştırma Mantığı

Seviye 1: Üst Seviye Obje Karşılaştırma

  • ✅ Her iki JSON'daki üst seviye objeleri/anahtarları tespit et
  • SIRALAMA ÖNEMLİ DEĞİL - Objeler farklı sırada olabilir
  • ✅ Eksik/fazla objeleri tespit et ve uyar
  • ✅ Eşleşen objeler için Seviye 2'ye geç

Seviye 2: İç Nesne/Property Karşılaştırma

  • ✅ Tüm property'leri karşılaştır
  • SIRALAMA ÖNEMLİ DEĞİL - Property'ler farklı sırada olabilir
  • ✅ Property varlığı, tip ve içerik kontrolü
  • ✅ Array'ler için sıra-bağımsız karşılaştırma

Fark Tipleri

TipAçıklama
missing_keyAnahtar file1'de var, file2'de yok
extra_keyAnahtar file2'de var, file1'de yok
value_mismatchDeğerler farklı
type_mismatchVeri tipleri farklı

🧪 Test

Test Suite'i Çalıştır

bash
python test_compare.py

Test Senaryoları

  1. Sıra-bağımsız test: Aynı içerik, farklı sıralama → identical
  2. Farklılık tespiti: Farklı değerler → detaylı fark raporu
  3. Kendisi ile: Aynı dosya → identical

Test Çıktısı

code
✅ Test 1 - Sıra-bağımsız: BAŞARILI
✅ Test 2 - Farklılık tespiti: BAŞARILI
✅ Test 3 - Aynı dosya: BAŞARILI

🔍 Test 2 Detayları:
   - Eksik anahtarlar: 1
   - Fazla anahtarlar: 2
   - Değer uyuşmazlıkları: 8
   - Tip uyuşmazlıkları: 0
   - Toplam fark: 11

🛠️ Geliştirme

Yeni Tool Eklemek

app.py dosyasına yeni fonksiyon ekle:

python
def myNewTool(param: str) -> str:
    # Your logic
    return result

server.py dosyasına MCP tool olarak kaydet:

python
@mcp.tool()
async def my_new_tool(param: str) -> str:
    """Tool açıklaması"""
    return myNewTool(param)

🚀 Deployment

Smithery Deployment

  1. Repository'yi GitHub'a push et
  2. Smithery'de repository'yi bağla
  3. Tek tıkla deploy et! 🎉

Docker Deployment

bash
docker build -t json-compare-mcp .
docker run -p 8000:8000 json-compare-mcp

Manuel Deployment

bash
pip install -r requirements.txt
python server.py

📋 Gereksinimler

  • Python 3.11+
  • mcp
  • requests

🤝 Katkıda Bulunma

  1. 🍴 Fork et
  2. 🌱 Feature branch oluştur
  3. 💻 Değişiklikleri yap
  4. 🧪 Test et
  5. 📝 Pull request gönder

📄 Lisans

MIT License - Detaylar için LICENSE dosyasına bakın.


<div align="center">

Made with ❤️ for better JSON comparison

Sıra-bağımsız, derinlemesine, güvenilir 🚀

</div>

常见问题

ai.smithery/keremurat-mcp 是什么?

可忽略元素顺序,深度比较两个 JSON 文件,并生成突出差异细节的报告。

相关 Skills

Claude接口

by anthropics

Universal
热门

面向接入 Claude API、Anthropic SDK 或 Agent SDK 的开发场景,自动识别项目语言并给出对应示例与默认配置,快速搭建 LLM 应用。

想把Claude能力接进应用或智能体,用claude-api上手快、兼容Anthropic与Agent SDK,集成路径清晰又省心

AI 与智能体
未扫描165.3k

RAG架构师

by alirezarezvani

Universal
热门

聚焦生产级RAG系统设计与优化,覆盖文档切块、检索链路、索引构建、召回评估等关键环节,适合搭建可扩展、高准确率的知识库问答与检索增强应用。

面向RAG落地,把知识库、向量检索和生成链路系统串联起来,做架构设计时更清晰,也更少踩坑。

AI 与智能体
未扫描23.5k

多智能体架构

by alirezarezvani

Universal
热门

聚焦多智能体系统架构设计,梳理 Supervisor、Swarm、分层和 Pipeline 等模式,覆盖角色定义、通信协作与性能评估,适合规划稳健可扩展的 AI agent 编排方案。

帮你系统解决多智能体应用的架构设计与协同编排难题,适合构建复杂 AI 工作流,成熟度高、社区认可也很亮眼。

AI 与智能体
未扫描23.5k

相关 MCP Server

顺序思维

编辑精选

by Anthropic

热门

Sequential Thinking 是让 AI 通过动态思维链解决复杂问题的参考服务器。

这个服务器展示了如何让 Claude 像人类一样逐步推理,适合开发者学习 MCP 的思维链实现。但注意它只是个参考示例,别指望直接用在生产环境里。

AI 与智能体
89.1k

知识图谱记忆

编辑精选

by Anthropic

热门

Memory 是一个基于本地知识图谱的持久化记忆系统,让 AI 记住长期上下文。

帮 AI 和智能体补上“记不住”的短板,用本地知识图谱沉淀长期上下文,连续对话更聪明,数据也更可控。

AI 与智能体
89.1k

by deusdata

热门

持久化的代码库知识图谱,可跨会话保留上下文,在 session 重启或上下文压缩后仍能继续使用。

专治 AI 编程助手“会话失忆”,把代码库沉淀为持久知识图谱,重启或压缩上下文后也能无缝续上开发状态。

AI 与智能体
36.7k

评论