Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者提供的说明(英文原文)
Real quantum circuit simulator, VQE, molecular Hamiltonians, QM/MM forces, and MD via 21 tools.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
DENSE_EVOLUTION_KERNEL_URL你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"dense-evolution": {
"command": "uvx",
"args": [
"dense-evolution",
"mcp"
],
"env": {
"DENSE_EVOLUTION_KERNEL_URL": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add dense-evolution --env DENSE_EVOLUTION_KERNEL_URL=your-value -- uvx dense-evolution mcp运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"dense-evolution": {
"command": "uvx",
"args": [
"dense-evolution",
"mcp"
],
"env": {
"DENSE_EVOLUTION_KERNEL_URL": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"dense-evolution": {
"type": "stdio",
"command": "uvx",
"args": [
"dense-evolution",
"mcp"
],
"env": {
"DENSE_EVOLUTION_KERNEL_URL": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
DENSE_EVOLUTION_KERNEL_URL env这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过 GitHub 账户 tatopenn-cell 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(8.1.52)于3个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Python (uv)。
同一分类中有:Spec Driven Development, Remote Desktop Commander, Rystic
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Start, seed, clock, inspect and diff Rystic API simulators from your agent.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
A high-performance quantum simulation toolkit Statevector/MPS engines with compilation, noise, VQE, QEC, chemistry, and agent-native tooling.
Download the Dense Evolution Dashboard (Streamlit)
Windows (.bat) · macOS / Linux (.sh)
Run up to 28 qubits in about 3 seconds, without crashing. Dense Evolution JIT-compiles statevector circuits through JAX XLA, automatically chunks and — past even that RAM ceiling — spills to disk when memory fills up, so a real simulation stays alive instead of OOM-ing.
📖 [Full documentation, API reference, and worked examples →](https://tatopenn-cell.github.io/Dense-Evolution/)
A local Streamlit dashboard and web-based Composer editor are also included — see Composer & MCP Server below.
pip install dense-evolution # JAX is a core dependency, installed by default
pip install dense-evolution[full]
pip install dense-evolution[qiskit] pip install dense-evolution[pennylane]
pip install dense-evolution[hf]
pip install dense-evolution[composer]
pip install dense-evolution[mcp]
git clone https://github.com/tatopenn-cell/Dense-Evolution.git cd Dense-Evolution && pip install -e .[full]
⚠️ macOS + dense-evolution[qiskit] users
Qiskit's own QuantumCircuit.__init__ is known to segfault the whole process on macOS/arm64 (an upstream Qiskit bug, not something Dense-Evolution can fix from its side — see release v8.1.43 for the full reproduction). dense_evolution/interop.py now warns (RuntimeWarning, once per process) the first time you touch the Qiskit bridge on sys.platform == 'darwin', but it does not block — some Qiskit/macOS combinations may work fine. If you hit a crash, pip install dense-evolution[pennylane] gives the same circuit-interop functionality without constructing any Qiskit object.
Google Colab (3 lines):
!git clone https://github.com/tatopenn-cell/Dense-Evolution.git
%cd Dense-Evolution !pip install -e .
from dense_evolution import DenseSVSimulator, QASMParser
qasm = """ OPENQASM 2.0; include "qelib1.inc"; qreg q[3]; rx(pi/3) q[0]; ry(pi/4) q[1]; h q[2]; barrier q; cx q[0], q[1]; cx q[1], q[2]; rz(pi/6) q[2]; """
parser = QASMParser() circuit = parser.parse(qasm)
sim = DenseSVSimulator(n_qubits=3) sim.run_circuit_jit(circuit.to_tuples())
probs = sim.get_probabilities() sv = sim.get_statevector()
Noise:
import numpy as np
from dense_evolution import DenseSVSimulator, QASMParser, NoiseModel
qasm = 'OPENQASM 2.0; include "qelib1.inc"; qreg q[2]; h q[0]; cx q[0],q[1];' circuit = QASMParser().parse(qasm)
sim = DenseSVSimulator(n_qubits=2) sim.run_circuit_jit(circuit.to_tuples())
noisy_sv = NoiseModel.apply_to_sv(np.asarray(sim.sv), n=2, model='depolarizing', p=0.05, rng=np.random.default_rng(0)) np.abs(noisy_sv) ** 2
VQE:
import jax
import jax.numpy as jnp from dense_evolution import QASMParser, circuit_to_energy_fn
qasm = 'OPENQASM 2.0; include "qelib1.inc"; qreg q[1]; ry(0.0) q[0];' circuit = QASMParser().parse(qasm) energy_fn, n_params = circuit_to_energy_fn(circuit, n_qubits=1) h = jnp.array([[1.0, 0.0], [0.0, -1.0]], dtype=jnp.complex128) # Pauli Z
theta = jnp.array([0.1]) grad_fn = jax.value_and_grad(energy_fn, argnums=0, has_aux=True) for _ in range(40): (energy, sv), grad = grad_fn(theta, h) theta = theta - 0.5 * grad
Mitigation (ZNE):
import dense_evolution as de
e1, e2, e3 = 1.234, 0.876, 0.611 # values at 1x, 2x, 3x noise de.zero_noise_extrapolation([e1, e2, e3], [1.0, 2.0, 3.0])
Dashboard (local, Streamlit):
pip install "dense-evolution[dashboard]" # JAX already included by default
streamlit run tools/dashboard/app.py
Anti-OOM for large circuits:
from dense_evolution import Chunk, QASMParser
qasm = 'OPENQASM 2.0; include "qelib1.inc"; qreg q[27]; h q[0:27];' circuit = QASMParser().parse(qasm)
sim = Chunk(27) sim.run_chunk(circuit.to_tuples(), chunk_size_gates=500)
circuit_to_energy_fn is the same JAX-differentiable engine real molecular VQE runs on — real Hartree-Fock Hamiltonians, UCCSD/hardware-efficient ansätze, Adam optimization. Autodiff.pip install dense-evolution ships libcint compiled for each system: the full two-electron tensor of ethanol in 6-31G* in 0.32 s. Open-shell molecules with UHF and ROHF (run_uhf, run_cuhf). native_hf.|0>, |1>, |±> or |±i>, with its probability. Postselection.Measured on Windows, CPU only, 8 GB RAM — PennyLane's default.qubit allocates the full statevector; Dense Evolution's Chunk holds constant ~2 GB regardless of qubit count.
| Qubits | Hilbert Space | PennyLane | Dense Evolution | Chunk Geometry |
|---|---|---|---|---|
| 26 | 67,108,864 | ✅ 1,074 MB | ✅ 2,050 MB | 1× (2²⁷) |
| 28 | 268,435,456 | ❌ OOM | ✅ 2,050 MB | 2× (2²⁷) |
| 32 | 4,294,967,296 | ❌ OOM | ✅ 2,048 MB | 32× (2²⁷) |
On Google Colab (12 GB RAM), n=28 runs in ~3s end-to-end (JIT-compiled, num_chunks=2) — the multi-chunk path is fast, not just OOM-safe. Past the real RAM ceiling (Chunk alone raises MemoryPressureError cleanly rather than crashing the process), allow_disk_overflow=True falls back to a slower disk-backed path instead of failing — correctness-first, not benchmarked for speed yet. Full measured t
只显示了开头部分;其余内容请在仓库中阅读