loading…
Search for a command to run...
loading…
Enables interaction with the John Deere Operations Center to browse organizations, field details, and agricultural operation data. It utilizes a Cloudflare Work
Enables interaction with the John Deere Operations Center to browse organizations, field details, and agricultural operation data. It utilizes a Cloudflare Workers architecture with an integrated OAuth proxy for secure access via any MCP-compatible client.
A remote MCP server hosted on Cloudflare Workers that connects to John Deere Operations Center. Browse organizations, fields, and field operations data via any MCP-compatible client (Claude Desktop, Cursor, etc.).
The server runs as a Cloudflare Worker with a Durable Object (McpAgent) providing stateful MCP sessions. Authentication uses a double OAuth proxy pattern:
This means authentication happens at the transport layer — no manual auth tool call is needed.
Create a Cloudflare account (if you don’t have one):
Install the Wrangler CLI (Cloudflare’s Workers CLI):
npm install -g wrangler
Or use it via npx (no global install):
npx wrangler --version
Log in to Cloudflare from the terminal:
npx wrangler login
This opens a browser to authenticate Wrangler with your Cloudflare account.
https://john-deere-mcp.<your-subdomain>.workers.dev/callback
npx wrangler kv namespace create OAUTH_KV
Copy the output id into wrangler.jsonc under kv_namespaces.
npx wrangler secret put JD_CLIENT_ID
npx wrangler secret put JD_CLIENT_SECRET
npx wrangler secret put COOKIE_ENCRYPTION_KEY
For local development, copy .dev.vars.example to .dev.vars and fill in the values.
npm install
npm run deploy
Add to your client's MCP config (e.g. Claude Desktop claude_desktop_config.json):
{
"mcpServers": {
"john-deere": {
"command": "npx",
"args": ["mcp-remote", "https://john-deere-mcp.<your-subdomain>.workers.dev/mcp"]
}
}
}
| Tool | Description |
|---|---|
jd_list_organizations |
Lists all accessible organizations |
jd_list_fields |
Lists fields for an organization |
jd_get_field |
Gets field details including boundaries |
jd_list_field_operations |
Lists planting/harvest/application operations |
| Command | Description |
|---|---|
/jd-fields [org] |
Browse fields in an organization |
/jd-ops [field] |
View field operations data |
cp .dev.vars.example .dev.vars
# Fill in JD_CLIENT_ID, JD_CLIENT_SECRET, COOKIE_ENCRYPTION_KEY
npm run dev
Test with the MCP Inspector:
npx @modelcontextprotocol/inspector@latest
Connect to http://localhost:8787/mcp.
Transport Type: Streamable HTTP Connection Type: Direct
This targets the John Deere Sandbox (sandboxapi.deere.com). Sandbox limits:
For production access, apply through the John Deere developer portal.
ag1 ag2 ag3 eq1 eq2 org1 org2 files offline_access
These are requested automatically during the OAuth flow.
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"john-deere-operations-center-mcp-server": {
"command": "npx",
"args": []
}
}
}