Title: type_text and evaluate_javascript incorrectly return "Browser automation requires a paid Donut Browser plan"
Description:
Even with an active Pro (Monthly) subscription (1/20 profiles used), the type_text and evaluate_javascript MCP tools return:
{"code":-32000,"message":"CDP error: {\"code\":-32000,\"message\":\"Browser automation requires a paid Donut Browser plan.\"}"}
This is incorrect according to the official documentation.
Evidence that this is a bug:
1. Documentation states automation is FREE:
From https://context7.com/zhom/donutbrowser:
"Browser automation does NOT require a paid plan. All automation features are included with Donut Browser at no additional cost."
"Local REST API - Available by default, No payment required"
"MCP (Model Context Protocol) - Supported for AI integrations, Free to use"
2. CDP port is active and responds:
$ curl http://127.0.0.1:45507/json/version
{
"Browser": "Chrome/146.0.7680.164",
"Protocol-Version": "1.3",
...
}
3. navigate works fine (also uses CDP):
$ curl -X POST http://127.0.0.1:51080/mcp/TOKEN \
-d '{"method":"tools/call","params":{"name":"navigate","arguments":{"profile_id":"c8e3b723-...","url":"https://onlyfans.com"}}}'
{"result":{"content":[{"text":"Navigated to https://onlyfans.com/..."}]}} ✅ SUCCESS
4. But type_text fails with false error:
$ curl -X POST http://127.0.0.1:51080/mcp/TOKEN \
-d '{"method":"tools/call","params":{"name":"type_text","arguments":{"profile_id":"c8e3b723-...","selector":"div[contenteditable=true]","text":"Hello"}}}'
{"error":{"code":-32000,"message":"CDP error: {\"code\":-32000,\"message\":\"Browser automation requires a paid Donut Browser plan.\"}"}}
5. Tested on BRAND NEW profile (no cookies, no extensions):
- Profile:
TestAutomationFix (ID: c8e3b723-1d93-4f49-bb65-d899167b20d4)
- Created fresh during testing
- Error still occurs on new profile
6. Playwright direct CDP connection fails too:
const browser = await chromium.connectOverCDP('http://127.0.0.1:45507');
// page.type() and page.fill() also fail with same error
Environment:
- Donut Browser: v0.22.5
- Browser engine: Wayfern 146.0.7680.166
- OS: Linux x86_64 (CachyOS/Arch)
- Subscription: Pro (Monthly) - 1/20 profiles
- MCP Server: Running on port 51080
- CDP Port (tested): 45507
Steps to reproduce:
- Launch any Wayfern profile via MCP
- Call
type_text or evaluate_javascript tool
- Receive error:
"Browser automation requires a paid Donut Browser plan."
Expected behavior:
According to documentation, automation tools should work without requiring a paid plan. The error message is misleading - it suggests a missing subscription, but the user already has Pro plan active.
Additional info:
- Log shows:
"Browser automation requires a paid Donut Browser plan." even with Pro subscription
- Navigation works (which also uses CDP protocol)
- The error comes from the browser engine itself via CDP
- Possibly related to: cookie decryption errors seen in logs:
[ERROR] Pre-launch: Cookie decryption FAILED for '__AP_SESSION__'
Suggested fix:
Review the CDP command filtering logic - it appears to incorrectly block automation commands even when the user has valid Pro subscription (or even according to docs, when it should be free for all).
Link to documentation: https://context7.com/zhom/donutbrowser
Test repo: https://github.com/zhom/donutbrowser
Title:
type_textandevaluate_javascriptincorrectly return "Browser automation requires a paid Donut Browser plan"Description:
Even with an active Pro (Monthly) subscription (1/20 profiles used), the
type_textandevaluate_javascriptMCP tools return:{"code":-32000,"message":"CDP error: {\"code\":-32000,\"message\":\"Browser automation requires a paid Donut Browser plan.\"}"}This is incorrect according to the official documentation.
Evidence that this is a bug:
1. Documentation states automation is FREE:
From https://context7.com/zhom/donutbrowser:
2. CDP port is active and responds:
$ curl http://127.0.0.1:45507/json/version { "Browser": "Chrome/146.0.7680.164", "Protocol-Version": "1.3", ... }3.
navigateworks fine (also uses CDP):4. But
type_textfails with false error:5. Tested on BRAND NEW profile (no cookies, no extensions):
TestAutomationFix(ID:c8e3b723-1d93-4f49-bb65-d899167b20d4)6. Playwright direct CDP connection fails too:
Environment:
Steps to reproduce:
type_textorevaluate_javascripttool"Browser automation requires a paid Donut Browser plan."Expected behavior:
According to documentation, automation tools should work without requiring a paid plan. The error message is misleading - it suggests a missing subscription, but the user already has Pro plan active.
Additional info:
"Browser automation requires a paid Donut Browser plan."even with Pro subscriptionSuggested fix:
Review the CDP command filtering logic - it appears to incorrectly block automation commands even when the user has valid Pro subscription (or even according to docs, when it should be free for all).
Link to documentation: https://context7.com/zhom/donutbrowser
Test repo: https://github.com/zhom/donutbrowser