Skip to main content
Glama
Jambathor

iCrop MCP Server

by Jambathor
README.md
# iCrop MCP Server

Connect your iCrop account to Claude Desktop. Ask questions about your farms, crops, and fields - Claude will fetch the data automatically.

## Setup

### Step 1: Get Docker
Download and install [Docker Desktop](https://www.docker.com/products/docker-desktop). Make sure it's running.

### Step 2: Build the Docker Image
```bash
# In the project folder, build the image
docker build -t icrop-mcp-server:latest .
```

### Step 3: Configure Claude Desktop

Find your Claude Desktop config file:
- **Mac**: `~/Library/Application Support/Claude/claude_desktop_config.json`
- **Windows**: `%APPDATA%\Claude\claude_desktop_config.json`

Add this to the file (replace with your iCrop credentials):

```json
{
  "mcpServers": {
    "icrop-mcp-server": {
      "command": "docker",
      "args": [
        "run", "-i", "--rm",
        "--env", "ICROP_USERNAME=your_email@example.com",
        "--env", "ICROP_PASSWORD=your_password",
        "--env", "TRANSPORT=stdio",
        "icrop-mcp-server:latest"
      ]
    }
  }
}
```

### Step 4: Restart Claude Desktop

Quit and restart Claude Desktop. You should see the MCP icon in your chats.

## Available Tools

The server provides 9 tools:

**Farm Management:**
- `icrop_list_farms` - List farms with filtering options (year, hidden fields, etc.)
- `icrop_list_all_farms` - Get all farms without filters

**Crop Management:**
- `icrop_list_crops` - Get all available crop types
- `icrop_get_crop_details` - Get detailed crop information including varieties
- `icrop_get_crop_varieties` - Get varieties for a specific crop

**Field Management:**
- `icrop_list_crop_fields` - List all crop fields

**Data Lists:**
- `icrop_get_soil_types` - Get available soil types
- `icrop_get_cultivation_types` - Get cultivation methods (soil, hydroponic, etc.)
- `icrop_get_coverage` - Get coverage options (open, covered)

## Usage Examples

Ask Claude:
- "Show me all my farms for 2025"
- "What crops are available?"
- "List potato varieties"
- "Show my crop fields"
- "What soil types can I use?"

## Project Structure

```
src/
├── icrop_mcp_server.py     # Main MCP server
└── schemas.py              # Data validation
```