MCP Overview
MetaDock provides a comprehensive MCP (Model Context Protocol) server that enables AI desktop apps like Claude Desktop and ChatGPT Desktop to control browsers using natural language. With 92 tools available, you can automate complex browser workflows through simple conversation.
What is MCP?
MCP (Model Context Protocol) is an open standard that allows AI assistants to interact with external tools and services. MetaDock's MCP server exposes browser automation capabilities that AI can invoke based on natural language instructions.
Key Benefits
- No coding required — Control browsers with plain English
- 92 tools — Full browser automation capabilities
- Visual feedback — Watch AI actions execute in real-time
- Works with Claude Desktop — Native integration with Anthropic's AI
- Works with ChatGPT — ChatGPT Desktop integration
Rate Limits
Setup
Configure Claude Desktop or other MCP-compatible clients to connect to MetaDock.
Claude Desktop Configuration
Add the following to your Claude Desktop config file (claude_desktop_config.json):
{
"mcpServers": {
"metadock": {
"url": "http://localhost:8080/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}Config File Locations
%APPDATA%\Claude\claude_desktop_config.json~/Library/Application Support/Claude/claude_desktop_config.json~/.config/Claude/claude_desktop_config.jsonGetting Your API Key
- Open MetaDock application
- Go to Settings → API
- Copy your API key
- Paste it in the config file above
Browser Tools
Tools for creating, navigating, and controlling browser instances.
browser_createMCP ToolCreate a new browser instance
Parameters:
url (string)* — URL to openprofile (string) — Browser profile namecustom_title (string) — Custom browser titlebrowser_navigateMCP ToolNavigate a browser to a URL
Parameters:
browser_uuid (string)* — Browser UUIDurl (string)* — URL to navigate tobrowser_clickMCP ToolClick an element on the page
Parameters:
browser_uuid (string)* — Browser UUIDselector (string)* — CSS selectortimeout_ms (number) — Timeout in msbrowser_typeMCP ToolType text into the page
Parameters:
browser_uuid (string)* — Browser UUIDtext (string)* — Text to typebrowser_set_valueMCP ToolSet value of an input element
Parameters:
browser_uuid (string)* — Browser UUIDselector (string)* — CSS selectorvalue (string)* — Value to setbrowser_screenshotMCP ToolTake a screenshot of the browser
Parameters:
browser_uuid (string)* — Browser UUIDbrowser_execute_jsMCP ToolExecute JavaScript in the browser
Parameters:
browser_uuid (string)* — Browser UUIDscript (string)* — JavaScript codebrowser_get_sourceMCP ToolGet HTML source of the page
Parameters:
browser_uuid (string)* — Browser UUIDbrowser_go_backMCP ToolNavigate back in browser history
Parameters:
browser_uuid (string)* — Browser UUIDbrowser_go_forwardMCP ToolNavigate forward in browser history
Parameters:
browser_uuid (string)* — Browser UUIDbrowser_reloadMCP ToolReload the current page
Parameters:
browser_uuid (string)* — Browser UUIDbrowser_scroll_toMCP ToolScroll to coordinates
Parameters:
browser_uuid (string)* — Browser UUIDx (number)* — X coordinatey (number)* — Y coordinatebrowser_scroll_byMCP ToolScroll by offset
Parameters:
browser_uuid (string)* — Browser UUIDdeltaX (number)* — X offsetdeltaY (number)* — Y offsetbrowser_wait_for_elementMCP ToolWait for an element to appear
Parameters:
browser_uuid (string)* — Browser UUIDselector (string)* — CSS selectortimeout_ms (number) — Timeout in msbrowser_wait_for_loadMCP ToolWait for page to finish loading
Parameters:
browser_uuid (string)* — Browser UUIDtimeout_ms (number) — Timeout in msBrowser Management
Tools for listing, closing, and managing browser instances.
browsers_listMCP ToolList all open browsers
browsers_close_allMCP ToolClose all browsers
browsers_close_othersMCP ToolClose all browsers except one
Parameters:
keep_browser_id (string)* — Browser UUID to keepbrowsers_navigate_allMCP ToolNavigate all browsers to a URL
Parameters:
url (string)* — URL to navigate tobrowsers_reload_allMCP ToolReload all browsers
browsers_execute_allMCP ToolExecute JavaScript on all browsers
Parameters:
script (string)* — JavaScript codebrowsers_create_multipleMCP ToolCreate multiple browsers at once
Parameters:
browsers (array)* — Array of browser configsBatch Operations
Execute multiple operations in a single request for complex workflows.
browser_batchMCP ToolExecute multiple operations on browsers (up to 100 per browser)
Parameters:
browser_uuid (string) — Single browser UUIDbrowsers (array) — Array of browser operationsoperations (array) — Operations for single browsercontinue_on_error (boolean) — Continue if operation failsAvailable Batch Operations
navigate — Go to URLclick — Click elementtype — Type textset_value — Set input valuescroll_to — Scroll to positionscroll_by — Scroll by offsetreload — Refresh pagego_back — Go backgo_forward — Go forwardscreenshot — Take screenshotexecute_js — Run JavaScriptwait_for_element — Wait for elementWorkspace Tools
Tools for managing workspaces — saved browser configurations that can be restored.
workspace_listMCP ToolList all workspaces
workspace_createMCP ToolCreate a new workspace
Parameters:
name (string)* — Workspace nameworkspace_switchMCP ToolSwitch to a workspace
Parameters:
workspace_id (number)* — Workspace IDworkspace_deleteMCP ToolDelete a workspace
Parameters:
workspace_id (number)* — Workspace IDworkspace_renameMCP ToolRename a workspace
Parameters:
workspace_id (number)* — Workspace IDname (string)* — New nameworkspace_get_currentMCP ToolGet the current workspace
workspace_get_infoMCP ToolGet workspace details
Parameters:
workspace_id (number)* — Workspace IDworkspace_get_layoutsMCP ToolGet layouts in a workspace
Parameters:
workspace_id (number)* — Workspace IDworkspace_set_homepageMCP ToolSet workspace homepage
Parameters:
workspace_id (number)* — Workspace IDurl (string)* — Homepage URLworkspace_set_startupMCP ToolSet workspace as startup
Parameters:
workspace_id (number)* — Workspace IDLayout Tools
Tools for managing layouts within workspaces.
layout_listMCP ToolList all layouts
layout_createMCP ToolCreate a new layout
Parameters:
name (string)* — Layout namelayout_deleteMCP ToolDelete a layout
Parameters:
layout_uuid (string) — Layout UUIDlayout_renameMCP ToolRename a layout
Parameters:
layout_uuid (string) — Layout UUIDname (string)* — New namelayout_get_infoMCP ToolGet layout information
Parameters:
layout_uuid (string) — Layout UUIDlayout_get_browsersMCP ToolGet browsers in a layout
Parameters:
layout_uuid (string) — Layout UUIDlayout_get_appsMCP ToolGet docked apps in a layout
Parameters:
layout_uuid (string) — Layout UUIDProfile Tools
Tools for managing browser profiles with isolated sessions.
profile_listMCP ToolList all browser profiles
profile_createMCP ToolCreate a new profile
Parameters:
name (string)* — Profile nameprofile_create_temporaryMCP ToolCreate a temporary profile
Parameters:
name (string)* — Profile nameprofile_deleteMCP ToolDelete a profile
Parameters:
name (string)* — Profile nameprofile_renameMCP ToolRename a profile
Parameters:
old_name (string)* — Current namenew_name (string)* — New nameprofile_get_defaultMCP ToolGet the default profile
profile_set_defaultMCP ToolSet a profile as default
Parameters:
name (string)* — Profile nameBrowser Settings
Tools for configuring browser settings like cookies, viewport, and geolocation.
browser_set_cookieMCP ToolSet a cookie
Parameters:
browser_uuid (string)* — Browser UUIDname (string)* — Cookie namevalue (string)* — Cookie valuedomain (string) — Cookie domainbrowser_get_cookieMCP ToolGet a cookie value
Parameters:
browser_uuid (string)* — Browser UUIDname (string)* — Cookie namebrowser_clear_cookiesMCP ToolClear all cookies
Parameters:
browser_uuid (string)* — Browser UUIDbrowser_set_viewportMCP ToolSet viewport size
Parameters:
browser_uuid (string)* — Browser UUIDwidth (number)* — Width in pixelsheight (number)* — Height in pixelsbrowser_set_user_agentMCP ToolSet user agent string
Parameters:
browser_uuid (string)* — Browser UUIDuser_agent (string)* — User agent stringbrowser_set_zoomMCP ToolSet zoom level
Parameters:
browser_uuid (string)* — Browser UUIDfactor (number)* — Zoom factor (1.0 = 100%)browser_set_geolocationMCP ToolSet geolocation
Parameters:
browser_uuid (string)* — Browser UUIDlatitude (number)* — Latitudelongitude (number)* — Longitudebrowser_clear_geolocationMCP ToolClear geolocation override
Parameters:
browser_uuid (string)* — Browser UUIDbrowser_emulate_deviceMCP ToolEmulate a device
Parameters:
browser_uuid (string)* — Browser UUIDdevice_name (string)* — Device namebrowser_set_offlineMCP ToolSet offline mode
Parameters:
browser_uuid (string)* — Browser UUIDoffline (boolean)* — Enable offlineDeveloper Tools
Tools for working with browser developer tools and console.
browser_open_devtoolsMCP ToolOpen developer tools
Parameters:
browser_uuid (string)* — Browser UUIDbrowser_close_devtoolsMCP ToolClose developer tools
Parameters:
browser_uuid (string)* — Browser UUIDbrowser_enable_devtoolsMCP ToolEnable/disable DevTools
Parameters:
browser_uuid (string)* — Browser UUIDenable (boolean) — Enable (default: true)browser_get_consoleMCP ToolGet console messages
Parameters:
browser_uuid (string)* — Browser UUIDbrowser_clear_consoleMCP ToolClear console messages
Parameters:
browser_uuid (string)* — Browser UUIDbrowser_inject_cssMCP ToolInject CSS into the page
Parameters:
browser_uuid (string)* — Browser UUIDcss (string)* — CSS codebrowser_inject_scriptMCP ToolInject a script URL
Parameters:
browser_uuid (string)* — Browser UUIDscript_url (string)* — Script URLReal-World Examples
Here are some examples of what you can say to Claude to control MetaDock.
Create a Research Setup
"Create a new workspace called 'Research' and open Google Scholar, PubMed, and arXiv in it"
Claude creates the workspace, opens 3 browsers with those academic sites, and arranges them in a grid
Multi-Account Social Media
"Open Twitter with my 'personal' profile and Instagram with my 'business' profile side by side"
Claude creates two browsers with different profiles, ensuring complete session isolation
Automated Form Filling
"Go to the contact form on example.com, fill in my name as John Doe, email as [email protected], and submit"
Claude navigates to the page, fills each field, and clicks submit
Visual Monitoring
"Take screenshots of all my open browsers and tell me which ones have error messages"
Claude captures screenshots from each browser, analyzes them, and reports any errors found
Workspace Restore
"Switch to my 'Work' workspace"
Claude switches workspaces, restoring all your work browsers exactly as you left them
Device Testing
"Open example.com and test how it looks on iPhone 12, iPad, and desktop"
Claude creates browsers with different device emulations so you can compare layouts
Quick Reference: 92 MCP Tools
Browser (35 tools)
- Create, navigate, close
- Click, type, set values
- Screenshot, PDF
- Execute JavaScript
- Scroll, wait, inject
Workspace & Layout (20 tools)
- Create, switch, delete
- Rename, set homepage
- Get info, list all
- Manage layouts
- Get browsers/apps
Profile & Settings (35 tools)
- Profile management
- Cookies, viewport
- Geolocation, device
- User agent, zoom
- DevTools, console