Connect Your AI Client to Sauce MCP
Sauce MCP is currently in beta. Configuration details may change.
This guide shows how to connect a supported AI client to the hosted Sauce MCP server.
Prerequisites
- A Sauce Labs account.
- Your Sauce Labs username and access key.
- The data center your account uses (US West, US East, or EU Central).
- To use the real-device session and on-device interaction tools: private (dedicated) devices and Real Device Access API concurrency on your account. See Tools.
Find your access key
Your username and access key are available from the top navigation bar in the Sauce Labs dashboard. Click the key icon to reveal them, then copy your Username and Access Key.
For full details, see Managing User Information.
Connection details
| Setting | Value |
|---|---|
| Transport | Streamable HTTP |
| Endpoint | https://mcp.saucelabs.com |
| Authentication | HTTP Basic Auth with your Sauce Labs username and access key |
Authentication uses HTTP Basic Auth. The credential is your username:access_key, Base64-encoded, sent in an Authorization: Basic <credentials> header. Many clients build this header for you when you provide a username and password. Tip: You can also set it as an environment variable for convenience:
export SAUCE_AUTH_TOKEN=$(echo -n "your_username:your_access_key" | base64)
Configure your client
Claude Code
Claude Desktop
Cursor
Windsurf
VS CodeIntelliJ
AntigravityGemini CLI
Goose
claude mcp add --transport http sauce-labs https://<sauce-mcp-endpoint> \
--header "Authorization: Basic <BASE64_OF_USERNAME_COLON_ACCESSKEY>"
.mcp.json file in your project root (or to your user-level ~/.claude.json):{
"mcpServers": {
"sauce-labs": {
"type": "http",
"url": "https://<sauce-mcp-endpoint>",
"headers": {
"Authorization": "Basic <BASE64_OF_USERNAME_COLON_ACCESSKEY>"
}
}
}
}
<BASE64_OF_USERNAME_COLON_ACCESSKEY> with the Base64 encoding of your-username:your-access-key.claude_desktop_config.json (Settings → Developer → Edit Config). Claude Desktop connects to remote servers through the mcp-remote bridge:{
"mcpServers": {
"sauce-labs": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://<sauce-mcp-endpoint>",
"--header",
"Authorization: Basic <BASE64_OF_USERNAME_COLON_ACCESSKEY>"
]
}
}
}
~/.cursor/mcp.json (global) or .cursor/mcp.json (per project):{
"mcpServers": {
"sauce-labs": {
"url": "https://<sauce-mcp-endpoint>",
"headers": {
"Authorization": "Basic <BASE64_OF_USERNAME_COLON_ACCESSKEY>"
}
}
}
}
~/.codeium/windsurf/mcp_config.json):{
"mcpServers": {
"sauce-labs": {
"serverUrl": "https://<sauce-mcp-endpoint>",
"headers": {
"Authorization": "Basic <BASE64_OF_USERNAME_COLON_ACCESSKEY>"
}
}
}
}
.vscode/mcp.json in your workspace:{
"servers": {
"sauce-labs": {
"type": "http",
"url": "https://<sauce-mcp-endpoint>",
"headers": {
"Authorization": "Basic <BASE64_OF_USERNAME_COLON_ACCESSKEY>"
}
}
}
}
{
"mcpServers": {
"sauce-labs": {
"url": "https://<sauce-mcp-endpoint>",
"headers": {
"Authorization": "Basic <BASE64_OF_USERNAME_COLON_ACCESSKEY>"
}
}
}
}
{
"mcpServers": {
"sauce-labs": {
"serverUrl": "https://<sauce-mcp-endpoint>",
"headers": {
"Authorization": "Basic <BASE64_OF_USERNAME_COLON_ACCESSKEY>"
}
}
}
}
~/.gemini/settings.json:{
"mcpServers": {
"sauce-labs": {
"httpUrl": "https://<sauce-mcp-endpoint>",
"headers": {
"Authorization": "Basic <BASE64_OF_USERNAME_COLON_ACCESSKEY>"
}
}
}
}
- Type: Remote (Streamable HTTP)
- Endpoint:
https://<sauce-mcp-endpoint> - Header:
Authorization: Basic <BASE64_OF_USERNAME_COLON_ACCESSKEY>
Verify the connection
In your AI client, ask:
What's my Sauce Labs account information?
If the connection works, the agent calls Sauce MCP and returns your account details. This prompt works on any account, since it does not require private devices or Real Device Access API concurrency.
Troubleshooting
- Authentication failed / 401: Recheck your username and access key and confirm the
Authorizationheader is correctly Base64-encoded. - Empty or unexpected results: Confirm you are connecting to the endpoint for the data center where your account and devices live.
- Client can't reach the server: Confirm the endpoint URL is correct and that your client supports remote Streamable HTTP servers (Claude Desktop uses the
mcp-remotebridge above).