量子模拟器MCP服务器
Docker镜像提供了一个实现模型上下文协议(MCP)的量子电路模拟器,允许与MCP客户端(如Claude for Desktop)集成。
特性
- 具有噪声模型的量子计算模拟器
- 支持OpenQASM 2.0量子电路
- 基于Qiskit的量子电路仿真
- 支持各种噪声模型(去极化、热弛豫、读出误差)
- 多种结果类型,包括计数、状态向量和可视化直方图
- 预配置示例电路
- 与MCP客户端无缝集成
快速开始
获取docker镜像
docker pull ychen94/quantum-simulator-mcp:latest只需使用以下命令运行容器:
docker run -i --rm -v /tmp:/data/quantum_simulator_results -e HOST_OUTPUT_DIR="/tmp" ychen94/quantum-simulator-mcp:latest此命令:
- 安装
/tmp主机上用于存储直方图输出文件的目录 - 设置
HOST_OUTPUT_DIR环境变量/tmp - 保持容器运行
-i(交互模式) - 容器退出时自动移除
--rm
使用Claude for Desktop
- 安装桌面版Claude
- 编辑Claude配置文件:
- macOS: ~/Library/Application Support/Claude/claude_desktop_config.json - 窗户: %APPDATA%\Claude\claude_desktop_config.json
- 将以下配置添加到
mcpServers章节:
{
"mcpServers": {
"quantum-simulator": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-v", "/tmp:/data/quantum_simulator_results",
"-e", "HOST_OUTPUT_DIR=/tmp",
"ychen94/quantum-simulator-mcp:latest"
]
}
}
}- 重新启动桌面版的Claude
- 在Claude UI中查找锤子图标,指示可用的MCP工具
MCP工具
服务器提供以下MCP工具:
- run_circuit:使用指定的噪声模型运行量子电路
- list_noise_models:列出所有可用的噪音模型及其描述
- list_result_types:列出所有可用的结果类型及其描述
- get_circuit_stats:分析量子电路并返回统计数据
- create_test_histogram:创建测试直方图文件以验证输出目录配置
MCP资源
服务器提供了示例量子电路:
qasm://examples/bell-state.qasm:钟状态准备电路qasm://examples/grover-2qubit.qasm:2量子比特Grover算法实现qasm://examples/qft-4qubit.qasm:4量子比特量子傅里叶变换quantum://noise-models/examples.json:噪声模型配置示例
Claude中的示例用法
以下是您可以在Claude中使用的一些提示:
- “运行贝尔状态电路并向我显示结果”
- “量子模拟器中有哪些噪声模型?”
- “用0.01去极化噪声模拟2量子比特Grover算法”
- “创建测试直方图并显示文件路径”
- “请提供一个简单的QAOA算法,只获取result_types:直方图,并使用iterm查看直方图”


体积映射
容器在中生成直方图PNG文件 /data/quantum_simulator_results。这些文件需要可以从主机系统访问。体积映射(-v /tmp:/data/quantum_simulator_results)使这些文件在您的主机中可用 /tmp 目录。
环境变量
QUANTUM_OUTPUT_DIR:容器内直方图文件的输出目录(默认:/data/quantum_simulator_results)HOST_OUTPUT_DIR:主机系统上的对应路径(默认:/tmp)
多架构支持
此映像支持以下架构:
- linux/amd64
- linux/arm64(已确认适用于Mac M系列芯片)
注意:该镜像尚未在Windows系统上进行测试,但只要Docker Desktop配置正确,就应该可以正常工作。
故障排除
问题:Claude无法访问直方图文件。\ 解决方案:确保体积映射正确 HOST_OUTPUT_DIR 环境变量与卷映射中的主机路径匹配。
问题:Docker容器立即退出。\ 解决方案:确保使用 -i 标志以保持stdin打开,这是MCP STDIO传输所必需的。
许可证
该项目根据MIT许可证获得许可。有关更多详细信息,请参阅中的LICENSE文件 此项目存储库.
