
featureform/enrichmcp 是从 https://github.com/featureform/enrichmcp. 导入的 MCP 服务器候选
概览
featureform/enrichmcp 是从 https://github.com/featureform/enrichmcp. 导入的 MCP 服务器候选
概述(AI 翻译)
人工智能代理的ORM——将你的数据模型转化为语义MCP层
EnrichMCP 是一个 Python 框架,帮助 AI 代理理解并导航你的数据。它基于 MCP(模型上下文协议),增加了语义层,将你的数据模型转化为类型化、可发现的工具——就像 AI 的 ORM 一样。
什么是EnrichMCP?
可以把它看作是针对AI代理的SQLAlchemy。EnrichMCP会自动实现:
- 从你的数据模型生成类型工具
- **处理实体之间的关系(用户→订单→产品)
- 提供模式发现,让AI代理理解你的数据结构
- 用双研模型验证所有输入/输出
- 支持任何后端 - 数据库、API或自定义逻辑
安装
给我看代码
选项1:我有SQLAlchemy模型(30秒)
将您现有的 SQLAlchemy 模型转换为 AI 可导航的 API:
人工智能代理现在可以:
explore_data_model()- 理解你的整个模式list_users(status='active')- 带过滤器的查询get_user(id=123)- 获取特定记录- 关系导航:
user.orders→order.user
选项2:我有REST API(2分钟)
本页由 AI 翻译,技术细节请以原文为准。
README
以下为原文 README 节选,完整内容请查看原文。
EnrichMCP
The ORM for AI Agents - Turn your data model into a semantic MCP layer
EnrichMCP is a Python framework that helps AI agents understand and navigate your data. Built on MCP (Model Context Protocol), it adds a semantic layer that turns your data model into typed, discoverable tools - like an ORM for AI.
What is EnrichMCP?
Think of it as SQLAlchemy for AI agents. EnrichMCP automatically:
- Generates typed tools from your data models
- Handles relationships between entities (users → orders → products)
- Provides schema discovery so AI agents understand your data structure
- Validates all inputs/outputs with Pydantic models
- Works with any backend - databases, APIs, or custom logic
Installation
pip install enrichmcp
# With SQLAlchemy support
pip install enrichmcp[sqlalchemy]
Show Me Code
Option 1: I Have SQLAlchemy Models (30 seconds)
Transform your existing SQLAlchemy models into an AI-navigable API:
from enrichmcp import EnrichMCP
from enrichmcp.sqlalchemy import (
include_sqlalchemy_models,
sqlalchemy_lifespan,
EnrichSQLAlchemyMixin,
)
from sqlalchemy import ForeignKey
from sqlalchemy.ext.asyncio import create_async_engine
from sqlalchemy.orm import DeclarativeBase, Mapped, mapped_column, relationship
engine = create_async_engine("postgresql+asyncpg://user:pass@localhost/db")
# Add the mixin to your declarative base
class Base(DeclarativeBase, EnrichSQLAlchemyMixin):
pass
class User(Base):
"""User account."""
__tablename__ = "users"
id: Mapped[int] = mapped_column(primary_key=True, info={"description": "Unique user ID"})
email: Mapped[str] = mapped_column(unique=True, info={"description": "Email address"})
status: Mapped[str] = mapped_column(default="active", info={"description": "Account status"})
orders: Mapped[list["Order"]] = relationship(
back_populates="user", info={"description": "All orders for this user"}
)
class Order(Base):
"""Customer order."""
__tablename__ = "orders"
id: Mapped[int] = mapped_column(primary_key=True, info={"description": "Order ID"})
user_id: Mapped[int] = mapped_column(
ForeignKey("users.id"), info={"description": "Owner user ID"}
)
安装
This server does not publish a one-line install command.
Open the repository installation guide 新手?先看 mcpskill.org 教程 →