快速 MCP 服务器
非官方模型上下文协议(MCP)服务器,使LLM能够使用Qiskit构建和执行量子电路。
特性
服务器提供 13个MCP工具 对于全面的量子电路操作:
核心工具(8)
1. create_quantum_circuit
用指定的量子比特和经典比特创建一个新的量子电路。
参数:
num_qubits(int):量子比特数num_classical_bits(int,可选):经典比特数(默认为num_qubit)name(字符串,可选):电路的自定义名称(如果未提供,则自动生成)
2. add_gates
向现有电路添加量子门。
参数:
circuit_name(string):要修改的回路名称gates(array):闸门操作列表
支持的闸门:
h:哈达玛门-{'type': 'h', 'qubits': [0]}x:保利-X门-{'type': 'x', 'qubits': [0]}y:保利和盖特-{'type': 'y', 'qubits': [0]}z:保利Z门-{'type': 'z', 'qubits': [0]}cx:CNOT门-{'type': 'cx', 'qubits': [0, 1]}measure:测量特定量子位-{'type': 'measure', 'qubits': [0], 'classical_bit': 0}measure_all:测量所有量子位-{'type': 'measure_all'}
3. run_circuit
在BasicSimulator上执行量子电路。
参数:
circuit_name(string):要运行的回路名称shots(int,可选):测量镜头数(默认值:1000)
退货: 带有测量结果和计数的JSON
4. get_circuit_info
获取电路的详细信息。
参数:
circuit_name(string):电路名称
退货: 带有电路属性(量子位、深度、门计数等)的JSON
5. visualize_circuit
获取量子电路的文本可视化。
参数:
circuit_name(string):电路名称
退货: 电路的ASCII艺术表示
6. visualize_circuit_mermaid
生成量子电路的美人鱼流程图。
参数:
circuit_name(string):要可视化的电路名称
退货: 表示量子电路的Mermaid流程图语法
7. list_circuits
列出所有创建的回路及其基本信息。
退货: 包含所有电路名称及其属性的JSON
高级工具(6)
8. analyze_statevector
分析电路的量子态向量。
参数:
circuit_name(string):要分析的电路名称
退货: 具有概率、振幅和状态分析的JSON
9. compute_density_matrix
计算并分析包括纯度和纠缠度的密度矩阵。
参数:
circuit_name(string):要分析的电路名称
退货: 具有纯度、熵和纠缠信息的JSON
10. optimize_circuit
使用Qiskit转译器通道优化量子电路。
参数:
circuit_name(string):要优化的回路名称optimization_level(int):优化级别0-3
退货: 带有优化结果和性能指标的JSON
11. add_advanced_gates
在基本的H、X、Y、Z、CX之外添加高级量子门。
参数:
circuit_name(string):要修改的回路名称gates(array):高级闸门操作列表
支持的高级闸门:
- 旋转闸门:
rx,ry,rz,rxx,ryy,rzz - 通用门:
u - 克利福德·盖茨:
s,sdg,t,tdg swap:SWAP门
12. create_variational_circuit
为量子机器学习创建一个变分量子电路。
参数:
num_qubits(int):量子位数量num_layers(int):层数(默认值:1)entanglement(字符串):纠缠模式(“全”、“线性”、“圆形”)name(字符串,可选):电路的自定义名称
退货: 带有电路详细信息和参数计数的成功消息
13. implement_qft
实现量子傅里叶变换电路。
参数:
num_qubits(int):QFT的量子位数量inverse(bool):是否实现逆QFT(默认值:false)name(字符串,可选):电路的自定义名称
退货: 带有QFT电路详细信息的成功消息
示例和文件
📚 综合示例
我们提供了大量的示例和提示来帮助您入门:
📋 测试脚本
💬 即用型提示(130+示例)
快速入门示例
创建贝尔州
Create a 2-qubit quantum circuit and make a Bell state by applying H to qubit 0 and CNOT from 0 to 1, then measure both qubits and run with 1000 shots.高级状态分析
I have a Bell state circuit. Analyze its statevector to show the probabilities, then compute the density matrix to verify it's entangled with purity=1.0.电路优化
Create a circuit with redundant gates (X followed by X), then optimize it at level 2 and show me the improvement metrics.变分量子电路
Create a variational quantum circuit with 4 qubits, 2 layers, and full entanglement for quantum machine learning. Show me how many parameters it has.运行服务器
独立
# Install dependencies
uv sync
# Start the MCP server
uv run python main.pyClaude桌面集成
将此配置添加到您的Claude Desktop配置文件中:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json 视窗: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"qiskit-mcp-server": {
"command": "uv",
"args": [
"--directory",
"/path/to/qiskit-mcp-server",
"run",
"main.py"
]
}
}
}替换 /path/to/qiskit-mcp-server 带有此项目目录的实际路径。
添加配置后,重新启动Claude Desktop。然后,您可以要求克劳德:
- “创建量子贝尔态电路”
- “为2个量子位构建Grover搜索算法”
- “分析我的电路的状态向量以显示纠缠”
- “优化我的电路并显示性能改进”
- “为量子机器学习创建变分电路”
- “实现3量子比特量子傅里叶变换”
测试和验证
运行测试脚本
# Test basic functionality
uv run python examples/test_scripts/test_basic_operations.py
# Test advanced features
uv run python examples/test_scripts/test_advanced_operations.py
# Test quantum algorithms
uv run python examples/test_scripts/test_quantum_algorithms.py直接测试(传统)
uv run python test_direct.py # If available依赖项
- 基斯基特 (≥2.1.1):具有Quantum_info、电路库和转译器模块的量子计算框架
- fastmcp (≥2.10.6):MCP服务器实现
- 数值Python:状态分析中的数值计算所需
支持量子计算概念
核心量子力学
- 叠加:使用阿达玛门创建量子叠加
- 纠缠:使用CNOT和高级门创建纠缠态
- 测量:将量子态压缩为经典比特
- 量子干涉:展示建设性/破坏性干扰
高级量子操作
- 参数化闸门:RX、RY、RZ以任意角度旋转
- 两个Qubit旋转RXX、RYY、RZZ用于直接纠缠创建
- 通用量子计算:任何量子算法的完整门集
- Clifford运营:用于量子纠错的S、T门
量子态分析
- 状态向量分析:具有概率的完整量子态信息
- 密度矩阵:混合状态分析、纯度和熵计算
- 纠缠检测:部分追踪熵用于验证量子相关性
- 状态断层扫描:全面的量子态表征
量子算法
- 搜索算法:Grover数据库搜索的二次加速
- 决策算法:德国-约旦指数优势
- 傅里叶分析:用于周期查找的量子傅里叶变换
- 变分算法:VQE、QAOA可获得近期量子优势
- 相位估计:从量子算子中提取特征值和相位
电路优化与分析
- 转发器集成:具有性能指标的多级优化(0-3)
- 电路深度分析:关键路径分析和并行化
- 门数优化:冗余消除和换向分析
- 资源量估算:算法的量子资源要求
量子机器学习
- 变分电路:具有不同纠缠模式的参数化ansätze
- 量子特征图:将经典数据编码为量子态
- 混合算法:经典量子优化循环
该服务器使LLM能够通过自然语言描述所需的量子操作来交互式构建量子电路,这些操作被转换为特定的门序列,分析量子特性,优化性能,并在量子模拟器上执行,并进行全面的结果分析。
项目结构
qiskit-mcp-server/
├── main.py # MCP server with 13 quantum tools
├── pyproject.toml # Dependencies and project config
├── examples/ # Comprehensive examples and documentation
│ ├── README.md # Learning guide and examples overview
│ ├── test_scripts/ # Test cases and demonstrations
│ │ ├── test_basic_operations.py # Core tools testing
│ │ ├── test_advanced_operations.py # Advanced features testing
│ │ └── test_quantum_algorithms.py # Algorithm implementations
│ └── prompts/ # 130+ ready-to-use prompt examples
│ ├── basic_circuit_operations.md # Beginner prompts
│ ├── advanced_circuit_operations.md # State analysis prompts
│ ├── quantum_algorithms.md # Algorithm prompts
│ └── educational_examples.md # Learning prompts
└── README.md # This file获取帮助
- 例子:从 示例文件夹 获取全面指南
- Qiskit文档: https://qiskit.org/documentation/
- 量子计算学习IBM 短教科书
- 问题:通过GitHub issues报告错误和请求功能
贡献
欢迎投稿!扩展区域:
- 附加量子算法(Shor、HHL、量子模拟)
- 噪声建模和误差缓解工具
- 高级可视化功能
- 硬件后端集成
- 教育内容和示例
许可证
这个项目是开源的。有关详细信息,请参阅许可证文件。
