kieranklaassen/farmbot-agent-cli-mcp — explained in plain English
Analysis updated 2026-05-18
Control a FarmBot robot's arm and status from a terminal.
Let an AI assistant like Claude move and monitor a FarmBot through MCP.
Run custom Lua scripts on FarmBot hardware from the command line.
| kieranklaassen/farmbot-agent-cli-mcp | amarjitjim/browserpilot | boneskull/buggin | |
|---|---|---|---|
| Stars | 3 | 3 | 3 |
| Language | JavaScript | JavaScript | JavaScript |
| Last pushed | — | — | 2022-12-30 |
| Maintenance | — | — | Dormant |
| Setup difficulty | moderate | moderate | easy |
| Complexity | 3/5 | 3/5 | 2/5 |
| Audience | developer | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
Requires an actual FarmBot device and an authentication token from the FarmBot API.
farmbot-agent is a command-line tool and server for controlling FarmBot, an open-source farming robot that automates planting, watering, and garden management. It offers two ways to send instructions to the robot: typing commands directly into a terminal, or connecting it to an AI assistant so the AI can operate the robot on its own. The terminal interface lets you authenticate, check the robot's current status and position, move its motorized arm to specific coordinates, send it home, trigger an emergency stop, unlock it afterward, and run Lua code directly on the device. Every command supports a flag for structured JSON output, so results can be piped into other tools or scripts. The second mode runs an MCP server. MCP stands for Model Context Protocol, a standard that lets AI assistants call tools on connected systems. Once set up, an AI assistant like Claude can use farmbot-agent to check the robot's state, move it to precise positions, and control its behavior without a person typing each command. Setup involves adding the server to the assistant's configuration file along with an authentication token, which can be generated with a simple API request. Communication with the FarmBot hardware runs over MQTT, a lightweight messaging protocol used for device control. Commands are sent as structured requests carrying a unique identifier, so responses can be matched back to the right command. The project builds in several safety measures: movement coordinates are validated before being sent, a rate limit caps movement to 30 commands per minute to prevent an AI agent from getting stuck in a runaway loop, and emergency stop stays available at all times with a short timeout. Errors are returned as structured messages with codes and recovery suggestions rather than plain failures. The project is built in JavaScript, can be installed with npm, and is released under the MIT license.
A CLI and MCP server that lets you or an AI assistant control a FarmBot farming robot, moving its arm, checking status, and running commands safely.
Mainly JavaScript. The stack also includes JavaScript, Node.js, MQTT.
Use freely for any purpose, including commercial use, as long as you keep the copyright notice.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.