# SmartBear MCP server

> Query and manage BugSnag, Swagger, PactFlow, Reflect, Zephyr, QMetry and other SmartBear testing and monitoring tools.

- Listing: https://mcp.tc/i/smartbear
- Connect: this is a local (stdio) server; install it on your machine (see Install). The listing link is a page, not an MCP endpoint.
- Type: local (stdio)
- Auth: API key
- Category: [Developer Tools](https://mcp.tc/c/developer-tools)
- Vendor: SmartBear
- Homepage: <https://github.com/SmartBear/smartbear-mcp>
- Repository: <https://github.com/SmartBear/smartbear-mcp>
- Package: npm `@smartbear/mcp`

## About

Connects an assistant to SmartBear products: BearQ, BugSnag, Reflect, Swagger (Portal, Studio, Functional Testing), PactFlow and Pact Broker, QMetry, QTM4J, Zephyr and Collaborator. You can look up error data, manage API definitions, work with contract tests and handle test management through natural language.

Runs locally as the npm package @smartbear/mcp (Node.js 22+) over stdio. Each product is enabled by setting its own token or API key, and unused products can be left blank. SmartBear also hosts OAuth-based remote servers for BugSnag, Swagger and Zephyr, which need no local install or tokens.

## What it can do

- Query BugSnag error monitoring data
- Manage Swagger Portal and Studio APIs and domains
- Work with PactFlow contract testing
- Run and manage Reflect and BearQ tests
- Access Zephyr, QMetry and QTM4J test management
- Manage Collaborator reviews

## Example prompts

- "Show the most frequent unresolved BugSnag errors in my project"
- "List the APIs in my Swagger Studio organization"
- "Check contract test status for my consumer in PactFlow"
- "List recent Zephyr test cycles for my project"

## Install

### Claude Code

1. Run this in a terminal, in your project folder:

```bash
claude mcp add --transport stdio smartbear --env "BEARQ_API_TOKEN=<YOUR_BEARQ_API_TOKEN>" --env "BUGSNAG_AUTH_TOKEN=<YOUR_BUGSNAG_AUTH_TOKEN>" --env "REFLECT_API_TOKEN=<YOUR_REFLECT_API_TOKEN>" --env "SWAGGER_API_KEY=<YOUR_SWAGGER_API_KEY>" --env "SWAGGER_FUNCTIONAL_TESTING_API_TOKEN=<YOUR_SWAGGER_FUNCTIONAL_TESTING_API_TOKEN>" --env "PACT_BROKER_TOKEN=<YOUR_PACT_BROKER_TOKEN>" --env "PACT_BROKER_PASSWORD=<YOUR_PACT_BROKER_PASSWORD>" --env "ZEPHYR_API_TOKEN=<YOUR_ZEPHYR_API_TOKEN>" -- npx -y @smartbear/mcp@latest
```

2. Start Claude Code and type `/mcp`. **smartbear** should show as connected.

Add `--scope user` to make it available in every project. Replace the placeholders with your own values.

### Claude Desktop

1. Open **Settings → Developer → Edit Config**. It opens `claude_desktop_config.json`. Add:

`claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "smartbear": {
      "command": "npx",
      "args": [
        "-y",
        "@smartbear/mcp@latest"
      ],
      "env": {
        "BEARQ_API_TOKEN": "<YOUR_BEARQ_API_TOKEN>",
        "BUGSNAG_AUTH_TOKEN": "<YOUR_BUGSNAG_AUTH_TOKEN>",
        "REFLECT_API_TOKEN": "<YOUR_REFLECT_API_TOKEN>",
        "SWAGGER_API_KEY": "<YOUR_SWAGGER_API_KEY>",
        "SWAGGER_FUNCTIONAL_TESTING_API_TOKEN": "<YOUR_SWAGGER_FUNCTIONAL_TESTING_API_TOKEN>",
        "PACT_BROKER_TOKEN": "<YOUR_PACT_BROKER_TOKEN>",
        "PACT_BROKER_PASSWORD": "<YOUR_PACT_BROKER_PASSWORD>",
        "ZEPHYR_API_TOKEN": "<YOUR_ZEPHYR_API_TOKEN>"
      }
    }
  }
}
```

2. Save the file and restart Claude Desktop. Replace the placeholders with your own values.

Needs Node.js on your computer. The file lives in `~/Library/Application Support/Claude/` on macOS and `%APPDATA%\Claude\` on Windows.

### Cursor

[Add to Cursor](<https://cursor.com/install-mcp?name=smartbear&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBzbWFydGJlYXIvbWNwQGxhdGVzdCJdLCJlbnYiOnsiQkVBUlFfQVBJX1RPS0VOIjoiPFlPVVJfQkVBUlFfQVBJX1RPS0VOPiIsIkJVR1NOQUdfQVVUSF9UT0tFTiI6IjxZT1VSX0JVR1NOQUdfQVVUSF9UT0tFTj4iLCJSRUZMRUNUX0FQSV9UT0tFTiI6IjxZT1VSX1JFRkxFQ1RfQVBJX1RPS0VOPiIsIlNXQUdHRVJfQVBJX0tFWSI6IjxZT1VSX1NXQUdHRVJfQVBJX0tFWT4iLCJTV0FHR0VSX0ZVTkNUSU9OQUxfVEVTVElOR19BUElfVE9LRU4iOiI8WU9VUl9TV0FHR0VSX0ZVTkNUSU9OQUxfVEVTVElOR19BUElfVE9LRU4%2BIiwiUEFDVF9CUk9LRVJfVE9LRU4iOiI8WU9VUl9QQUNUX0JST0tFUl9UT0tFTj4iLCJQQUNUX0JST0tFUl9QQVNTV09SRCI6IjxZT1VSX1BBQ1RfQlJPS0VSX1BBU1NXT1JEPiIsIlpFUEhZUl9BUElfVE9LRU4iOiI8WU9VUl9aRVBIWVJfQVBJX1RPS0VOPiJ9fQ%3D%3D>) (opens Cursor)

Or add it by hand to `~/.cursor/mcp.json` (all projects) or `.cursor/mcp.json` (this project):

`mcp.json`:

```json
{
  "mcpServers": {
    "smartbear": {
      "command": "npx",
      "args": [
        "-y",
        "@smartbear/mcp@latest"
      ],
      "env": {
        "BEARQ_API_TOKEN": "<YOUR_BEARQ_API_TOKEN>",
        "BUGSNAG_AUTH_TOKEN": "<YOUR_BUGSNAG_AUTH_TOKEN>",
        "REFLECT_API_TOKEN": "<YOUR_REFLECT_API_TOKEN>",
        "SWAGGER_API_KEY": "<YOUR_SWAGGER_API_KEY>",
        "SWAGGER_FUNCTIONAL_TESTING_API_TOKEN": "<YOUR_SWAGGER_FUNCTIONAL_TESTING_API_TOKEN>",
        "PACT_BROKER_TOKEN": "<YOUR_PACT_BROKER_TOKEN>",
        "PACT_BROKER_PASSWORD": "<YOUR_PACT_BROKER_PASSWORD>",
        "ZEPHYR_API_TOKEN": "<YOUR_ZEPHYR_API_TOKEN>"
      }
    }
  }
}
```

Needs Node.js on your computer. Replace the placeholders with your own values.

### VS Code

Add it to `.vscode/mcp.json`. VS Code asks for the secret the first time and stores it securely:

`.vscode/mcp.json`:

```json
{
  "servers": {
    "smartbear": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@smartbear/mcp@latest"
      ],
      "env": {
        "BEARQ_API_TOKEN": "${input:bearq-api-token}",
        "BUGSNAG_AUTH_TOKEN": "${input:bugsnag-auth-token}",
        "REFLECT_API_TOKEN": "${input:reflect-api-token}",
        "SWAGGER_API_KEY": "${input:swagger-api-key}",
        "SWAGGER_FUNCTIONAL_TESTING_API_TOKEN": "${input:swagger-functional-testing-api-token}",
        "PACT_BROKER_TOKEN": "${input:pact-broker-token}",
        "PACT_BROKER_PASSWORD": "${input:pact-broker-password}",
        "ZEPHYR_API_TOKEN": "${input:zephyr-api-token}"
      }
    }
  },
  "inputs": [
    {
      "type": "promptString",
      "id": "bearq-api-token",
      "description": "BEARQ_API_TOKEN",
      "password": true
    },
    {
      "type": "promptString",
      "id": "bugsnag-auth-token",
      "description": "BUGSNAG_AUTH_TOKEN",
      "password": true
    },
    {
      "type": "promptString",
      "id": "reflect-api-token",
      "description": "REFLECT_API_TOKEN",
      "password": true
    },
    {
      "type": "promptString",
      "id": "swagger-api-key",
      "description": "SWAGGER_API_KEY",
      "password": true
    },
    {
      "type": "promptString",
      "id": "swagger-functional-testing-api-token",
      "description": "SWAGGER_FUNCTIONAL_TESTING_API_TOKEN",
      "password": true
    },
    {
      "type": "promptString",
      "id": "pact-broker-token",
      "description": "PACT_BROKER_TOKEN",
      "password": true
    },
    {
      "type": "promptString",
      "id": "pact-broker-password",
      "description": "PACT_BROKER_PASSWORD",
      "password": true
    },
    {
      "type": "promptString",
      "id": "zephyr-api-token",
      "description": "ZEPHYR_API_TOKEN",
      "password": true
    }
  ]
}
```

Needs Node.js on your computer.

### Devin Desktop

1. Add it to `~/.config/devin/mcp_config.json` (macOS and Linux) or `%APPDATA%\devin\mcp_config.json` (Windows):

`mcp_config.json`:

```json
{
  "mcpServers": {
    "smartbear": {
      "command": "npx",
      "args": [
        "-y",
        "@smartbear/mcp@latest"
      ],
      "env": {
        "BEARQ_API_TOKEN": "<YOUR_BEARQ_API_TOKEN>",
        "BUGSNAG_AUTH_TOKEN": "<YOUR_BUGSNAG_AUTH_TOKEN>",
        "REFLECT_API_TOKEN": "<YOUR_REFLECT_API_TOKEN>",
        "SWAGGER_API_KEY": "<YOUR_SWAGGER_API_KEY>",
        "SWAGGER_FUNCTIONAL_TESTING_API_TOKEN": "<YOUR_SWAGGER_FUNCTIONAL_TESTING_API_TOKEN>",
        "PACT_BROKER_TOKEN": "<YOUR_PACT_BROKER_TOKEN>",
        "PACT_BROKER_PASSWORD": "<YOUR_PACT_BROKER_PASSWORD>",
        "ZEPHYR_API_TOKEN": "<YOUR_ZEPHYR_API_TOKEN>"
      }
    }
  }
}
```

2. Refresh the MCP server list in Cascade. Replace the placeholders with your own values.

Devin Desktop is the new name for Windsurf.

### Codex

```bash
codex mcp add smartbear --env "BEARQ_API_TOKEN=<YOUR_BEARQ_API_TOKEN>" --env "BUGSNAG_AUTH_TOKEN=<YOUR_BUGSNAG_AUTH_TOKEN>" --env "REFLECT_API_TOKEN=<YOUR_REFLECT_API_TOKEN>" --env "SWAGGER_API_KEY=<YOUR_SWAGGER_API_KEY>" --env "SWAGGER_FUNCTIONAL_TESTING_API_TOKEN=<YOUR_SWAGGER_FUNCTIONAL_TESTING_API_TOKEN>" --env "PACT_BROKER_TOKEN=<YOUR_PACT_BROKER_TOKEN>" --env "PACT_BROKER_PASSWORD=<YOUR_PACT_BROKER_PASSWORD>" --env "ZEPHYR_API_TOKEN=<YOUR_ZEPHYR_API_TOKEN>" -- npx -y @smartbear/mcp@latest
```

Or edit `~/.codex/config.toml` directly:

`config.toml`:

```toml
[mcp_servers.smartbear]
command = "npx"
args = ["-y", "@smartbear/mcp@latest"]
env = { BEARQ_API_TOKEN = "<YOUR_BEARQ_API_TOKEN>", BUGSNAG_AUTH_TOKEN = "<YOUR_BUGSNAG_AUTH_TOKEN>", REFLECT_API_TOKEN = "<YOUR_REFLECT_API_TOKEN>", SWAGGER_API_KEY = "<YOUR_SWAGGER_API_KEY>", SWAGGER_FUNCTIONAL_TESTING_API_TOKEN = "<YOUR_SWAGGER_FUNCTIONAL_TESTING_API_TOKEN>", PACT_BROKER_TOKEN = "<YOUR_PACT_BROKER_TOKEN>", PACT_BROKER_PASSWORD = "<YOUR_PACT_BROKER_PASSWORD>", ZEPHYR_API_TOKEN = "<YOUR_ZEPHYR_API_TOKEN>" }
```

Needs Node.js on your computer. Replace the placeholders with your own values.

### Gemini CLI

```bash
gemini mcp add -e "BEARQ_API_TOKEN=<YOUR_BEARQ_API_TOKEN>" -e "BUGSNAG_AUTH_TOKEN=<YOUR_BUGSNAG_AUTH_TOKEN>" -e "REFLECT_API_TOKEN=<YOUR_REFLECT_API_TOKEN>" -e "SWAGGER_API_KEY=<YOUR_SWAGGER_API_KEY>" -e "SWAGGER_FUNCTIONAL_TESTING_API_TOKEN=<YOUR_SWAGGER_FUNCTIONAL_TESTING_API_TOKEN>" -e "PACT_BROKER_TOKEN=<YOUR_PACT_BROKER_TOKEN>" -e "PACT_BROKER_PASSWORD=<YOUR_PACT_BROKER_PASSWORD>" -e "ZEPHYR_API_TOKEN=<YOUR_ZEPHYR_API_TOKEN>" smartbear npx -- -y @smartbear/mcp@latest
```

This adds it to the current project. Add `-s user` to use it everywhere.

### Any client

Most clients that start local servers accept this shape:

```json
{
  "mcpServers": {
    "smartbear": {
      "command": "npx",
      "args": [
        "-y",
        "@smartbear/mcp@latest"
      ],
      "env": {
        "BEARQ_API_TOKEN": "<YOUR_BEARQ_API_TOKEN>",
        "BUGSNAG_AUTH_TOKEN": "<YOUR_BUGSNAG_AUTH_TOKEN>",
        "REFLECT_API_TOKEN": "<YOUR_REFLECT_API_TOKEN>",
        "SWAGGER_API_KEY": "<YOUR_SWAGGER_API_KEY>",
        "SWAGGER_FUNCTIONAL_TESTING_API_TOKEN": "<YOUR_SWAGGER_FUNCTIONAL_TESTING_API_TOKEN>",
        "PACT_BROKER_TOKEN": "<YOUR_PACT_BROKER_TOKEN>",
        "PACT_BROKER_PASSWORD": "<YOUR_PACT_BROKER_PASSWORD>",
        "ZEPHYR_API_TOKEN": "<YOUR_ZEPHYR_API_TOKEN>"
      }
    }
  }
}
```

Zed puts servers under `context_servers` in its settings, with the same `command`, `args` and `env` fields.

Needs Node.js on your computer. Replace the placeholders with your own values.

## Details

- Server version: 0.41.3
- Last checked: 2026-10-03
- Listed: 2026-10-03
- Updated: 2026-10-03

---
Source: https://mcp.tc/i/smartbear (mcp.tc is an independent directory, not affiliated with this server's publisher). Corrections: https://mcp.tc/report
