Where does the bug appear (feature/product)?
Cloud Agent (GitHub, Slack, Web, Linear)
Describe the Bug
I have a Cursor Automation named “MASTER Autopilot — safe self-pickup” using a multi-repository environment.
The scheduled trigger works correctly and creates successful Cloud Agent runs.
The webhook trigger does not create any run. The authenticated POST reaches Cursor but consistently returns HTTP 400 with:
Unexpected token ‘C’, “Content-Le”… is not valid JSON
The POST body is valid JSON and is sent with:
Content-Type: application/json
I isolated the Automation configuration and reproduced the same error:
- with the custom GitHub MCP disabled;
- with the official GitHub Cloud plugin disabled;
- after removing the custom MCP from the Automation;
- after removing all Automation tools.
In every case:
- the scheduled trigger still works;
- the webhook path fails before a Cursor run is created.
Expected behavior:
An authenticated webhook POST should create an Automation run.
Actual behavior:
HTTP 400 before run creation.
There is no Cursor Request ID because no Cursor run is created by the failing webhook.
GitHub-side dispatcher logs confirm:
- one POST per test;
- no retries;
- the same sanitized error every time.
Platform:
macOS
Cursor Pro
Please investigate the webhook launch/runtime path for this Automation.
Steps to Reproduce
- Create or use a Cursor Automation with both a Scheduled trigger and a Webhook trigger.
- Configure the Automation with a valid Cloud Agent environment.
- Verify that the Scheduled trigger successfully creates and completes Agent runs.
- Send an authenticated HTTP POST to the Automation webhook URL with:
Content-Type: application/json
and a valid JSON body. - The webhook request returns HTTP 400 before any Cursor run is created.
The error returned is:
Unexpected token ‘C’, “Content-Le”… is not valid JSON
I also reproduced the same webhook error after:
- disabling the custom GitHub MCP;
- disabling the official GitHub Cloud plugin;
- removing the custom MCP from the Automation;
- removing all Automation tools.
The Scheduled trigger continues to work correctly.
Expected Behavior
The authenticated webhook POST should be accepted and create a new Automation / Cloud Agent run, in the same way that the Scheduled trigger successfully starts the Automation.
Operating System
MacOS
Version Information
Version: 3.20.21
VS Code Extension API: 1.128.0
Commit: f09fca384ceca23f7bf21f9c23655b162641d740
Date: 2026-09-13T19:02:51.781Z
Layout: Agent Window
Build Type: Stable
Release Track: Default
Electron: 42.10.0
Chromium: 148.0.7778.280
Node.js: 24.18.1
V8: 14.8.178.38-electron.0
xterm.js: 6.1.0-beta.291
OS: Darwin arm64 27.0.0
For AI issues: which model did you use?
Cursor Grok 4.6 High Fast
This issue appears to be infrastructure/webhook-related rather than model-specific.
For AI issues: add Request ID with privacy disabled
No Request ID is available because the failing webhook returns HTTP 400 before any Cursor Agent run is created.
Additional Information
The same Automation works correctly when triggered by its scheduled trigger.
A successful scheduled run was observed at 22:14 on Sep 15 and completed successfully.
The webhook path was tested repeatedly from GitHub Actions. Authentication is accepted, but Cursor returns HTTP 400 before creating a run:
Unexpected token ‘C’, “Content-Le”… is not valid JSON
To isolate the issue, I reproduced it with:
- the custom GitHub MCP disabled;
- the official GitHub Cloud plugin disabled;
- the custom MCP removed from the Automation;
- all Automation tools removed.
The HTTP 400 remained identical in every configuration.
After testing, the Automation configuration was restored.
No webhook URL, authorization token, or other secret is included in this report.
Does this stop you from using Cursor
No - Cursor works, but with this issue