Skip to main content

Model Context Protocol servers for IBM Quantum services and Qiskit

Project description

Qiskit MCP Servers

Tests License Python Version Code style: ruff Type checked: mypy

qiskit-mcp-server qiskit-ibm-runtime-mcp-server qiskit-ibm-transpiler-mcp-server qiskit-docs-mcp-server qiskit-gym-mcp-server

A collection of Model Context Protocol (MCP) servers that give AI assistants, LLMs, and agents seamless access to IBM Quantum services and Qiskit libraries. Generate quantum code, connect to real hardware, analyze backends, execute circuits, and search Qiskit documentation — all through a standardized protocol that works with any MCP-compatible client.

Quick Start

Prerequisites

  • Python 3.10+ (3.11+ recommended)
  • IBM Quantum account and API token (only required for IBM cloud servers: Runtime, Transpiler)

Install from PyPI

# Install all servers (core + community)
pip install "qiskit-mcp-servers[all]"

# Install core servers only (default, excludes community)
pip install qiskit-mcp-servers
Install individual servers
pip install "qiskit-mcp-servers[qiskit]"          # Qiskit server only
pip install "qiskit-mcp-servers[runtime]"         # IBM Runtime server only
pip install "qiskit-mcp-servers[transpiler]"      # IBM Transpiler server only
pip install "qiskit-mcp-servers[docs]"            # Documentation server only
pip install "qiskit-mcp-servers[gym]"             # Qiskit Gym server only (community)

Install from Source

Each server runs independently — the directory name and command are the same:

cd qiskit-mcp-server  # or any server directory
pip install -e .
qiskit-mcp-server

Configuration

Servers that connect to IBM Quantum cloud services require a QISKIT_IBM_TOKEN environment variable. See each server's README for the full list of environment variables and configuration options.

export QISKIT_IBM_TOKEN="your_ibm_quantum_token_here"

Client Setup

All servers are compatible with any MCP client. Pick your client below.

Claude Code

Claude Code Video

# No auth required
claude mcp add qiskit -- uvx qiskit-mcp-server
claude mcp add qiskit-docs -- uvx qiskit-docs-mcp-server
claude mcp add qiskit-gym -- uvx qiskit-gym-mcp-server

# Require QISKIT_IBM_TOKEN (https://quantum.ibm.com)
claude mcp add qiskit-ibm-runtime -e QISKIT_IBM_TOKEN=$QISKIT_IBM_TOKEN -- uvx qiskit-ibm-runtime-mcp-server
claude mcp add qiskit-ibm-transpiler -e QISKIT_IBM_TOKEN=$QISKIT_IBM_TOKEN -- uvx qiskit-ibm-transpiler-mcp-server

IBM Bob

IBM Bob Video

Add to your ~/.bob/settings/mcp_settings.json:

{
    "mcpServers": {
        "qiskit": {
            "command": "uvx",
            "args": ["qiskit-mcp-server"],
            "alwaysAllow": [],
            "disabled": false
        },
        "qiskit-docs": {
            "command": "uvx",
            "args": ["qiskit-docs-mcp-server"],
            "alwaysAllow": [],
            "disabled": false
        },
        "qiskit-gym": {
            "command": "uvx",
            "args": ["qiskit-gym-mcp-server"],
            "alwaysAllow": [],
            "disabled": false
        },
        "qiskit-ibm-runtime": {
            "command": "uvx",
            "args": ["qiskit-ibm-runtime-mcp-server"],
            "env": {
                "QISKIT_IBM_TOKEN": "<your IBM Quantum token>",
                "QISKIT_IBM_RUNTIME_MCP_INSTANCE": "<Optional: Your IBM Quantum instance CRN>"
            },
            "alwaysAllow": [],
            "disabled": false
        },
        "qiskit-ibm-transpiler": {
            "command": "uvx",
            "args": ["qiskit-ibm-transpiler-mcp-server"],
            "env": {
                "QISKIT_IBM_TOKEN": "<your IBM Quantum token>"
            },
            "alwaysAllow": [],
            "disabled": false
        }
    }
}
Claude Desktop / Cline

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "qiskit": {
      "command": "uvx",
      "args": ["qiskit-mcp-server"]
    },
    "qiskit-docs": {
      "command": "uvx",
      "args": ["qiskit-docs-mcp-server"]
    },
    "qiskit-gym": {
      "command": "uvx",
      "args": ["qiskit-gym-mcp-server"]
    },
    "qiskit-ibm-runtime": {
      "command": "uvx",
      "args": ["qiskit-ibm-runtime-mcp-server"],
      "env": {
        "QISKIT_IBM_TOKEN": "your_ibm_quantum_token_here"
      }
    },
    "qiskit-ibm-transpiler": {
      "command": "uvx",
      "args": ["qiskit-ibm-transpiler-mcp-server"],
      "env": {
        "QISKIT_IBM_TOKEN": "your_ibm_quantum_token_here"
      }
    }
  }
}
MCP Inspector (interactive testing)
npx @modelcontextprotocol/inspector uvx qiskit-mcp-server
npx @modelcontextprotocol/inspector uvx qiskit-docs-mcp-server
npx @modelcontextprotocol/inspector uvx qiskit-ibm-runtime-mcp-server
# etc.

