数据工程服务器

一个基于FastMCP的数据工程服务器,提供数据分析工具、资源和提示,并集成其他MCP服务器。

  • by BrayanR03
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 BrayanR03/Capitulo_11_FastMCP_ArquitecturaMCP

使用说明

📘 数据工程师MCP服务器

在第11章中,实现了一个服务器 MCP(模型上下文协议) 使用 FastMCP 有一个 清洁建筑 从头开始执行数据工程任务的设计。除了集成其他MCP服务器(口袋妖怪和客户机)外,它还提供数据分析工具、资源和提示。

🏗️ 建筑

服务器作为一个中心点,暴露了数据工程和协调子服务器的能力。

  • 核心:实施 fastmcp.
  • 单位管理:使用 uv 快速有效的安装。
  • 遏制:Docker和Docker Compose用于部署。
  • 整合:装载辅助服务器(mcp-server-pokemon y api-clientes-mcp).

📂 项目结构

11_arquitectura_mcp_fastmcp/
├── app/
│   ├── composing_servers/       # Servidores secundarios (ej. Pokemon)
│   ├── integration_frameworks/  # Integraciones con APIs (ej. Clientes)
│   └── server_mcp/              # Lógica principal del servidor
│       ├── prompts/             # Definición de Prompts
│       ├── resources/           # Definición de Recursos
│       ├── tools/               # Definición de Herramientas
│       └── server.py            # Inicialización y montaje
├── assets/                      # Archivos de datos (datasets)
├── Dockerfile                   # Configuración de imagen Docker
├── docker-compose.yml           # Orquestación de contenedores
├── main.py                      # Punto de entrada de la aplicación
├── pyproject.toml               # Dependencias del proyecto
└── uv.lock                      # Archivo de bloqueo de dependencias

🚀 安装和部署

先决条件

  • Python 3.11+
  • Docker和Docker Compose(可选用于容器部署)
  • uv (推荐用于包管理)

当地执行

  1. 安装依赖项:

    uv sync
    
  2. 运行服务器:

    uv run main.py
    

    服务器将在 http://0.0.0.0:8000.

使用Docker部署

  1. 建造和提升容器:
    docker-compose up --build
    

🛠️ 服务器组件

1.工具

服务器公开了对数据执行操作的工具。

  • estadistica_descriptiva
    • 描述:计算数据帧的描述性统计数据(平均值、标准差、最小值、最大值等)。
    • 入口: path_dataset (Excel文件的路径)。
    • 实施:使用 polars 读取Excel文件并生成统计摘要。

2. 资源

提供对静态或动态数据的访问。

  • resource://datasets/
    • 描述:列出目录中可用的销售数据集 assets.
    • 返回:json,包含每个数据集的名称、路径和大小。

3.提示

与模型交互的预定义模板。

  • Prompt Estadistica Descriptiva
    • 描述:生成用于计算特定年份统计数据的指令。
    • 参数: anio_dataset (数据集年)。

🔌 整合

主服务器安装其他MCP服务器以扩展其功能:

  1. 口袋妖怪MCP服务器:

    • 前缀: mcp-server-pokemon
    • 资料来源: app.composing_servers.mcp_server_secundario
  2. API客户端:

    • 前缀: api-clientes-mcp
    • 资料来源: app.integration_frameworks.fastapi_api_clientes

📦 关键依赖项

  • fastmcp:MCP服务器的基本框架。
  • polars:高性能数据处理。
  • fastexcel:高效读取Excel文件。

作者:Brayan neciosup 版本: 1.0.0