trackmcp
Back to directory
u3588064

entity-resolution

View on GitHub

MCP (Model Context Protocol) server for identifying whether two sets of data are from the same entity. 识别两组数据是否来自同一主体的MCP服务器

1 stars JavaScriptAI & Machine Learning Updated May 3, 2025

Documentation

EntityIdentification

Identify whether two sets of data are from the same entity. 识别两组数据是否来自同一主体

This is a MCP (Model Context Protocol) server. 这是一个支持MCP协议的服务器。

Data Comparison Tool

This tool provides a comprehensive way to compare two sets of data, evaluating both exact and semantic equality of their values. It leverages text normalization and a language model to determine if the data originates from the same entity.

Features

  • Text Normalization: Converts text to lowercase, removes punctuation, and normalizes whitespace.
  • Value Comparison: Compares values directly and semantically (ignoring order for lists).
  • JSON Traversal: Iterates through each key in the JSON objects and compares corresponding values.
  • Language Model Integration: Uses a generative language model to assess semantic similarity and provide a final judgment on whether the data comes from the same entity.

Installation

To use this tool, ensure you have the necessary dependencies installed. You can install them using pip:

bash
pip install genai

Usage

Functions

1. normalize_text(text):

    2. compare_values(val1, val2):

      3. compare_json(json1, json2):

        Example

        python
        import json
        import genai
        import re
        
        # Define your JSON objects
        json1 = {
            "name": "John Doe",
            "address": "123 Main St, Anytown, USA",
            "hobbies": ["reading", "hiking", "coding"]
        }
        
        json2 = {
            "name": "john doe",
            "address": "123 Main Street, Anytown, USA",
            "hobbies": ["coding", "hiking", "reading"]
        }
        
        # Compare the JSON objects
        comparison_results = compare_json(json1, json2)
        
        # Generate final matching result
        model1 = genai.GenerativeModel("gemini-2.0-flash-thinking-exp")
        result_matching = model1.generate_content("综合这些信息,你认为可以判断两个数据来自同一主体吗?"+json.dumps(comparison_results, ensure_ascii=False, indent=4))
        print(result_matching.text)

        Contributing

        Contributions are welcome! Please open an issue or submit a pull request.

        License

        This project is licensed under the MIT License. See the LICENSE file for details.

        Contact

        If you have any questions or suggestions, please contact me:

        Wechat

        qrcode_for_gh_643efb7db5bc_344(1)

        Frequently asked questions

        What is entity-resolution?

        entity-resolution is MCP (Model Context Protocol) server for identifying whether two sets of data are from the same entity. 识别两组数据是否来自同一主体的MCP服务器

        How do I install entity-resolution?

        Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

        Is entity-resolution open source?

        Yes — it is hosted on GitHub at https://github.com/u3588064/Entity-Resolution and has 1 stars.

        Related MCP tools

        Run your own MCP server? See who uses it and what to fix.

        Measure it with TrackMCP