EcoMCP(生态多协议转换器/系统/平台,具体含义根据上下文确定)
EcoMCP(可译为“生态多层复合材料”或根据具体上下文可能有更具体的翻译,但“生态多层复合材料”是一个较为通用的译法) 是一种生态智能的MCP(模型上下文协议)代理,旨在提供 印度食品的碳足迹洞察它结合了FastAPI后端与MCP(可能是指某种碳管理或相关平台的集成)的整合,使得AI系统或其他客户端能够高效地查询碳足迹数据。
______________________________________________________________________
🚀 功能
- 查询碳足迹数据,按(以下条件/方式) 食物名称, 地区,或者 食品标识/食品ID。
- 支持 部分匹配 用于食物名称。
- 手柄 单个区域及区域组合。
- 使用MCP进行集成 FastMCP 并且 stdio 传输。
- API使用本地托管 FastAPI。
______________________________________________________________________
🧩 架构概述
- 交通:
stdio - API 主机: 本地主机(
http://127.0.0.1:8000) - MCP 主机: 困惑度(或复杂性、模糊性,具体根据上下文确定)
- MCP 客户端: FastMCP(处理请求并与FastAPI进行通信)
- MCP 服务器: 基于FastAPI的后端,提供碳足迹数据
流量:
User Query → MCP Host → MCP Client → FastAPI Server → JSON Dataset → Client → Host → Response______________________________________________________________________
🗂️ 数据集
该项目使用了一个经过整理的印度食品碳足迹数据集,该数据集最初来源于Kaggle。它包含了各种印度食品的碳足迹信息及其原产地。
数据集预处理
- 区域标准化:为单个食品项目列出的多个区域被统一整理为一致的格式,按字母顺序排列,并以逗号分隔。
- 唯一标识符分配:根据每种食品在所属组内的区域组合和顺序,为其分配一个唯一的标识符。
- 格式:数据集以JSON格式存储。
关键列
- ID → 食品项目的唯一标识符
- 食物 → 食物的名称
- 区域 → 单个区域或多个区域的组合(例如,“北,西”)
- 类别 → 食物类型(例如,素食,非素食)
- 服务 → 标准份量
- 碳足迹(千克二氧化碳当量)→ 每千克食品产生的二氧化碳排放量(千克)
______________________________________________________________________
🛠️ 技术栈
- Python 3.11
- FastAPI (后端API)
- FastMCP (MCP客户端集成)
- 交通: stdio(在中文中通常不直接翻译,但可解释为)标准输入输出库
- Cursor 集成开发环境(IDE) 用于发展
______________________________________________________________________
⚙️ 安装
- 克隆仓库:
git clone https://github.com/npthinks/EcoMCP.git
cd EcoMCP- 使用(某个工具或方法)创建一个虚拟环境
uv:
# Using uv
uv venv create .venv
uv venv activate______________________________________________________________________
🏗️ 使用方法
运行FastAPI服务器
uvicorn main:app --reload- 服务器将在
http://127.0.0.1:8000/
______________________________________________________________________
