Token导航 LogoToken导航TokenDH.com
Fyta MCP Server logo
数据服务stdio官方级别未说明来源级核验

Fyta MCP Server

MCP Server

FYTA MCP服务器是一个用于管理FYTA植物传感器数据的协议服务器,提供植物健康监测、智能诊断和养护建议等功能。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
PythonClaude数据分析Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

Schimmilab

提供方

Schimmilab

最后核验

2026/5/17 20:20

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python3 -m venv .venv

详细介绍

FYTA MCP服务器🌱

FYTA工厂传感器数据的模型上下文协议(MCP)服务器。直接通过Claude访问您的工厂数据!

这是什么?

FYTA是一个智能植物传感器系统,用于测量土壤湿度、温度、光照和养分。此MCP服务器使Claude能够访问这些数据并帮助您进行植物护理。

特性

工厂基本数据

  • 🌿 获取所有植物:使用传感器数据对所有工厂进行全面概述
  • 🔍 工厂详细信息:单个植物的详细信息
  • 📊 工厂测量:随时间变化的历史传感器数据和测量值
  • ⚠️ 需要注意的植物:自动检测需要护理的植物
  • 🏡 花园概况:花园和植物的有序视图

高级分析工具

  • 🔬 智能工厂诊断:具有阈值评估和传感器能力检测的智能健康分析
  • 📈 趋势分析:跟踪水分、温度、营养物质和光线随时间的变化
  • 📊 统计分析:平均值、最小值、最大值、稳定性评分和异常检测
  • ☀️ DLI(每日光积分)分析:计算每日光照和季节模式
  • 🌡️ 智能阈值评估:使用实际阈值修复FYTA不一致的状态代码
  • 💧 智能施肥:基于EC的施肥建议和趋势预测

背景和护理跟踪

  • 📝 工厂环境管理:储存基质类型、容器类型和生长阶段
  • 🗓️ 护理行动记录:跟踪人工浇水、施肥和重新种植
  • 📖 护理史分析:分析护理行动的有效性
  • 🔔 事件检测:自动检测工厂条件的重大变化

集线器和设备监控

  • 🔌 集线器状态监控:跟踪您的所有FYTA集线器(在线/离线、固件版本、连接)
  • 📡 设备健康状况:监控传感器、电池状态和上次通信时间戳
  • ⚠️ 连接警报:检测连接丢失的集线器和停止报告的传感器
  • 🔍 原始API访问:完全访问未筛选的FYTA API数据以进行调试

传感器智能

  • 🎯 传感器能力检测:自动检测传感器类型(光束2.0、光束、传统)
  • 💡 光传感器感知:当灯光数据不可用时显示适当的警告
  • 🔋 电池监控:轨道传感器电池状态

安装

先决条件

  • Python 3.10或更高版本(或Docker)
  • FYTA工厂账户
  • Claude桌面应用程序(或其他MCP兼容客户端)

使用Docker进行设置(推荐)

  1. 安装Docker和Docker Compose

确保你的系统上安装了Docker。

  1. 克隆存储库
cd ~/fyta-mcp-server
  1. 设置环境变量

创建一个 .env 文件:

cp .env.example .env

并输入您的FYTA凭据:

FYTA_EMAIL=your-email@example.com
FYTA_PASSWORD=your-password
  1. 构建并启动容器
docker-compose up -d

容器命令:

# Stop container
docker-compose down

# Show logs
docker-compose logs -f

# Rebuild container
docker-compose build

# Restart container
docker-compose restart

不带Docker的安装

  1. 克隆存储库或下载文件
cd ~/fyta-mcp-server
  1. 创建虚拟环境(可选但推荐)
python3 -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
  1. 安装依赖项
pip install -r requirements.txt
pip install -e .
  1. 设置环境变量

创建一个 .env 文件:

cp .env.example .env

并输入您的FYTA凭据:

FYTA_EMAIL=your-email@example.com
FYTA_PASSWORD=your-password

重要:The .env 文件永远不应该提交到Git!

Claude桌面配置

将以下内容添加到您的Claude Desktop配置中:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json 视窗: %APPDATA%\Claude\claude_desktop_config.json

使用Docker(推荐)

{
  "mcpServers": {
    "fyta": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "--env-file",
        "/absolute/path/to/fyta-mcp-server/.env",
        "fyta-mcp-server"
      ]
    }
  }
}

或者使用docker编写:

{
  "mcpServers": {
    "fyta": {
      "command": "docker-compose",
      "args": [
        "-f",
        "/absolute/path/to/fyta-mcp-server/docker-compose.yml",
        "run",
        "--rm",
        "fyta-mcp-server"
      ]
    }
  }
}

没有Docker(直接使用Python)

{
  "mcpServers": {
    "fyta": {
      "command": "/absolute/path/to/fyta-mcp-server/.venv/bin/python",
      "args": [
        "-m",
        "fyta_mcp_server"
      ],
      "env": {
        "FYTA_EMAIL": "your-email@example.com",
        "FYTA_PASSWORD": "your-password"
      }
    }
  }
}

