Bruno

Provides an MCP server that runs Bruno API tests, validates collections and environments, and generates JSON, JUnit XML, and HTML reports.
  • typescript

2

GitHub Stars

typescript

Language

6 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "jcr82-bruno-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "bruno-mcp-server"
      ]
    }
  }
}

You can run API tests, validate Bruno collections, and generate reports directly through a Model Context Protocol (MCP) server that integrates Bruno CLI. This enables quick API verification, collection management, and detailed diagnostics all from a unified testing surface.

How to use

Use an MCP client to connect to the Bruno MCP Server and perform, in practical terms, API request execution, collection validation, environment checks, and reporting. You can discover Bruno collections across directories, run individual requests or entire collections, inspect requests without executing them, and generate JSON, JUnit XML, or HTML reports. Dry run mode lets you validate configurations without making HTTP calls, while caching and metrics improve performance. Security features protect paths, sanitize inputs, and mask secrets during logging.

How to install

Prerequisites you need before installing the Bruno MCP Server are straightforward: Node.js 20 or higher and Bruno collections (files with the .bru extension). Then choose an installation method.

Install with Claude MCP Add (recommended)

claude mcp add --transport stdio bruno -- npx -y bruno-mcp-server

Manual installation

Optionally, you can install the server manually and configure Claude to use it.

Configuration and usage notes

The server supports a variety of configuration options to control timeouts, retries, security, logging, and performance. You can tailor behavior such as request timeouts, retry policies, allowed collection paths, secret masking, logging format, and cache settings to fit your needs.

Sample configuration

{
  "timeout": {
    "request": 30000,
    "collection": 120000
  },
  "retry": {
    "enabled": true,
    "maxAttempts": 3,
    "backoff": "exponential"
  },
  "security": {
    "allowedPaths": ["/path/to/collections"],
    "maskSecrets": true,
    "secretPatterns": ["password", "api[_-]?key", "token"]
  },
  "logging": {
    "level": "info",
    "format": "json"
  },
  "performance": {
    "cacheEnabled": true,
    "cacheTTL": 300000
  }
}

Dry Run mode

Use dry run to validate the request configuration without executing HTTP calls. This helps you verify that your setup is correct before making real requests.

Running tests and generating reports

Execute a single request or an entire collection, then generate reports in JSON, JUnit XML, and HTML formats to suit your CI/CD or local review needs.

Discovery and environments

You can recursively discover Bruno collections across directories and list or validate environments within a collection (for example dev, staging, production). This helps you quickly validate that environments are configured correctly before running tests.

Health and security

The server provides health diagnostics and security features such as path validation, input sanitization, and secret masking to help you maintain secure and reliable test runs.

Notes on tooling

You will use Bruno CLI tooling for managing and running API tests through the MCP interface. This enables tight integration with your existing Bruno collections and workflows.

Troubleshooting

If you encounter issues during installation or operation, verify prerequisites, confirm the MCP command is correctly configured, and restart your Claude session after changes.

References and next steps

For more in-depth setup and options, configure the MCP with the provided configuration file and leverage the health, discovery, and reporting capabilities to maintain a robust API testing workflow.

Available tools

bruno_run_request

Execute a single Bruno request from a specified collection and environment, with optional dry run and reporting features.

bruno_run_collection

Execute all requests within a Bruno collection, with optional environment, folder scoping, and reporting.

bruno_list_requests

List all requests contained in a Bruno collection to help you explore the API before running tests.

bruno_discover_collections

Recursively discover Bruno collections across a given search path up to a specified depth.

bruno_list_environments

List available environments within a Bruno collection such as dev, staging, or production.

bruno_validate_environment

Validate that a specific environment within a collection meets compatibility and safety rules.

bruno_get_request_details

Inspect details of a specific request within a Bruno collection to understand its configuration.

bruno_validate_collection

Validate the structure and schema of a Bruno collection to ensure it is ready for testing.

bruno_health_check

Provide health diagnostics for the MCP server, optionally including metrics and cache statistics.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational