π§ A powerful MCP server bridging AI models with Gausium robots
Control and monitor Gausium cleaning robots through Claude, Cursor, and other AI assistants
π Quick Start β’ π Documentation β’ π οΈ Installation β’ π― Examples β’ π¨π³ δΈζζζ‘£
This MCP (Model Control Protocol) server enables seamless interaction between AI models and Gausium cleaning robots through a standardized interface. Perfect for building intelligent automation workflows with Claude Code, Cursor, and other MCP-compatible AI tools.
π Repository: https://github.com/cfrs2005/mcp-gs-robot
- π€ AI-First Design: Built specifically for AI assistant integration
- π Real-time Control: Monitor and command robots instantly
- π Rich Data Access: Get detailed status, maps, and task reports
- π‘οΈ Secure: OAuth-based authentication with environment variables
- π Universal: Works with Claude, Cursor, and any MCP client
The server follows a layered architecture that separates concerns and promotes maintainability:
The diagram below shows how AI models interact with Gausium robots through the MCP protocol:
Tool | Description | Status |
---|---|---|
π€ list_robots |
List all accessible robots | β Ready |
π get_robot_status |
Get detailed robot status and position | β Ready |
π list_robot_task_reports |
Retrieve cleaning task reports with filtering | β Ready |
πΊοΈ list_robot_maps |
Get available maps for robot navigation | β Ready |
π― create_robot_command |
Send commands to robots (start/pause/stop) | β Ready |
π’ get_site_info |
Get building and floor information | β Ready |
π get_map_subareas |
Get detailed area information for tasks | β Ready |
π submit_temp_task |
Submit temporary cleaning tasks | β Ready |
Tool | Description | Status |
---|---|---|
π― get_robot_status_smart |
Auto-select V1/V2 API based on robot series | β Ready |
π get_task_reports_smart |
Intelligent task report API routing | β Ready |
π get_robot_capabilities |
Show supported APIs for specific robot | β Ready |
- ποΈ Automated Task Execution: Complete workflows from status β task selection β execution
- π Batch Operations: Handle multiple robots simultaneously
- πΊοΈ Map Management: Upload, download, and manage robot maps
- π Report Generation: Generate PNG maps from task reports
- ποΈ Site-based Tasks: Advanced task creation with building/floor context
- OMNIE (OMNIE series) - Multi-purpose cleaning robot
- Vacuum 40 (40 series) - Vacuum cleaning robot
- Scrubber 50 (50 series) - Floor scrubbing robot
- Scrubber 75 (75 series) - Heavy-duty floor scrubbing robot
- Phantas (S series) - Phantom intelligent cleaning robot
- BEETLE (SW series) - Beetle smart cleaning robot
The project follows a structured layout optimized for MCP development:
ποΈ mcp-gs-robot/
βββ π¦ src/gs_openapi/ # Main package
β βββ π api/ # Direct API integrations
β β βββ π€ robots.py # Robot management APIs
β β βββ πΊοΈ maps.py # Map management APIs
β βββ π auth/ # Authentication layer
β β βββ π« token_manager.py # OAuth token lifecycle
β βββ βοΈ config.py # Configuration management
β βββ π§ core/ # Core functionality
β β βββ π‘ client.py # HTTP client wrapper
β β βββ π£οΈ endpoints.py # API endpoint definitions
β βββ π mcp/ # MCP server implementation
β β βββ π gausium_mcp.py # Main MCP bridge
β βββ π workflows/ # Automated workflows
β βββ π― task_engine.py # Task automation engine
βββ π docs/ # Documentation
β βββ πΌοΈ images/ # Visual documentation
β βββ π apis.md # API documentation
β βββ π§ͺ TESTING_GUIDE.md # Testing instructions
βββ π main.py # Application entry point
βββ π pyproject.toml # Package configuration
Component | Purpose | Icon |
---|---|---|
config.py | Base URLs, API paths, environment variables | βοΈ |
token_manager.py | OAuth token acquisition and refresh | π |
api/robots.py | Robot status, commands, task reports | π€ |
api/maps.py | Map listing, upload, download | πΊοΈ |
gausium_mcp.py | MCP server integration layer | π |
task_engine.py | Automated workflow orchestration | π― |
main.py | Server initialization and tool registration | π |
pip install mcp-gs-robot
# Clone repository
git clone https://github.com/cfrs2005/mcp-gs-robot.git
cd mcp-gs-robot
# Setup with uv (recommended)
uv venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
uv pip install -e .
Set up your Gausium API credentials:
# Required environment variables
export GS_CLIENT_ID="your_client_id"
export GS_CLIENT_SECRET="your_client_secret"
export GS_OPEN_ACCESS_KEY="your_access_key"
π Get credentials from Gausium Developer Portal
# Start MCP server (stdio mode)
python -m gs_openapi.main
# or if installed via pip:
mcp-gs-robot
β
Server starts using stdio
transport (perfect for Claude Code)
Method 1: Automatic installation with environment setup
# Add MCP server with environment variables
claude mcp add mcp-gs-robot \
--env GS_CLIENT_ID="your_client_id" \
--env GS_CLIENT_SECRET="your_client_secret" \
--env GS_OPEN_ACCESS_KEY="your_access_key"
Method 2: Manual configuration
Add to your claude_desktop_config.json
:
{
"mcpServers": {
"mcp-gs-robot": {
"command": "mcp-gs-robot",
"env": {
"GS_CLIENT_ID": "your_client_id",
"GS_CLIENT_SECRET": "your_client_secret",
"GS_OPEN_ACCESS_KEY": "your_access_key"
}
}
}
}
Method 3: Using environment file
If you prefer to use a .env
file:
# Set global environment variables
export GS_CLIENT_ID="your_client_id"
export GS_CLIENT_SECRET="your_client_secret"
export GS_OPEN_ACCESS_KEY="your_access_key"
# Simple MCP installation
claude mcp add mcp-gs-robot
π‘ Note: This MCP server uses
stdio
transport (not SSE), which is perfect for Claude Code integration
# In Claude Code, you can now use natural language:
"List all my robots"
# β Calls mcp__mcp-gs-robot__list_robots
"Get status of robot GS101-0100-V1P-B001"
# β Calls mcp__mcp-gs-robot__get_robot_status
"Start cleaning task for robot in building 5"
# β Orchestrates site info β map selection β task creation
Cursor Configuration:
Cherry Studio Configuration:
Monitor server logs for troubleshooting:
Document | Purpose |
---|---|
π― Claude Code Integration | Complete Claude Code setup guide |
π API Reference | Complete API documentation |
π§ͺ Testing Guide | How to test the MCP server |
π§ Configuration | Detailed setup instructions |
We welcome contributions! Please:
- π΄ Fork the repository
- πΏ Create a feature branch
- β Add tests for your changes
- π Update documentation
- π Submit a pull request
MIT License - see LICENSE file for details.
- π Issues
- π§ Email
- π Gausium Developer Docs
Made with β€οΈ for the Claude Code community
Enabling AI-powered robot automation, one task at a time π€β¨