Token导航 LogoToken导航

MCP Server · 数据服务

Proyecto Summa MCP Agent

一个基于Gradio界面的对话助手,允许用户通过自然语言查询Excel文件数据,利用OpenAI API和自定义工具集实现数据操作。

stdio官方级别未说明来源级核验工具 5
数据分析Python自然语言查询

快速开始

作者 / 组织
arleyserna
提供方
arleyserna
运行时
Python

工具数量

5

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

1 个

MCP World

选型结论

Proyecto Summa MCP Agent 属于数据服务类 MCP Server,公开资料标注 5 个工具,通过stdio 本地进程接入,客户端适配情况以官方文档为准,有可以直接复制的安装命令;接入前要先准备 API Key。

分类

数据服务

传输方式

stdio

认证方式

API Key

部署方式

公开资料未说明

安装与配置

安装命令

python -m venv .venv

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Python,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 5 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

MCP Agent — Asistente para consultas en Excel

Resumen


Este proyecto proporciona un asistente conversacional (interfaz Gradio) que permite hacer consultas en lenguaje natural sobre los datos de un archivo Excel. Usa la API de OpenAI (client openai) y un conjunto de "herramientas" (funciones) que exponen operaciones sobre un DataFrame (leer esquema, filas, estadísticas, valores de columna, etc.).

Principales componentes


  • main.py — punto de entrada que arranca la interfaz Gradio y crea la instancia de LlmService con ExcelTools.
  • services/llm_service.py — clase LlmService que orquesta las llamadas al cliente OpenAI y ejecuta funciones sobre el Excel.
  • utils/excel_tools.py — clase ExcelTools que carga el archivo Excel en un pandas.DataFrame y expone métodos serializables a JSON:

- get_schema() - get_all_data() - get_head(n) - get_statistics() - get_column_values(column)

  • mcp_server/mcp_tools.py — descripción (spec) de las funciones accesibles por la LLM (parámetros y descripciones).
  • utils/config.py — construcción de la ruta absoluta al archivo Excel usado por defecto.
  • data/ — carpeta que contiene el Excel de prueba: cesancias_causadas.xlsx.
  • requirements.txt — dependencias del proyecto.

Estructura del proyecto


agent_app/
├─ .env                      # variables de entorno (no versionar)
├─ README.md                 # este fichero
├─ requirements.txt          # dependencias
├─ main.py                   # punto de entrada y UI Gradio
├─ data/
│  └─ cesancias_causadas.xlsx
├─ mcp_server/
│  ├─ __init__.py
│  └─ mcp_tools.py           # especificación de herramientas (function-calling)
├─ services/
│  └─ llm_service.py         # lógica de orquestación con OpenAI
└─ utils/
	├─ __init__.py
	├─ config.py              # construcción de rutas y configuración local
	├─ excel_tools.py         # lectura y operaciones sobre el Excel
	└─ execute_functions.py   # adaptadores/ejecutores auxiliares

Qué hace


  1. Carga un archivo Excel desde data/cesancias_causadas.xlsx en ExcelTools.
  2. Expone una interfaz web (Gradio) donde el usuario escribe consultas en lenguaje natural.
  3. LlmService envía la consulta a OpenAI usando el mecanismo de "function-calling" (herramientas definidas en mcp_tools).
  4. Si la LLM solicita ejecutar una función (por ejemplo get_head), el servicio ejecuta el método correspondiente de ExcelTools, serializa el resultado a JSON y lo pasa de vuelta a la LLM para generar la respuesta final.

Requisitos


  • Python 3.10+ (preferible 3.11).
  • Dependencias listadas en requirements.txt. Principalmente:

- pandas - openai - gradio - python-dotenv - openpyxl

Instalación (sugerida)


  1. Clona o descarga el repositorio.
  2. Crea y activa un entorno virtual (ejemplo con venv):
python -m venv .venv
.\.venv\Scripts\Activate.ps1
  1. Instala dependencias:
pip install -r requirements.txt

Configuración


  1. Crea un archivo .env en la raíz de agent_app con la variable de entorno de OpenAI:
