Skip to main content
Glama
OriginQ

QPanda3 Runtime MCP Server

by OriginQ

QPanda3 Runtime MCP-Server

Python 3.10+ FastMCP License Documentation

Ein Model Context Protocol (MCP) Server, der es KI-Assistenten ermöglicht, über die QPanda3 Runtime mit Origin Quantum Computing-Diensten zu interagieren.

Funktionen

  • Kontoverwaltung: Konfiguration und Verwaltung der Authentifizierung für Origin Quantum Cloud-Konten

  • Geräteverwaltung: Auflisten und Abfragen verfügbarer QPU-Geräte

  • Quantencomputing-Aufgaben: Ausführung von Sampling- und Schätzungsaufgaben

  • Batch-Operationen: Effiziente Ausführung mehrerer Schaltkreise

  • Multi-Objective-Entscheidungen: CircuitObservableBinding für komplexe Optimierungen

  • Aufgabenverwaltung: Abfragen des Aufgabenstatus, Abrufen von Ergebnissen, Abbrechen von Aufgaben

  • Beispielschaltkreise: Bereitstellung gängiger Ressourcen für Quantenschaltkreis-Beispiele

Dokumentation

Dokument

Beschreibung

Englische Dokumentation

Englische Dokumentationsseite

中文文档

Chinesische Dokumentationsseite

Erste Schritte

Vollständiger Anfängerleitfaden - HIER STARTEN

Installationsanleitung

Detaillierte Installationsanweisungen

Schnellstart

Schnelle Einrichtung für erfahrene Benutzer

Konfiguration

Umgebungs- und Client-Konfiguration

Benutzerhandbuch

Detaillierte Funktionsdokumentation

API-Referenz

Automatisch generierte API-Dokumentation

Installation

Ein-Klick-Einrichtung (Empfohlen)

Das Projekt bietet Setup-Skripte, die den gesamten Prozess automatisieren:

Linux / macOS:

git clone https://github.com/OriginQ/qpanda3-runtime-mcp-server.git
cd qpanda3-runtime-mcp-server
chmod +x scripts/setup_configure.sh
./scripts/setup_configure.sh

Windows (PowerShell):

git clone https://github.com/OriginQ/qpanda3-runtime-mcp-server.git
cd qpanda3-runtime-mcp-server
.\scripts\setup_configure.ps1

Das Skript erledigt alles: Einrichtung der Abhängigkeiten, API-Schlüsselkonfiguration und MCP-Client-Setup.

Siehe Installationsanleitung für manuelle Installationsoptionen.

Schnellstart

# 1. Configure your API key
cp .env.example .env
# Edit .env and set QPANDA3_API_KEY=your_api_key_here

# 2. Run the server
.venv/bin/python -m qpanda3_runtime_mcp_server       # Linux/macOS
# .venv\Scripts\python.exe -m qpanda3_runtime_mcp_server  # Windows

Siehe Konfiguration für die MCP-Client-Einrichtung und erweiterte Optionen.

MCP-Tools

Kontoverwaltung

Tool

Beschreibung

setup_origin_quantum_account_tool

Konfiguration der Authentifizierung für Origin Quantum Cloud-Konten

list_saved_accounts_tool

Auflisten gespeicherter Kontoinformationen (sitzungsbasiert)

active_account_info_tool

Abrufen der aktuell aktiven Kontoinformationen

Geräteverwaltung

Tool

Beschreibung

list_qpu_devices_tool

Auflisten aller verfügbaren QPU-Geräte (Quantum Processing Unit)

get_qpu_properties_tool

Abrufen detaillierter Eigenschaften eines bestimmten QPU-Geräts

Quantencomputing-Aufgaben

Tool

Beschreibung

sample_tool

Ausführung einer Quantenschaltkreis-Sampling-Aufgabe auf einem QPU-Gerät

estimate_tool

Ausführung einer Erwartungswertschätzungsaufgabe für einen Quantenschaltkreis

batch_sample_tool

Batch-Ausführung mehrerer Quantenschaltkreis-Sampling-Aufgaben

batch_estimate_tool

Batch-Ausführung von Schätzungsaufgaben für mehrere Schaltkreise mit einem Observable

Multi-Objective-Entscheidung (CircuitObservableBinding)

Tool

Beschreibung

create_circuit_observable_binding_tool

Erstellen einer Bindung für mehrere Schaltkreise und Observables

add_product_rule_tool

Hinzufügen einer kartesischen Produkt-Kombinationsregel (alle Kombinationen)

add_zip_rule_tool

Hinzufügen einer Eins-zu-Eins-Kombinationsregel (gepaarte Kombinationen)

estimate_with_binding_tool

Ausführung der Schätzung unter Verwendung der erstellten Bindung

list_bindings_tool

Auflisten aller gespeicherten CircuitObservableBinding-Objekte

delete_binding_tool

Löschen eines gespeicherten CircuitObservableBinding-Objekts

Aufgabenverwaltung

Tool

Beschreibung

get_task_status_tool

Abrufen des Ausführungsstatus einer Aufgabe (PENDING/RUNNING/DONE/FAILED/CANCELLED)

get_task_results_tool

Abrufen der Berechnungsergebnisse einer abgeschlossenen Aufgabe

cancel_task_tool

Abbrechen einer laufenden oder ausstehenden Aufgabe

