Skip to main content

harness-mcp

Add high-quality MCP servers to any AI harness. Start with OpenCode, extend to Claude Code, Cursor, and more.

Install

# Python (pip)
pip install harness-mcp

# Node.js (npm) — auto-installs Python deps
npm install -g harness-mcp

# Node.js (npx) — no install
npx harness-mcp list

# Single binary (no Python needed)
# Download from: https://github.com/suvenkatesh97/harness-mcp/releases

Quick Start

# See what's available
harness-mcp list

# Add a server
harness-mcp add github

# Add multiple
harness-mcp add github playwright brave-search

# Add all with a tag
harness-mcp add --tag browser

# Add with required env vars (will prompt interactively)
harness-mcp add slack

# Pass env vars for scripting
harness-mcp add slack --env SLACK_BOT_TOKEN=xoxb-your-token

# See what's configured
harness-mcp status

# Remove a server
harness-mcp remove github

Scope — Project vs Global

--scope controls where servers are written. Place it before or after the command:

# Project-scoped config (default) — ./opencode.jsonc
harness-mcp add docker

# Global config — ~/.config/opencode/opencode.json
harness-mcp --scope global add docker

# Also works after the command
harness-mcp status --scope global

Run harness-mcp status to see which config is in use.

Harness Support

Harness Status
OpenCode Supported
Claude Code Coming soon
Cursor Coming soon

Interactive Mode

pip install harness-mcp[interactive]
harness-mcp init

Commands

Command Description
list Browse the MCP server catalog
add <names...> Add servers by name or tag. Prompts for required env vars.
remove <names...> Remove servers from config
status Show configured MCP servers
search <query> Search the catalog by name, description, or tag
init Interactive selection wizard (needs [interactive])

All commands support --scope project|global to choose where config is written.

Global Flags

  • --harness - Target harness (opencode, claude, cursor). Auto-detected.
  • --scope - project (default) or global
  • --cwd - Working directory for project scope
  • --dry-run - Preview changes without writing

Custom Catalog Entries

Add your own MCP servers without code changes:

# ~/.config/harness-mcp/catalog/my-servers.yaml
servers:
  - id: my-custom-server
    name: My Custom MCP Server
    description: Does something useful
    type: local
    command:
      - npx
      - -y
      - my-mcp-server
    env_vars:
      - name: API_KEY
        description: Your API key
        required: true
    tags:
      - custom

Or project-level: .harness-mcp/catalog/*.yaml

OpenCode Plugin

Use harness-mcp directly within OpenCode:

{
  "plugin": ["@harness-mcp/opencode-plugin"]
}

Then ask OpenCode to use harness_mcp_list or use harness_mcp_add to add github.

Built-in Catalog

Server Type Category
GitHub local git, code-review
Filesystem local files, system
Git local git, version-control
Playwright local browser, testing
Brave Search local search, web
Memory local knowledge, persistence
Sequential Thinking local reasoning
Fetch local web, http
Context7 remote docs, libraries
Sentry remote monitoring, errors
Grep (Vercel) remote code-search
Serena local code-analysis
PostgreSQL local database
Slack local communication
Linear local project-management
Docker local containers
Puppeteer local browser, automation
GitLab local git, ci-cd
Notion local docs, knowledge
SerpAPI local search, web

Metadata

Release files for harness-mcp 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for harness-mcp 0.1.2
File Size Uploaded Provenance
harness_mcp-0.1.2.tar.gz 21.1 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for harness-mcp 0.1.2
File Interpreter ABI Platform
harness_mcp-0.1.2-py3-none-any.whl Python 3 none any Details

Total release size: 36.8 kB

Release files / harness_mcp-0.1.2.tar.gz

Download URL harness_mcp-0.1.2.tar.gz
Size 21.1 kB
Tags Source
SHA-256 checksum
How to use checksums
3b25fcd1bf1861ed627e7e2609dc9e9c18a155cfb3fec0c45a13c12f26e9a32f
BLAKE2b-256 checksum
How to use checksums
618865d3d6c7ad76075f2f9c05bbda7397a7be0a696f237fed722df0e5f186ee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.14

Release files / harness_mcp-0.1.2-py3-none-any.whl

Download URL harness_mcp-0.1.2-py3-none-any.whl
Size 15.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e59d83cec862d24eb730d7473188bffd5022d27fa2ba408e11338076a44f3268
BLAKE2b-256 checksum
How to use checksums
43b8755971cde7af33ebe1171ca5afe362962501b467922459c4cc75481d83cc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.14

Security for harness-mcp 0.1.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.2 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page