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

A collection of Model Context Protocol (MCP) servers that provide AI assistants, LLMs, and agents with seamless access to IBM Quantum services and Qiskit libraries for quantum computing development and research.

🌟 What is This?

This repository contains production-ready MCP servers that enable AI systems to interact with quantum computing resources through Qiskit. Instead of manually configuring quantum backends, writing boilerplate code, or managing IBM Quantum accounts, AI assistants can now:

  • 🤖 Generate intelligent quantum code with context-aware suggestions
  • 🔌 Connect to real quantum hardware automatically
  • 📊 Analyze quantum backends and find optimal resources
  • 🚀 Execute quantum circuits and monitor job status
  • 💡 Provide quantum computing assistance with expert knowledge

🛠️ Available Servers

🧠 Qiskit Code Assistant MCP Server

Intelligent quantum code completion and assistance

Provides access to IBM's Qiskit Code Assistant AI for intelligent quantum programming

📁 Directory: ./qiskit-code-assistant-mcp-server/


⚙️ Qiskit IBM Runtime MCP Server

Complete access to IBM Quantum cloud services

Comprehensive interface to IBM Quantum hardware via Qiskit IBM Runtime

📁 Directory: ./qiskit-ibm-runtime-mcp-server/

🚀 Quick Start

Prerequisites

  • Python 3.10+ (3.11+ recommended)
  • uv package manager (fastest Python package manager)
  • IBM Quantum account and API token
  • Qiskit Code Assistant access (for code assistant server)

Installation

Install from PyPI

# Install all MCP servers at once
pip install qiskit-mcp-servers

# Or install individual servers
pip install qiskit-code-assistant-mcp-server
pip install qiskit-ibm-runtime-mcp-server

Install from Source

Each server is designed to run independently. Choose the server you need:

🧠 Qiskit Code Assistant Server

cd qiskit-code-assistant-mcp-server
uv run qiskit-code-assistant-mcp-server

⚙️ IBM Runtime Server

cd qiskit-ibm-runtime-mcp-server
uv run qiskit-ibm-runtime-mcp-server

🔧 Configuration

Environment Variables

# For IBM Runtime Server
export QISKIT_IBM_TOKEN="your_ibm_quantum_token_here"

# For Code Assistant Server  
export QISKIT_IBM_TOKEN="your_ibm_quantum_token_here"
export QCA_TOOL_API_BASE="https://qiskit-code-assistant.quantum.ibm.com"

Using with MCP Clients

Both servers are compatible with any MCP client. Test interactively with MCP Inspector:

# Test Code Assistant Server
npx @modelcontextprotocol/inspector uv run qiskit-code-assistant-mcp-server

# Test IBM Runtime Server
npx @modelcontextprotocol/inspector uv run qiskit-ibm-runtime-mcp-server

🏗️ Architecture & Design

🎯 Unified Design Principles

Both servers follow a consistent, production-ready architecture:

  • 🔄 Async-first: Built with FastMCP for high-performance async operations
  • 🧪 Test-driven: Comprehensive test suites with 65%+ coverage
  • 🛡️ Type-safe: Full mypy type checking and validation
  • 📦 Modern packaging: Standard pyproject.toml with hatchling build system
  • 🔧 Developer-friendly: Automated formatting (ruff), linting, and CI/CD

🔌 MCP Protocol Support

Both servers implement the full Model Context Protocol specification:

  • 🛠️ Tools: Execute quantum operations (code completion, job submission, backend queries)
  • 📚 Resources: Access quantum data (service status, backend information, model details)
  • ⚡ Real-time: Async operations for responsive AI interactions
  • 🔒 Secure: Proper authentication and error handling

🧪 Development

🏃‍♂️ Running Tests

# Run tests for Code Assistant server
cd qiskit-code-assistant-mcp-server
./run_tests.sh

# Run tests for IBM Runtime server  
cd qiskit-ibm-runtime-mcp-server
./run_tests.sh

🔍 Code Quality

Both servers maintain high code quality standards:

  • ✅ 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 & Documentation

🔗 Essential Links

AI Development Assistant Support

This repository includes AI-generated code and offers comprehensive guidance for AI coding assistants (like IBM Bob, Claude Code, GitHub Copilot, Cursor AI, and others) in AGENTS.md. This helps AI assistants provide more accurate, context-aware suggestions when working with this codebase.

📄 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.1.1.tar.gz (388.0 kB 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.1.1-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: qiskit_mcp_servers-0.1.1.tar.gz
  • Upload date:
  • Size: 388.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for qiskit_mcp_servers-0.1.1.tar.gz
Algorithm Hash digest
SHA256 0171daae6c010ac4430464da63160a10e28a67288ebbf3a498d91cc0cba5921d
MD5 b864735748fa8bc2e7cdb9b217d37047
BLAKE2b-256 83cce01707f667db5a068d912a9d0cf6c1552c6c4892cc7b1610bbc5ba2baa4b

See more details on using hashes here.

Provenance

The following attestation bundles were made for qiskit_mcp_servers-0.1.1.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.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for qiskit_mcp_servers-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1ca50504fd5870ac90061f222edbaf32c4c6abd5a811093a93f357453e64f1ac
MD5 eb8491d2488aa91d1bb5d40985b5d10d
BLAKE2b-256 7826988cb2cfff6fc81cf8234e2e5e8d71942eb520da9b7ff88e396ba98ee799

See more details on using hashes here.

Provenance

The following attestation bundles were made for qiskit_mcp_servers-0.1.1-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