或者使用紫外线:

{
  "mcpServers": {
    "fyta": {
      "command": "uv",
      "args": [
        "--directory",
        "/absolute/path/to/fyta-mcp-server",
        "run",
        "python",
        "-m",
        "fyta_mcp_server"
      ],
      "env": {
        "FYTA_EMAIL": "your-email@example.com",
        "FYTA_PASSWORD": "your-password"
      }
    }
  }
}

用法

重新启动Claude Desktop后,以下工具可用:

工厂基本数据

获取所有植物

Show me all my plants

工厂详细信息

Show me details for plant with ID 123

历史测量

Show me measurements for plant 123 from the last week

需要注意的植物

Which of my plants need care right now?

花园概况

Give me an overview of my gardens

高级分析

智能诊断

Diagnose plant 123 and give me detailed recommendations

返回全面的健康分析,包括:

  • 智能阈值评估(修复FYTA不一致的状态代码)
  • 传感器性能检测(显示光传感器是否可用)
  • 基于EC趋势的智能施肥建议
  • 基于数据质量的置信度评分

趋势分析

Show me moisture and nutrient trends for plant 123 over the last month

跟踪随时间变化的方向、百分比变化和预测。

统计分析

Give me statistics for all metrics of plant 123

提供平均值、最小值、最大值、标准差、稳定性评分和异常检测。

DLI分析

Calculate daily light integral for plant 123

仅适用于具有光传感器的传感器(FYTA Beam 2.0)。提供:

  • 每日光照量(mol/m²/天)
  • 每种植物的最佳DLI建议
  • 生长灯建议
  • 季节性预测

上下文管理

设置工厂上下文

Set context for plant 123: organic soil in a terracotta pot, currently in vegetative growth

存储FYTA不知道的重要信息:

  • 基底:矿物,有机,lechuza_pon,水培,半水
  • 容器:lechuza,自浇水,陶土,塑料,陶瓷
  • 生长期:幼苗、营养植物、开花、结果、休眠

获取工厂背景

What context information do you have for plant 123?

返回带有上下文感知建议的存储上下文。

护理跟踪

日志维护操作

Log that I watered plant 123 with 500ml today

跟踪FYTA不知道的手动护理操作:

  • 浇水(按量)
  • 施肥(含产品和用量)
  • 复刻(带基材和罐尺寸)
  • 其他自定义操作

获取护理史

Show me the care history for plant 123 from the last 30 days

通过有效性分析查看过去的护理行动。

事件检测和监控

备注:MCP是一种请求-响应协议,它不能推送通知。对于主动监控,您需要定期询问Claude或与n8n或Home Assistant等自动化系统集成。看 示例/ 集成指南。

获取植物事件

Are there any problems with my plants?

自动检测(按需):

  • 🔇 传感器静音:传感器未报告超过90分钟
  • 🔋 电量不足:电池电量低于20%
  • 💧 临界水分:需要立即浇水
  • 🌡️ 极端温度:热应激风险
  • 📊 状态改变:任何参数从最佳值更改
  • 📡 WiFi断开连接:连接问题

返回带有严重性、优先级和可操作建议的webhook就绪JSON。

实际使用:每天询问克劳德“我的工厂有问题吗?”或与cron/n8n集成以实现自动化。

集线器和设备监控

获取所有集线器

Show me my FYTA Hubs

列出所有集线器,包括:

  • 在线/离线状态
  • 固件版本
  • 互联植物和传感器
  • 上次看到的时间戳
  • 连接健康状况

获取中心详细信息

Show details for Hub E8:06:90:C4:B7:EE

详细的集线器信息,包括所有连接的设备。

获取原始API数据

Show me the raw FYTA API response

访问完整的未筛选API数据,以便调试或发现新功能。

API终点

服务器使用以下FYTA API终结点:

  • POST https://web.fyta.de/api/auth/login -身份验证
  • GET https://web.fyta.de/api/user-plant -检索工厂数据
  • POST https://web.fyta.de/api/user-plant/measurements/[plantID] -检索历史测量值(带时间线:小时、天、周、月)

技术细节

状态值

传感器返回以下状态值:

  • 1 =太低(低)
  • 2 =最佳
  • 3 =太高(高)

这适用于:

  • 温度(temperature_status)
  • 灯光(light_status)
  • 土壤湿度(moisture_status)
  • 营养素/盐度(salinity_status)

备注:FYTA的状态代码可能不一致。这 diagnose_plant 该工具使用智能阈值评估来提供更准确的状态评估。

传感器类型

服务器会自动检测连接的传感器类型:

类型名称光传感器功能
1FYTA(传统)温度、湿度、营养素
2FYTA梁2.0温度、湿度、营养物质、光照
3FYTA梁温度、湿度、营养素

工具如 get_plant_dli_analysis 如果你的传感器不支持光测量,它会自动警告你。

字段名称

API财年在测量数据中使用特定字段名称:

  • soil_moisture (不是 moisture)
  • soil_fertility (不是 salinitynutrients)
  • date_utc (格式:“YYYY-MM-DD HH:MM:SS”)
  • temperaturelight (如预期)