OPENAI_API_KEY=sk-xxxxx
  1. Asegúrate de que el archivo Excel existe en agent_app/data/cesancias_causadas.xlsx. Si el nombre del archivo es distinto, actualiza utils/config.py o pásalo explícitamente al crear ExcelTools.

Ejecución


Desde el directorio agent_app lanza:

python main.py

Esto abrirá la interfaz Gradio en el navegador (local). En la UI escribe preguntas y el sistema intentará responder usando las herramientas disponibles.

Notas de implementación


  • Las funciones que la LLM puede llamar están definidas en mcp_server/mcp_tools.py usando la especificación esperada por el cliente OpenAI.
  • LlmService inicializa un cliente OpenAI con la API key y manda las messages al endpoint de chat. Cuando la LLM solicita ejecutar una función, LlmService llama a _execute_function() que mapea el nombre de la función a un método de ExcelTools.
  • ExcelTools procesa valores especiales (NaN, pd.Timestamp, pd.Timedelta) y los transforma a valores serializables (None o strings) antes de invocar json.dumps().

Resolución de problemas comunes


  • ModuleNotFoundError: No module named 'agent_app'

- Ejecuta el script desde el directorio agent_app (o ajusta PYTHONPATH). Las importaciones usan rutas relativas como from utils.excel_tools import ExcelTools.

  • FileNotFoundError / pandas cannot read Excel

- Verifica que data/cesancias_causadas.xlsx existe y que la ruta en utils/config.py apunta correctamente al archivo. Si ejecutas desde otra carpeta, usa la ruta absoluta o modifica main.py para construir la ruta a partir de __file__.

  • Error con serialización JSON de Timestamp

- ExcelTools ya convierte pd.Timestamp a isoformat() y NaN a None. Si añades nuevas funciones que devuelvan objetos no serializables, conviértelos manualmente antes de json.dumps().

Sugerencias / siguientes pasos


  • Añadir tests unitarios para los métodos de ExcelTools.
  • Hacer más robusto el mapeo de funciones (validar parámetros entrantes).
  • Añadir paginación o límites cuando se devuelve get_all_data() para evitar respuestas muy grandes.
  • Mejorar manejo de errores y logging (por ejemplo con logging en lugar de prints).

Autor


Autor Hoover Serna Electronics Engineer | Contact: arleyserna@msn.com

工具与能力

工具数量

5

资源数量

0

提示词数量

0

能力标签

Excel数据处理Python本地部署自然语言查询Gradio界面OpenAI集成数据分析工具

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

用自然语言查库

不用手写 SQL,直接问数据,让模型组织查询语句。

数据巡检

定期拉指标、做对比,把异常项整理成一段说明。

打通业务数据

把数据库、数仓和接口接进同一个上下文,减少导出再上传。

选择建议

值得选的地方

  • 只提供 5 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • stdio 方式要求本地装好 Python,换机器要重新装一遍。
  • 需要自备API Key,没有凭据没法直接试。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在数据服务场景里让模型直接调用外部能力的人。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 暂时拿不到API Key的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Proyecto Summa MCP Agent

MCP World · 本页

5stdio有1 个2026-05-17
Memory 9d25f64e

MCP World

9未说明未标注1 个2026-05-17
Prisma MCP Server

MCP World

0stdio有3 个2026-05-17
Astr Bot

MCP World

0stdio有1 个2026-05-17
Getzep MCP

MCP World

9stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Proyecto Summa MCP Agent 怎么安装?

公开资料给出的安装命令是 python -m venv .venv,运行环境为 Python。装完后按客户端要求写进 MCP 配置,重启客户端生效。

Proyecto Summa MCP Agent 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Python;保存后完全退出客户端再打开,配置才会生效。

Proyecto Summa MCP Agent 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Proyecto Summa MCP Agent 需要 API Key 吗?

公开资料标注的认证方式是API Key,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

Proyecto Summa MCP Agent 支持哪些客户端?

公开资料没有标注具体客户端;能配置本地 MCP 命令的客户端都能接,配置方式参照官方文档。

来源信息

继续浏览同类 MCP