quartus-Lmcp-server
Provides tools for automating Intel/Altera Quartus FPGA design flow, including project management, HDL file handling, compilation, simulation (ModelSim), timing analysis, and JTAG programming.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@quartus-Lmcp-serverRun full compilation on the current Quartus project"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Quartus L MCP Server
将本机 Intel/Altera Quartus 命令行工具暴露为 MCP 工具,供 AI 助手直接调用。
An MCP server that exposes local Intel/Altera Quartus CLI tools — project management, compilation, timing analysis, SignalTap II, IP cores, Qsys, Nios II, JTAG programming, and more.
概述 / Overview
quartus-Lmcp-server 是一个 Model Context Protocol (MCP) 服务器,共 89 个 MCP 工具,覆盖 FPGA 开发的完整流程。
核心特性:
自动版本适配 — 不再需要为每个 Quartus 版本配置独立的 MCP 实例。服务器启动时自动发现所有已安装的 Quartus 版本(13.x ~ 24.x),并可在运行时动态切换。
IP 核版本自适应 — Qsys/Platform Designer 中
add_instance的 IP 版本号自动匹配当前 Quartus 版本,告别硬编码18.1导致的兼容问题。多安装发现 — 自动扫描 C:/D:/E:/F: 盘及 WSL 挂载点,发现所有
intelFPGA_lite、intelFPGA、altera目录下的 Quartus 安装。
不依赖特定 AI 客户端 — 只要支持 MCP 协议即可使用(WorkBuddy、Claude Code、Codex、Cursor、Continue 等)。
Related MCP server: altium-mcp
功能概览 / Features
分类 | 工具数 | 说明 |
安装与版本管理 | 3 | 查看安装信息、列出所有版本、运行时切换 Quartus 版本 |
项目管理 | 6 | 创建/打开/查看/枚举/关闭/归档 Quartus 工程 |
文件管理 | 4 | 添加/移除 HDL 文件、列出工程文件、读写 QSF |
编译流程 | 6 | Analysis & Synthesis / Fitter / Assembler / 完整编译,状态与消息 |
增量编译 | 4 | 增量编译开关、设计分区创建/查看、增量执行 |
RTL 分析 | 2 | 模块层次/端口/FSM 解析、代码风格检查 |
时序分析 | 6 | STA 执行、时序摘要、时钟摘要、路径查询、最差路径、时钟域交叉 |
SDC 约束 | 3 | 自动生成 SDC 模板、时钟约束、伪路径约束 |
管脚分配 | 5 | 管脚设置/移除、全局分配读写 |
器件信息 | 2 | 器件家族列表、器件型号列表 |
JTAG 下载 | 6 | JTAG 检测、线缆列表、SOF 下载、JAM 编程、CvP 配置 |
SignalTap II | 3 | 逻辑分析仪文件创建、状态检查、含 SignalTap 下载 |
IP 核 | 9 | PLL/RAM/FIFO/DSP IP、MegaWizard、IP 目录、文件转换、IP 升级 |
Qsys / Platform Designer | 5 | Qsys 系统创建、组件添加、互联、生成、组件枚举 |
Nios II | 2 | BSP 编译、elf2hex/elf2flash/sof2flash 文件转换 |
仿真集成 | 5 | Testbench 创建、仿真文件注册、ModelSim 批处理仿真、日志读取、产物列表 |
报告与检查 | 5 | Flow Summary、资源利用率、指定报告读取、功耗分析、DRC |
设计数据库 | 4 | 分区导入/导出、数据库导出、Back-annotate |
Tcl 脚本 | 2 | Tcl 文件执行、内联 Tcl 命令 |
设计空间探索 | 2 | DSE 探索、Seed Sweep |
门级仿真 | 2 | 门级仿真生成、上下文获取 |
工程维护 | 3 | 清理工程、IP 升级、Flow 模板生成 |
安装 / Installation
git clone https://github.com/liujunjie666777/quartus-Lmcp-server.git
cd quartus-Lmcp-server
pip install -r requirements.txt环境要求:
Windows 10/11
Python 3.10+
mcp>=1.0.0本机安装 Intel/Altera Quartus(支持 Quartus II 13.1 ~ Prime Lite 24.x 各版本)
可同时安装多个 Quartus 版本 — 服务器会自动发现并支持运行时切换
ModelSim/QuestaSim(可选,仿真工具用)
MCP 配置 / Configuration
基础配置(单版本)
{
"mcpServers": {
"quartus": {
"command": "python",
"args": ["path/to/quartus_Lmcp_server.py"],
"env": {
"QUARTUS_ROOTDIR": "D:/intelFPGA_lite/24.1std/quartus",
"QUARTUS_MCP_MODELSIM_BIN": "D:/intelFPGA_lite/24.1std/questa_fse/win64",
"QUARTUS_MCP_PROJECT_DIR": "C:/Users/yourname/Documents/QuartusProjects"
}
}
}
}多版本配置(推荐)
为每个版本注册独立的 MCP 服务名,或在同一个实例中用 switch_quartus_installation 动态切换:
{
"mcpServers": {
"quartus24": {
"command": "python",
"args": ["path/to/quartus_Lmcp_server.py"],
"env": {
"QUARTUS_ROOTDIR": "D:/intelFPGA_lite/24.1std/quartus",
"QUARTUS_MCP_MODELSIM_BIN": "D:/intelFPGA_lite/24.1std/questa_fse/win64"
}
},
"quartus18": {
"command": "python",
"args": ["path/to/quartus_Lmcp_server.py"],
"env": {
"QUARTUS_ROOTDIR": "E:/intelFPGA_lite/18.1/quartus",
"QUARTUS_MCP_MODELSIM_BIN": "E:/intelFPGA_lite/18.1/modelsim_ase/win32aloem"
}
}
}
}不同 MCP 客户端配置位置
客户端 | 配置文件 |
WorkBuddy |
|
Claude Code |
|
Cursor |
|
Continue |
|
可选环境变量
变量 | 说明 | 默认值 |
| Quartus 安装的 quartus 子目录 | 自动发现 |
| 覆盖 QUARTUS_ROOTDIR | — |
| 安装根目录(最高优先级) | — |
| 直接指定 bin 目录 | — |
| ModelSim bin 目录 | 自动发现 |
| 默认工程目录 |
|
多版本管理 / Multi-Version Management
服务器启动时自动扫描并发现所有已安装的 Quartus 版本。
列出所有安装
调用 list_quartus_installations 查看:
{
"count": 2,
"current_index": 0,
"installations": [
{ "index": 0, "active": true, "path_version": "24.1", "bin_dir": "D:/intelFPGA_lite/24.1std/quartus/bin64" },
{ "index": 1, "active": false, "path_version": "18.1", "bin_dir": "E:/intelFPGA_lite/18.1/quartus/bin64" }
]
}切换到指定版本
// 调用 switch_quartus_installation(1) 切换到 18.1
{
"success": true,
"switched_to": 1,
"bin_dir": "E:/intelFPGA_lite/18.1/quartus/bin64",
"version": "Version 18.1.0 Build 625 09/12/2018 SJ Lite Edition"
}切换是全局生效的 — 之后所有编译、分析、下载命令都使用新选择的版本。
使用示例 / Usage Examples
工程创建与编译
create_project → add_file_to_project → set_pin_assignment → compile_project
时序分析
run_timing_analysis → get_timing_summary → get_worst_timing_paths
调试流程
create_signaltap_file → compile_project → program_with_signaltap
IP 核生成
create_pll_ip(输入 50MHz → 输出 100/50/25MHz)→ 自动生成 .qip 并注册到工程
Qsys 系统集成
create_qsys_system → add_qsys_component → connect_qsys_components → generate_qsys
Nios II 软件部署
compile_nios2_bsp → convert_nios2_files(type="hex") → program_device
完整工具目录 / Complete Tool Catalog
安装与版本管理
工具 | 说明 |
| 查看当前 Quartus 安装路径、版本、工具可用性 |
| 列出所有发现的 Quartus 版本及索引 |
| 运行时切换到指定 Quartus 版本 |
项目管理
工具 | 说明 |
| 创建新 Quartus 工程(指定器件家族与型号) |
| 打开已有工程 |
| 获取工程信息(名称、器件、文件数等) |
| 枚举指定目录下的所有工程 |
| 关闭已打开工程 |
| 归档工程(.qar) |
文件管理
工具 | 说明 |
| 列出工程中所有文件(HDL/SDC/IP/其他) |
| 向工程添加 HDL/SDC/IP 文件 |
| 从工程移除文件 |
| 读取 QSF 文件内容 |
编译流程
工具 | 说明 |
| 完整编译流程(Analysis → Fitter → Assembler → STA) |
| 仅执行 Analysis & Synthesis |
| 仅执行 Fitter(Place & Route) |
| 仅执行 Assembler(生成 .sof/.pof) |
| 获取编译状态与产物路径 |
| 提取错误/警告/关键警告(去重,各限 100 条) |
增量编译
工具 | 说明 |
| 开关增量编译 |
| 创建设计分区 |
| 查看当前分区设置 |
| 执行增量编译 |
RTL 分析
工具 | 说明 |
| 解析 RTL 层次结构、端口列表、FSM 信息 |
| 代码风格检查(组合环、锁存器等) |
时序分析
工具 | 说明 |
| 执行完整 STA |
| 获取 STA 摘要(Fmax、setup/hold 违例数) |
| 获取时钟报告(频率、周期、类型) |
| 查询指定节点间的时序路径 |
| 获取最差时序路径(setup/hold/recovery/removal) |
| 获取时钟域交叉 (CDC) 信息 |
SDC 约束
工具 | 说明 |
| 自动生成基础 SDC 文件 |
| 设置时钟周期约束 |
| 设置伪路径约束 |
管脚分配
工具 | 说明 |
| 查看管脚分配 |
| 设置信号到指定管脚 |
| 移除管脚分配 |
| 查看全局分配 |
| 设置全局分配 |
器件信息
工具 | 说明 |
| 列举支持的器件家族 |
| 列举指定家族下的器件型号 |
JTAG 编程
工具 | 说明 |
| 检测 JTAG 链上的器件 |
| 列举可用的下载线缆 |
| 下载 .sof 到 FPGA |
| 批量 JAM 编程 |
| 从 .sof 创建 .jam 文件 |
| Configuration via Protocol (CvP) 编程 |
SignalTap II 逻辑分析仪
工具 | 说明 |
| 创建 SignalTap II 文件 (.stp) |
| 获取 SignalTap 上下文信息 |
| 含 SignalTap 编译并下载 |
IP 核
工具 | 说明 |
| 列举可用的 IP 核 |
| 列出 IP 目录详细内容 |
| 通用 IP 核创建(MegaWizard) |
| 创建 PLL IP(自动配置输入/输出频率) |
| 创建片上 RAM IP |
| 创建 FIFO IP |
| 创建 DSP 运算 IP(乘法器/累加器等) |
| 转换编程文件格式 (.sof → .pof/.rbf 等) |
| 升级工程中所有 IP 核到当前 Quartus 版本 |
Qsys / Platform Designer
工具 | 说明 |
| 创建 Qsys 系统(含默认时钟源) |
| 向 Qsys 系统添加组件 |
| 连接 Qsys 组件间 Avalon 接口 |
| 生成 Qsys 系统的 HDL 文件 |
| 枚举可用的 Qsys 组件库 |
Nios II
工具 | 说明 |
| 编译 Nios II BSP 库 |
| elf→hex/flash, sof→flash 格式转换 |
仿真集成
工具 | 说明 |
| 创建 ModelSim Testbench 模板 |
| 注册仿真文件到工程 |
| 运行 ModelSim 批处理仿真 |
| 读取仿真日志 |
| 列举仿真产物 |
报告
工具 | 说明 |
| 获取编译 Flow Summary |
| 获取资源利用率报告 |
| 读取指定报告文件内容 |
| 获取功耗分析报告 |
| 执行设计规则检查 (DRC) |
设计数据库
工具 | 说明 |
| 导出设计分区 |
| 导入设计分区 |
| 导出设计数据库 |
| Back-annotate 管脚/时序/布线信息 |
Tcl 脚本
工具 | 说明 |
| 执行 .tcl 脚本文件 |
| 执行内联 Tcl 命令(⚠️ 直接执行,注意安全性) |
设计空间探索
工具 | 说明 |
| 运行 Design Space Explorer |
| 多 Seed 编译探索 |
门级仿真
工具 | 说明 |
| 生成门级仿真网表 |
| 获取门级仿真上下文 |
工程维护
工具 | 说明 |
| 执行功耗分析 |
| 清理工程(删除编译中间文件) |
| 生成编译流程 Tcl 模板 |
工具自动发现 / Auto-Discovery
服务器启动时自动搜索以下路径:
搜索范围 | 路径模式 |
C:/ D:/ E:/ F: 盘 |
|
WSL 挂载 |
|
环境变量 |
|
调用 list_quartus_installations 查看所有发现的版本,get_quartus_installation 查看当前激活的安装详情。
已验证环境 / Verified Environments
环境 | 版本 | 状态 |
Quartus Prime Lite | 24.1std.0 Build 991 | ✅ |
Quartus Prime Lite | 18.1.0 Build 625 | ✅ |
Quartus II Subscription | 13.1.0 Build 162 | ✅ |
ModelSim-Altera | 10.5b (Quartus 18.1 随附) | ✅ |
QuestaSim Intel FPGA | 24.1 (Quartus 24.1 随附) | ✅ |
注意事项 / Notes
JTAG 下载需要连接开发板和下载线
ModelSim/Questa 仿真需要有效许可证
本项目只调用本机命令行工具,不包含 Quartus/ModelSim/IP 库文件
execute_tcl_command会在本机执行任意 Tcl,请只运行可信命令多版本切换后,已缓存的版本号会重新检测,随后的 IP 核创建会使用新版本号
CQUPT
许可证 / License
MIT — 详见 LICENSE
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityDmaintenanceProvides AI assistants with a complete FPGA toolchain for HDL linting, simulation, synthesis, and place-and-route across various hardware targets. It features a GitHub-backed IP core registry that enables users to search for and import MIT-licensed cores directly through their chat interface.Last updated151MIT
- Alicense-qualityAmaintenanceUse Claude to control or ask questions about your Altium project.Last updated124MIT
- AlicenseAqualityCmaintenanceWraps Quartus II 9.1 command-line tools into MCP tools, enabling AI agents to create projects, assign pins, generate simulation waveforms, run simulations, compile, read reports, and program devices.Last updated164MIT
- Alicense-qualityDmaintenanceUse Claude to control or ask questions about your Altium project.Last updatedMIT
Related MCP Connectors
Live SEO workflow tools for Claude Code, Codex, and AI agents.
Trade Robinhood through natural language in Claude Code.
Adaptive plan/build/review cycles for AI coding assistants, persisted across sessions.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/liujunjie666777/quartus-Lmcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server