MCP server: One MCP server.

Keremurat MCP

@smitheryRepublished by Smithery for its author.MCP server · External

Compare two JSON files deeply, regardless of order. Get a detailed difference report highlighting…

v1.16.0MITPython
Freeno charge per call

One address for any MCP client. Your key stays in your Odel vault.

What it does

  1. Reads
  2. Writes
  3. High impact

At most: only reads or looks up information.

What it costs

Free

Odel charges nothing per call. The publisher may charge for its own service.

Tools

None listed · checked 26 Sep 2026

Odel could not list its tools without signing in.

Try it in the Inspector
README3 min read

🔍 JSON Compare MCP Server

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


✨ Ö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?

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ı

✅ 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.


Made with ❤️ for better JSON comparison

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

Similar modules