关于 Quantum OpenQASM MCP
Quantum OpenQASM MCP 是面向 IBM Quantum 开发者和 AI Agent 的 TypeScript 服务,可提交 OpenQASM 2.0 电路,并查询后端、任务状态与测量结果。
主要功能
- 01列出 IBM Quantum 后端
- 02提交 OpenQASM 2.0 任务
- 03查询任务状态并取消任务
- 04获取测量计数与直方图
适用场景
- 01选择后端并查看队列
- 02在 IBM Quantum 运行电路
- 03跟踪任务并查看结果
MCP 相关
向 MCP 客户端提供工具,用于列出 IBM Quantum 后端、提交 OpenQASM 2.0 任务、查询或取消任务及获取结果。支持本地 stdio 和远程 SSE 模式。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y @markusvankempen/quantum-openqasm-mcpIBM_API_KEY密钥IBM Cloud API key for IBM Quantum PlatformIBM_SERVICE_CRNIBM Quantum service instance CRN from quantum.ibm.comIBM_QUANTUM_ENDPOINTIBM Quantum API endpoint (default: us-east)IBM_QUANTUM_BACKENDDefault backend name, e.g. ibm_fez本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
10收录的工具列表 · 更新于 2 周前
此工具无需参数。
详细介绍
Quantum OpenQASM 助手
Quantum OpenQASM Assistant 是面向 IBM Quantum 的 VS Code 扩展和模型上下文协议(MCP)服务,可从 Cursor、VS Code、IBM Bob 和 Google Antigravity 向真实的量子硬件和模拟器提交 OpenQASM 2.0 电路。它还包含 Quantum Lab(交互式电路编辑器)、实时作业轮询、测量直方图、Bell 态 / GHZ 示例、SamplerV2 REST 集成,以及面向 AI 编码助手的一键式 MCP 设置。
搜索词: 量子计算 · openqasm · qasm · ibm quantum · qiskit · 量子电路 · 量子硬件 · mcp server · model context protocol · cursor mcp · vscode quantum · ai quantum assistant · 量子编程 · 量子比特 · bell state
作者: Markus van Kempen
电子邮件: [email protected] · [email protected]
网站: markusvankempen.github.io
再小的错误也不放过,再奇怪的语法也能应对。
概述
Quantum OpenQASM Assistant 通过纯 TypeScript MCP 服务和 VS Code 扩展,将 AI Agent 和开发者连接到 IBM Quantum。提交 OpenQASM 2.0 ISA 电路、轮询作业状态并查看测量直方图——可通过 stdio 在本地运行,也可通过 IBM Code Engine 上的 SSE 远程运行。
| 产品 | 标识符 | 版本 |
|---|---|---|
| VS Code 扩展 | markusvankempen.quantum-openqasm-assistant | 1.9.2 |
| NPM MCP 服务 | @markusvankempen/quantum-openqasm-mcp | 1.9.2 |
| MCP Registry | io.github.markusvankempen/quantum-openqasm-mcp | 1.9.2 |
| 公开仓库 | quantum-openqasm-assistant | 标签 v1.9.2 — 仅包含文档和部署指南 |
源代码由私有开发仓库
quantum-openqasm-assistant-dev维护。请通过 VS Code Marketplace 或 npm MCP 安装产品——不要克隆此仓库来获取扩展源代码。
graph TB
subgraph clients [MCP Clients]
Cursor[Cursor / VS Code]
Bob[IBM Bob]
AG[Antigravity]
Lab[Quantum Lab Extension]
end
subgraph mcp [MCP Server]
Local["server.ts stdio"]
Remote["server-sse.ts SSE"]
end
IBM["IBM Quantum REST API<br/>SamplerV2 · OpenQASM 2.0"]
Cursor -->|stdio| Local
Bob -->|stdio| Local
AG -->|stdio| Local
Lab -->|stdio or SSE| Local
Lab -->|SSE| Remote
Local --> IBM
Remote --> IBM
sequenceDiagram
participant User
participant Ext as VS Code Extension
participant MCP as MCP Server
participant IBM as IBM Quantum API
User->>Ext: Submit .qasm circuit
Ext->>MCP: submit_qasm_job
MCP->>IBM: POST /jobs (SamplerV2)
IBM-->>MCP: job id
MCP-->>Ext: job id
loop Poll every 15s
Ext->>MCP: get_job_status
MCP->>IBM: GET /jobs/{id}
IBM-->>Ext: Queued → Running → Completed
end
Ext->>MCP: get_job_results
MCP->>IBM: GET /jobs/{id}/results
IBM-->>Ext: measurement histogram
📖 文档中心 → docs/README.md · 项目结构 → docs/PROJECT-STRUCTURE.md · OpenQASM 入门 → docs/OPENQASM-PRIMER.md · 技巧与窍门 → docs/TIPS-AND-TRICKS.md · 架构 → docs/ARCHITECTURE.md · 本地 MCP 设置 → docs/ide/LOCAL-MCP-SETUP.md · Qiskit Developer Pack → docs/ide/QISKIT-DEVELOPER-PACK.md · 部署 → docs/deployments/DEPLOYMENT-SCENARIOS.md · 扩展 → extension/README.md · 参与贡献 → CONTRIBUTING.md
仓库政策: 此公开 GitHub 仓库发布概述和设置文档。扩展源代码、脚本和示例存放在私有开发仓库中(设置时请使用
.gitignore.private)。
功能
| 功能 | 描述 |
|---|---|
| Quantum Lab | 交互式 OpenQASM 面板,包含示例电路和直方图结果 |
| Qiskit Lab | 专用 Qiskit Python 面板——12 个模板、Aer 模拟、导出为 OpenQASM |
| AI 转译 | 集成 qiskit-ibm-transpiler,用于面向硬件的原生电路优化 |
| OpenQASM 2.0 | IBM 硬件 ISA 格式(原生门 rz、sx、cz) |
| MCP 工具 | list_backends、submit_qasm_job、get_job_status、get_job_results 等 |
| 多 IDE MCP | 一键设置 Cursor、VS Code、Bob、Antigravity 和 Claude Desktop |
| Qiskit Developer Pack | 从 Diagnostics 捆绑 Qiskit MCP 服务和 quantum-openqasm-mcp |
| 本地 / 远程 | 本地通过 stdio 运行 MCP,或通过 IBM Code Engine 使用 SSE |
| 诊断 | 测试 IAM 身份验证、列出后端、从界面保存凭据 |
MCP 工具
| 工具 | 描述 |
|---|---|
list_backends | 可用的 IBM Quantum 后端、状态和队列 |
get_backend | 特定后端的详细信息 |
submit_qasm_job | 提交 OpenQASM 2.0 电路 |
get_job_status | 轮询作业状态 |
get_job_results | 测量计数 / 直方图数据 |
cancel_job | 取消正在运行的作业 |
快速开始
前提条件
- Node.js 18+(推荐使用 mise——参见
mise.toml) - IBM Cloud API 密钥和 Quantum Service CRN——cloud.ibm.com/iam/apikeys
构建(私有开发仓库)
mise run install
mise run build
配置
cp .env.example .env
# IBM_API_KEY, IBM_SERVICE_CRN, IBM_QUANTUM_ENDPOINT, IBM_QUANTUM_BACKEND
或者在扩展中使用 Quantum → Settings & Diagnostics。
测试
mise run test-e2e
# or: Press F5 in VS Code → Quantum Lab → Run on Hardware
安装扩展
mise run package
code --install-extension extension/quantum-openqasm-assistant-*.vsix
架构一览
quantum-openqasm-assistant/
├── extension/ # VS Code extension + bundled MCP server
│ ├── src/extension.ts # Extension entry, MCP client
│ ├── src/server.ts # Local stdio MCP server
│ ├── src/server-sse.ts # Remote SSE MCP server
│ └── out/ # esbuild output
├── packages/
│ └── quantum-openqasm-mcp/ # Standalone npm MCP package
├── scripts/ # MCP launcher, e2e tests, examples
├── docs/ # Published documentation
│ └── QISKIT-INTEGRATION.md # Qiskit → OpenQASM → IBM Quantum
├── examples/ # Qiskit export script (public)
├── deployments/ # Client modes + infrastructure
│ ├── README.md # Hub: 5 client modes + 6 infra scenarios
│ ├── extension-only/ # Mode 1
│ ├── extension-mcp-local/# Mode 2
│ ├── mcp-npm/ # Mode 3
│ ├── extension-remote-mcp/# Mode 4
│ ├── mcp-remote-sse/ # Mode 5
│ ├── code-engine/ # IBM Code Engine
│ ├── local-bridge/ # Dev gateway
│ ├── docker-sse/ # Self-hosted
│ ├── secured-remote/ # Auth tiers
│ ├── wxo-orchestrate/ # Orchestrate agents
│ └── ci-cd/ # Pipeline smoke tests
└── Internal/ # Branding, publishing, status (gitignored)
完整的文件结构请参阅 docs/PROJECT-STRUCTURE.md。
文档
| 指南 | 说明 |
|---|---|
| 文档中心 | 所有已发布指南的索引 |
| 架构 | 系统设计、MCP、IBM API 流程 |
| OpenQASM 入门 | 用通俗易懂的英语学习 OpenQASM 2.0 |
| Qiskit 集成 | Qiskit → 导出 QASM → 通过 MCP / Lab 使用 IBM 硬件 |
| 提示与技巧 | 后端选择、MCP 工作流 |
| 项目结构 | 完整的仓库布局 |
| 扩展 README | VS Code 扩展功能、命令 |
| 本地 MCP 设置 | Cursor、VS Code、Bob、Antigravity |
| 部署中心 | 5 种客户端模式 + 基础设施(CE、Docker、WxO、CI) |
| 部署场景 | 本地、Code Engine、Docker、混合部署 |
Qiskit 集成
使用 Qiskit(或内置的 Qiskit Lab 面板)设计电路,导出为 OpenQASM 2.0,通过 AI 驱动的 qiskit-ibm-transpiler 进行转译,然后在 IBM Quantum 硬件上运行:
from qiskit import QuantumCircuit, qasm2
qc = QuantumCircuit(2, 2)
qc.h(0)
qc.cx(0, 1)
qc.measure([0, 1], [0, 1])
print(qasm2.dumps(qc)) # → submit via MCP or paste into Quantum Lab
OPENQASM 2.0;
include "qelib1.inc";
qreg q[2]; creg c[2];
h q[0];
cx q[0],q[1];
measure q[0] -> c[0];
measure q[1] -> c[1];
运行时无需依赖 Qiskit — MCP 服务直接使用 OpenQASM + IBM Quantum REST。
v1.9.2 Qiskit 功能:
-
Qiskit Lab — 12 个模板(Bell、GHZ、Grover、量子隐形传态、VQE ansatz、QAOA,…)、本地 Aer 模拟、一键导出
-
AI 转译 — 集成
qiskit-ibm-transpilerMCP,实现硬件原生优化 -
quantum-assistantMCP — 精简的 MCP 密钥,便于 AI IDE 设置 -
Qiskit 开发者套件(Qiskit MCP + AI 转译器 + OpenQASM):docs/ide/QISKIT-DEVELOPER-PACK.md
安全
- API 密钥存储在 VS Code 设置或
~/.quantum-openqasm-mcp/.env中 — 绝不提交到 git .env、Internal/和 IDEmcp.json文件均已加入 git 忽略列表- 请通过 GitHub Issues 报告问题
参与贡献
欢迎贡献!有关双仓库模式、mise 任务和 PR 流程,请参阅 CONTRIBUTING.md。
请阅读我们的 CODE_OF_CONDUCT.md。
许可证
主题与关键词
quantum-computing · quantum-computer · openqasm · openqasm-2 · qasm · ibm-quantum · ibm-cloud · qiskit · quantum-circuit · quantum-hardware · quantum-lab · quantum-programming · quantum-physics · qubit · bell-state · quantum-job · quantum-backend · mcp · model-context-protocol · mcp-server · vscode-extension · cursor · ibm-bob · antigravity · copilot · ai-assistant · typescript · nodejs · histogram · sampler-v2 · code-engine · cloud-quantum
作者: Markus van Kempen
邮箱: [email protected] · [email protected]
网站: markusvankempen.github.io
再小的 bug 也值得修复,再奇怪的语法也难不倒我们。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。