Available Servers

Core Servers

Server Description Directory
Qiskit MCP Server Circuit creation, transpilation, and serialization (QASM3, QPY) using Qiskit qiskit-mcp-server/
Qiskit IBM Runtime Full access to IBM Quantum hardware via Qiskit IBM Runtime qiskit-ibm-runtime-mcp-server/
Qiskit IBM Transpiler AI-optimized circuit routing and optimization via qiskit-ibm-transpiler qiskit-ibm-transpiler-mcp-server/
Qiskit Docs Search and retrieve Qiskit documentation, guides, and API references. No auth required. qiskit-docs-mcp-server/

Community Servers

Server Description Directory
Qiskit Gym RL-based quantum circuit synthesis using qiskit-gym (permutation routing, linear functions, Clifford circuits) qiskit-gym-mcp-server/

Removed Servers

  • Qiskit Code Assistant MCP Server — previously published as qiskit-code-assistant-mcp-server. Removed because the underlying Qiskit Code Assistant service has been discontinued by IBM Quantum. See the sunset announcement. The PyPI package is archived and no longer maintained.

Examples

Each server includes an examples/ directory with a Jupyter notebook (langchain_agent.ipynb) and a Python script (langchain_agent.py) showing how to build AI agents with LangChain.

The root examples/ directory contains a multi-agent Quantum Volume Finder that orchestrates multiple MCP servers to find the highest achievable Quantum Volume on IBM Quantum hardware. See the examples README for details.

Architecture

All servers are built on FastMCP and share a consistent structure:

  • Async-first — all tool and resource handlers are async, using FastMCP's native async support
  • Standalone packages — each server is an independent PyPI package with its own pyproject.toml, tests, and CI
  • MCP Registry — every server ships a server.json manifest for automatic discovery
  • Unified meta-packageqiskit-mcp-servers installs any combination via pip extras
  • Full MCP protocol — tools (quantum operations), resources (backend info, service status), and stdio transport

Development

Running Tests

cd qiskit-mcp-server  # or any server directory
./run_tests.sh

Code Quality

  • Linting: ruff check and ruff format
  • Type checking: mypy src/
  • Testing: pytest with async support and coverage reporting
  • CI/CD: GitHub Actions for automated testing

Resources

Contributing

Contributions are welcome! Please see the CONTRIBUTING.md guide for details.

License

This project is licensed under the Apache License 2.0.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

qiskit_mcp_servers-0.11.0.tar.gz (14.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

qiskit_mcp_servers-0.11.0-py3-none-any.whl (9.2 kB view details)

Uploaded Python 3

File details

Details for the file qiskit_mcp_servers-0.11.0.tar.gz.

File metadata

  • Download URL: qiskit_mcp_servers-0.11.0.tar.gz
  • Upload date:
  • Size: 14.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for qiskit_mcp_servers-0.11.0.tar.gz
Algorithm Hash digest
SHA256 4823657a2696e43c212983384eae943b931eea7448b4fc01b2387f28548faf72
MD5 4ec2fc0fc68d3706d60a9a75b8809c24
BLAKE2b-256 f5705be093c432ec9b71dc125dc84417ba9765bf5c5e96bb3cd4f0f67693a3cb

See more details on using hashes here.

Provenance

The following attestation bundles were made for qiskit_mcp_servers-0.11.0.tar.gz:

Publisher: publish-pypi.yml on Qiskit/mcp-servers

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file qiskit_mcp_servers-0.11.0-py3-none-any.whl.

File metadata

File hashes

Hashes for qiskit_mcp_servers-0.11.0-py3-none-any.whl
Algorithm Hash digest
SHA256 eb46e67f4f1e75c06e93bc20150b19e951906958cce9cb126062563e28459b35
MD5 f731b888a030d563f6a49ddfe3b3b5ea
BLAKE2b-256 a98b5c37d0095c9274673cadeb071907490fb33e935652a5d586df0b4d9d568e

See more details on using hashes here.

Provenance

The following attestation bundles were made for qiskit_mcp_servers-0.11.0-py3-none-any.whl:

Publisher: publish-pypi.yml on Qiskit/mcp-servers

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page