Testing client for MCP servers

Test your MCP servers with confidence.

Orchestra is a Postman-style desktop app and CLI to connect, inspect, and continuously test Model Context Protocol servers, from your laptop to your CI pipeline.

Works with any MCP server

stdio HTTP SSE OAuth 2.1

Compatible with Atlassian, Notion, GitHub, and internal servers.

0.2s engine cold start
~18MB memory while testing
3 transports: stdio · HTTP · SSE
100% local — tokens never leave your machine

The problem

Every team is shipping MCP servers. Testing them means hand-rolling JSON-RPC calls or clicking through a throwaway inspector that never makes it into CI.

The fix

Orchestra gives you a real testing workflow: connect to any server, inspect its full surface, build collections by clicking, and run them locally or headlessly — with the same YAML files in both places.

Connect → Inspect → Build → Run

Four steps from a fresh MCP server to a regression suite in your repo.

01

Connect

Attach to stdio, HTTP, or SSE servers — including OAuth 2.1 protected production endpoints.

transport: sse
url: https://mcp.notion.com

02

Inspect

Browse tools, resources, and prompts. Call any tool with schema-generated forms.

tools/ get_forecast
resources/ weather://current

03

Build

Click any response value to create a JSONPath assertion. Save steps as reusable collections.

assert:
  expr: $.temperature
  exists: true

04

Run

Execute collections with a pass/fail console locally, or headlessly in CI with JUnit output.

3 passed · 0 failed
junit.xml → artifacts/

Built for MCP, not adapted from REST

Every feature maps to a real gap in how teams test Model Context Protocol servers today.

Live tool inspection

Schema-generated forms, instant tool calls, and full browsing of resources and prompts.

Click-to-assert

Turn any response value into a JSONPath assertion. No YAML by hand.

Git-native workspaces

Collections and connections are plain YAML files you commit, diff, and review.

OAuth 2.1, handled

Real browser sign-in, discovery, dynamic registration, PKCE, and auto-refresh.

CI in minutes

Headless CLI, JUnit output, retries, per-step timeouts, and a bundled GitHub Action.

Enterprise networks

Corporate proxies, internal CAs, and custom gateway headers supported out of the box.

From clicks to CI

Build a collection in the GUI. Commit the YAML. Run it in your pipeline with zero translation layer.

smoke.yaml yaml
# smoke.yaml
version: 1
name: Weather server smoke test
server: local
steps:
  - id: current
    type: tool_call
    tool: get_forecast
    input: { city: "SF" }
  - type: assert
    expr: $.temperature
    exists: true
.github/workflows/mcp.yml yaml
# .github/workflows/mcp.yml
- uses: your-org/orchestra@v1
  with:
    collections: tests/mcp
    environment: staging

The same file you build in the GUI runs in your pipeline.

Built the way platform teams expect

Local-first

Tokens and server data stay on your machine. No cloud account required to test.

Lightweight

A small native engine does the work — 0.2s cold start, ~18MB of memory while testing.

Open workflow

Plain YAML files, no lock-in. Your collections live in git alongside your server code.

Ship MCP servers you can trust.

Download Orchestra and run your first collection in under five minutes.

Download for macOS Apple Silicon · free

Get in touch

Questions, feedback, or interested in Orchestra for your team? Send a note and I'll get back to you.