# Connect your AI tools

URL: https://docs.testvibe.com/testvibe-api/getting-started/connect-ai-tools

`testvibe mcp` starts a stdio [MCP](https://modelcontextprotocol.io) server exposing all 19 operations as tools, so an AI assistant can manage features, generate tests, run them, and read results on your behalf.

First install the CLI and create an [API key](/testvibe-api/getting-started/authentication) . Then connect your client:

- Claude Code - Claude Desktop - Codex

```bash
claude mcp add testvibe \
  -e TESTVIBE_SERVER=https://YOUR-TESTVIBE-SERVER \
  -e TESTVIBE_API_KEY=tvb_XXXXXXXX… \
  -- testvibe mcp
```

Add to `claude_desktop_config.json` :
```json
{
  "mcpServers": {
    "testvibe": {
      "command": "testvibe",
      "args": ["mcp"],
      "env": {
        "TESTVIBE_SERVER": "https://YOUR-TESTVIBE-SERVER",
        "TESTVIBE_API_KEY": "tvb_XXXXXXXX…"
      }
    }
  }
}
```

Add to `~/.codex/config.toml` :
```toml
[mcp_servers.testvibe]
command = "testvibe"
args = ["mcp"]
env = { TESTVIBE_SERVER = "https://YOUR-TESTVIBE-SERVER", TESTVIBE_API_KEY = "tvb_XXXXXXXX…" }
```

info
The Settings → **CLI & API keys** panel in the app generates these snippets for you, pre-filled with your server URL.

## Try it

Ask your assistant something like:

> List my TestVibe projects, then run the "Login Functionality" feature on Acme Shop and tell me which tests failed.

The assistant will chain `list_projects` → `run_feature` → `wait_for_run` → `get_run` and summarize the digest.

## Default project

Most tools are project-scoped. Set a default with `testvibe use <project>` (or `TESTVIBE_PROJECT` / `.testvibe.json` ) so the assistant doesn't need to pass `project` on every call — an explicit `project` argument always wins. See [The TestVibe MCP server](/testvibe-api/mcp) for the full tool list.