智能功能

智能阈值评估

FYTA的状态代码有时与实际阈值相矛盾。例如,即使最佳范围为5-25°C,19°C的温度也可能被标记为“高”。这 diagnose_plant 该工具通过根据实际阈值评估值来解决这个问题。

基于EC的施肥

FYTA的施肥预测是通用的,基于时间的(“190天内施肥”)。该服务器提供基于EC(电导率)的建议:

  • EC状态:临界低(\1.2)
  • 基板特定阈值:有机、矿物、PON和水培基质的不同最佳范围
  • 趋势预测:线性回归预测EC何时达到临界水平
  • 动作时机:根据当前EC和趋势立即、尽快或维持

盐度阈值

服务器使用最佳盐度范围 0.2-1.0米/厘米 (冬季较低,夏季较高)。

当FYTA将冬季阈值设置为min=max=0时,服务器会应用这些默认值来正确评估营养状况。

EC=0处理

EC=0表示 土壤中没有养分 并且被评估为需要施肥的“低”状态。

FYTA的API可能标志 soil_fertility_anomaly: true 什么时候:

  • EC=0,带有异常标志 → 传感器可能与土壤接触不良,但EC=0仍表示没有养分
  • EC≠0,带异常标志 → 真实传感器故障(读数不可靠)

服务器尊重FYTA的异常标志,但将EC=0视为指示营养缺乏的有效测量值。

故障排除

服务器无法启动

  1. 检查环境变量是否设置正确
  2. 测试身份验证:
cd /path/to/fyta-mcp-server
source .venv/bin/activate
python tests/test_connection.py

无可用数据

  • 确保您将FYTA Hub或移动应用程序用作网关
  • FYTA光束传感器仅发送需要服务器处理的原始数据
  • 在FYTA应用程序中检查您的传感器是否已连接

发展

项目结构

fyta-mcp-server/
├── src/fyta_mcp_server/
│   ├── __init__.py
│   ├── server.py          # MCP server setup
│   ├── client.py          # FYTA API client
│   ├── tools.py           # Tool definitions
│   ├── handlers.py        # Tool handler implementations
│   └── utils/
│       ├── care_actions.py     # Care tracking and analysis
│       ├── dli.py              # Daily Light Integral calculations
│       ├── events.py           # Event detection
│       ├── fertilization.py    # EC-based fertilization logic
│       ├── plant_context.py    # Context storage and recommendations
│       ├── sensor_info.py      # Sensor capability detection
│       ├── statistics.py       # Statistical analysis
│       ├── thresholds.py       # Smart threshold evaluation
│       └── trends.py           # Trend analysis and predictions

添加新工具

要添加新工具,请执行以下操作:

  1. 定义工具src/fyta_mcp_server/tools.py:
Tool(
    name="my_new_tool",
    description="What this tool does",
    inputSchema={
        "type": "object",
        "properties": {
            "plant_id": {"type": "number"}
        },
        "required": ["plant_id"]
    }
)
  1. 实现处理程序src/fyta_mcp_server/handlers.py:
async def handle_my_new_tool(fyta_client: FytaClient, arguments: Any):
    plant_id = int(arguments["plant_id"])
    # Your logic here
    return [TextContent(type="text", text=result)]
  1. 注册处理程序src/fyta_mcp_server/server.py:
elif name == "my_new_tool":
    return await handle_my_new_tool(fyta_client, arguments)

创建实用程序模块

对于复杂的功能,请在中创建一个新模块 utils/:

# src/fyta_mcp_server/utils/my_feature.py
def analyze_something(data: List[Dict]) -> Dict:
    """Analyze data and return insights"""
    # Your analysis logic
    return {"result": "insights"}

然后导入并在handlers.py中使用它:

from .utils.my_feature import analyze_something

API文档

完整的FYTA API文件: https://fyta-io.notion.site/FYTA-Public-API-d2f4c30306f74504924c9a40402a3afd

测试

运行测试连接脚本:

python tests/test_connection.py

贡献

欢迎投稿!拜托:

  1. 分叉存储库
  2. 创建要素分支
  3. 进行更改
  4. 彻底测试
  5. 提交拉取请求

学分

  • API财年:https://fyta.de/
  • 基于Python客户端:https://github.com/dontinelli/fyta_cli
  • 家庭助理集成:https://github.com/dontinelli/fyta-custom_component

许可证

MIT许可证-请参阅 许可证 详细信息文件

支持

如有疑问或问题:

  • 在GitHub上打开一个问题:https://github.com/schimmmi/fyta-mcp-server/issues
  • 查看Discord上的FYTA开发者社区
  • 访问https://fyta.de/有关传感器的更多信息

仓库

github:https://github.com/schimmmi/fyta-mcp-server

______________________________________________________________________

与克劳德一起愉快地监测植物! 🌿🤖

目录标签

目录标签

PythonClaude数据分析植物监测本地部署智能诊断传感器数据养护建议

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

session

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiosession部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

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

来源信息

继续浏览同类 MCP