list_my_tasks_tool

Auflisten der kürzlichen Quantencomputing-Aufgaben des Benutzers

MCP-Ressourcen

Ressourcen-URI

Beschreibung

qpanda://status

Dienststatus

circuits://bell-state

Beispiel für einen Bell-Zustands-Schaltkreis

circuits://ghz-state

Beispiel für einen GHZ-Zustands-Schaltkreis

circuits://random

Zufallszahlengenerator-Schaltkreis

circuits://superposition

Beispiel für einen Superpositions-Schaltkreis

Beispielanwendung

Konto konfigurieren

# Auto-configure via environment variables
# Or call explicitly
await setup_origin_quantum_account_tool(
    api_key="your_api_key"
)

Geräte auflisten

devices = await list_qpu_devices_tool()
print(f"Available devices: {devices['total_devices']}")

Sampling-Aufgabe ausführen

# Bell state circuit
circuit = """QINIT 2
CREG 2
H q[0]
CNOT q[0],q[1]
MEASURE q[0],c[0]
MEASURE q[1],c[1]"""

result = await sample_tool(
    circuit=circuit,
    device_id="20",
    shots=1000
)
task_id = result["task_id"]

# Check status and get results
status = await get_task_status_tool(task_id)
if status["task_status"] == "DONE":
    results = await get_task_results_tool(task_id)
    print(f"Measurement results: {results['results']}")

Konfiguration in KI-Coding-Plattformen

Automatische Konfiguration: Verwenden Sie ./scripts/setup_configure.sh --mcp claude-desktop (oder --mcp cline, --mcp cursor usw.)

Alle Clients verwenden das gleiche Konfigurationsformat (ersetzen Sie /path/to/... durch Ihren tatsächlichen Pfad):

{
  "mcpServers": {
    "qpanda3-runtime": {
      "command": "/path/to/qpanda3-runtime-mcp-server/.venv/bin/python",
      "args": ["-m", "qpanda3_runtime_mcp_server"],
      "cwd": "/path/to/qpanda3-runtime-mcp-server",
      "env": { "QPANDA3_API_KEY": "your_api_key_here" }
    }
  }
}

Client

Speicherort der Konfigurationsdatei

Claude Code

~/.claude.json

Claude Desktop

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

Cline

~/.vscode-server/data/User/globalStorage/saoudrizwan.cline/settings/cline_mcp_settings.json

Cursor

.cursor/mcp.json (Projektstammverzeichnis)

Windsurf

~/.codeium/windsurf/mcp_config.json

Für weitere Clients (Trae etc.), siehe Konfigurationsanleitung.

Entwicklung

Entwicklungsabhängigkeiten installieren

uv sync --extra dev --extra test

Tests ausführen

uv run pytest

Code-Linting

uv run ruff check .
uv run mypy src/

Dokumentation erstellen

# Install documentation dependencies
uv sync --extra docs

# Build documentation (English + Chinese)
./scripts/build-docs.sh

# Local preview with live reload (language switching supported)
mkdocs serve

Projektstruktur

qpanda3-runtime-mcp-server/
├── src/
│   └── qpanda3_runtime_mcp_server/
│       ├── __init__.py          # Package entry point
│       ├── server.py            # MCP server definition
│       ├── runtime.py           # QPanda3 Runtime core logic
│       └── utils.py             # Utility functions
├── scripts/
│   ├── setup_configure.sh       # One-click setup (Linux/macOS)
│   ├── setup_configure.ps1      # One-click setup (Windows PowerShell)
│   ├── setup_configure.bat      # One-click setup (Windows CMD)
│   ├── build-docs.sh            # Build all documentation
│   └── serve-docs.sh            # Serve docs with live reload
├── tests/
│   ├── __init__.py
│   ├── conftest.py              # pytest configuration
│   ├── test_server.py           # Server tests
│   └── test_runtime.py          # Runtime tests
├── docs/
│   ├── *.md                     # English documentation (default)
│   └── cn/                      # Chinese documentation
├── mkdocs.yml                   # MkDocs configuration (i18n)
├── .github/
│   └── workflows/               # GitHub Actions workflows
├── pyproject.toml               # Project configuration
├── README.md                    # Project documentation
├── LICENSE                      # Apache 2.0 License
├── .env.example                 # Environment variable example
└── .gitignore                   # Git ignore file

Hinweise

  1. Standard-Server: Der Server verbindet sich standardmäßig mit https://qpanda3-runtime.qpanda.cn. Setzen Sie QPANDA3_SERVER_URL zum Überschreiben.

  2. Kanal: Der Server verwendet standardmäßig den qcloud-Kanal

  3. Async-Unterstützung: Alle Tool-Funktionen sind async-Funktionen

  4. Fehlerbehandlung: Alle Funktionen geben Dictionaries zurück, die ein status-Feld enthalten

  5. Typ-Hinweise: Python-Typ-Hinweise werden für eine bessere Lesbarkeit des Codes verwendet

Lizenz

Dieses Projekt ist unter der Apache License 2.0 lizenziert - siehe die LICENSE-Datei für Details.

Mitwirken

Siehe Leitfaden für Mitwirkende für Details.

Changelog

Siehe Changelog für die Versionshistorie.

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - A tier

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/OriginQ/qpanda3-runtime-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server