MCP ExplorerExplorer

Eunomia

@whataboutyou-aion 13 days ago
5 Apache-2.0
FreeCommunity
AI Systems
#Eunomia#Data Governance
Extension of the Eunomia framework that connects Eunomia instruments with MCP servers

Overview

What is Eunomia

Eunomia MCP Server is an extension of the Eunomia framework designed to connect Eunomia instruments with MCP servers, facilitating data governance in LLM-based applications. It allows for the orchestration of data governance policies and integration with external server processes within the MCP ecosystem.

Use cases

Eunomia MCP Server can be employed to enforce data governance policies over text-based pipelines, such as detecting Personally Identifiable Information (PII) and managing user access control. This enhances data handling and compliance in applications utilizing large language models.

How to use

To start using Eunomia MCP Server, clone the repository and define application settings and instruments within an Orchestra. Use the ‘uv’ command to run the server, specifying the relevant directory, which will load settings and initialize the server to handle incoming requests while applying specified governance policies.

Key features

Key features of the Eunomia MCP Server include the ability to enforce data governance through various instruments, orchestrate multiple interconnected servers, and support configurations for text streams in MCP-based environments. It enhances the interoperability of data governance across platforms.

Where to use

Eunomia MCP Server is particularly useful in applications where data governance is critical, such as in financial services, healthcare, and any LLM-based applications requiring compliance with data protection regulations. It’s suitable for environments leveraging the MCP framework for data management.

Content

[!WARNING]
This MCP server is deprecated as it is not compatible with the latest developments of Eunomia. A new MCP integration is under development and will be available soon.

Eunomia Logo

Eunomia MCP Server

Open Source Data Governance for LLM-based Applications — with MCP integration

Made with ❤ by the team at What About You.

Read the docs · Join the Discord

Overview

Eunomia MCP Server is an extension of the Eunomia framework that connects Eunomia instruments with MCP servers. It provides a simple way to orchestrate data governance policies (like PII detection or user access control) and seamlessly integrate them with external server processes in the MCP ecosystem.

With Eunomia MCP Server, you can:

  • Enforce data governance on top of LLM or other text-based pipelines.
  • Orchestrate multiple servers that communicate via the MCP framework.

Get Started

Installation

git clone https://github.com/whataboutyou-ai/eunomia-mcp-server.git

Basic Usage

Eunomia MCP Server uses the same “instrument” concept as Eunomia. By defining your set of instruments in an Orchestra, you can apply data governance policies to text streams that flow through your MCP-based servers.

Below is a simplified example of how to define application settings and run the MCP server with uv.

"""
Example Settings for MCP Orchestra Server
=========================================
This example shows how we can combine Eunomia with a web-browser-mcp-server
(https://github.com/blazickjp/web-browser-mcp-server).
"""

from pydantic_settings import BaseSettings
from pydantic import ConfigDict
from eunomia.orchestra import Orchestra
from eunomia.instruments import IdbacInstrument, PiiInstrument


class Settings(BaseSettings):
    """
    Application settings class for MCP orchestra server using pydantic_settings.

    Attributes:
        APP_NAME (str): Name of the application
        APP_VERSION (str): Current version of the application
        LOG_LEVEL (str): Logging level (default: "info")
        MCP_SERVERS (dict): Servers to be connected
        ORCHESTRA (Orchestra): Orchestra class from Eunomia to define data governance policies
    """

    APP_NAME: str = "mcp-server_orchestra"
    APP_VERSION: str = "0.1.0"
    LOG_LEVEL: str = "info"
    MCP_SERVERS: dict = {
        "web-browser-mcp-server": {
            "command": "uv",
            "args": [
                "tool",
                "run",
                "web-browser-mcp-server"
            ],
            "env": {
                "REQUEST_TIMEOUT": "30"
            }
        }
    }
    ORCHESTRA: Orchestra = Orchestra(
        instruments=[
            PiiInstrument(entities=["EMAIL_ADDRESS", "PERSON"], edit_mode="replace"),
            # You can add more instruments here
            # e.g., IdbacInstrument(), etc.
        ]
    )

Running the Server

Once your settings are defined, you can run the MCP Orchestra server by pointing uv to the directory containing your server code, for example:

uv --directory "path/to/server/" run orchestra_server

This will:

  1. Load the settings from .env or environment variables.
  2. Launch the Eunomia MCP Server to handle requests and orchestrate your external MCP server(s).
  3. Apply Eunomia instruments (like PiiInstrument) to the incoming text, ensuring data governance policies are automatically enforced.

Further Reading

For more detailed usage, advanced configuration, and additional instruments, check out the following resources:

Tools

No tools

Comments