Deprecated MCP server; discover Eunomia's open-source data governance for LLM applications and upcoming MCP integration
Eunomia MCP Server is an extension of the Eunomia framework, specifically designed to integrate with Model Context Protocol (MCP) servers. This server facilitates the enforcement of data governance policies and provides a seamless way to orchestrate interactions between Eunomia instruments and external MCP systems.
Eunomia MCP Server is an invaluable tool for developers looking to enhance AI applications using MCP. By integrating this server, developers can ensure that their LLM or text-based pipelines adhere to strict data governance rules, such as PII detection and user access control. The MCP protocol enables seamless communication between different components of the application ecosystem, making it easier to build scalable and secure data-driven solutions.
Eunomia MCP Server offers a host of key features that make it an essential component for modern AI applications:
Eunomia MCP Server operates on a well-defined architecture that leverages the Model Context Protocol. The protocol flow can be visualized using the Mermaid diagram below:
graph TD
A[AI Application] -->|MCP Client| B[MCP Protocol]
B --> C[MCP Server]
C --> D[Data Source/Tool]
style A fill:#e1f5fe
style C fill:#f3e5f5
style D fill:#e8f5e8
The server supports a variety of MCP clients, including popular tools like Claude Desktop, Continue, and Cursor. The following compatibility matrix provides an overview:
MCP Client | Resources | Tools | Prompts | Status |
---|---|---|---|---|
Claude Desktop | ✅ | ✅ | ✅ | Full Support |
Continue | ✅ | ✅ | ✅ | Full Support |
Cursor | ❌ | ✅ | ❌ | Tools Only |
This compatibility ensures that a wide range of AI applications can leverage the benefits of Eunomia MCP Server.
Installation is straightforward and involves cloning the repository from GitHub. Here are the steps to set up your environment:
git clone https://github.com/whataboutyou-ai/eunomia-mcp-server.git
Eunomia MCP Server utilizes the same "instrument" concept as Eunomia, allowing you to define a set of instruments in an Orchestra
. This orchestra orchestrates data governance policies and ensures they are applied consistently across your application. Here is a simplified example:
"""
Example Settings for MCP Orchestra Server
=========================================
This example shows how we can combine Eunomia with a web-browser-mcp-server.
"""
from pydantic_settings import BaseSettings
from eunomia.orchestra import Orchestra
from eunomia.instruments import IdbacInstrument, PiiInstrument
class Settings(BaseSettings):
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"),
]
)
To run the MCP Orchestra server, use uv
as follows:
uv --directory "path/to/server/" run orchestra_server
This command loads your settings and launches the Eunomia MCP Server to handle incoming requests. The server ensures that defined instruments (like PII detection) are applied to text streams, enforcing data governance policies.
Imagine a scenario where a company needs to handle sensitive user data within its applications. Eunomia MCP Server can be integrated with the application's backend using the MCP protocol to automatically detect and mask PII during text processing.
# Example Ingestion Pipeline
from eunomia.instruments import PiiInstrument
pipeline = [
# Other preprocessing steps
PiiInstrument(entities=["EMAIL_ADDRESS", "PERSON"], edit_mode="replace"),
# Additional preprocessing steps
]
In another use case, Eunomia MCP Server can be employed to validate user access based on specific rules. This ensures that only authorized users have access to certain parts of the application.
# Example Settings for Access Control
from eunomia.instruments import AccessControlInstrument
settings = {
"access_control": [
AccessControlInstrument(
roles=["admin", "user"],
actions=["read", "write"]
)
]
}
Eunomia MCP Server supports integration with various MCP clients, including tools like Claude Desktop and Continue. This enables real-time data governance across different layers of the application architecture.
Here is an example configuration for integrating Eunomia MCP Server with a web browser-based MCP client:
{
"mcpServers": {
"web-browser-mcp-server": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-web-browser"],
"env": {
"API_KEY": "your-api-key"
}
}
}
}
This configuration specifies the command and arguments to use, along with any required environment variables.
Eunomia MCP Server is designed to perform efficiently while maintaining compatibility across various AI applications. The performance matrix provides detailed insights into the server's effectiveness:
Eunomia MCP Server offers advanced configuration options to enhance security and performance. Key aspects include:
AccessControlInstrument
.from eunomia.instruments import SecurityInstrument
settings = {
"security": [
SecurityInstrument(
protocol="https",
certificate="/path/to/certificate.pem"
)
]
}
How does Eunomia MCP Server ensure data governance?
What are the compatibility requirements for integrating with MCP clients?
Can Eunomia MCP Server handle large volumes of real-time data streams?
How does this server enhance AI application development?
What security measures are in place?
Contributions to Eunomia MCP Server are always welcome! Developers can help improve the server by submitting pull requests or reporting issues. The following guidelines will guide you through the process:
git clone https://github.com/whataboutyou-ai/eunomia-mcp-server.git
pip install -r requirements.txt
pytest
Join our Discord community to connect with other developers, ask questions, and share insights:
For more detailed usage, advanced configuration, and additional instruments, refer to the following resources:
RuinedFooocus is a local AI image generator and chatbot image server for seamless creative control
Simplify MySQL queries with Java-based MysqlMcpServer for easy standard input-output communication
Learn to set up MCP Airflow Database server for efficient database interactions and querying airflow data
Access NASA APIs for space data, images, asteroids, weather, and exoplanets via MCP integration
Build stunning one-page websites track engagement create QR codes monetize content easily with Acalytica
Explore CoRT MCP server for advanced self-arguing AI with multi-LLM inference and enhanced evaluation methods