克劳德的UVM 1.2 MCP
一个MCP(模型上下文协议)服务器,为Claude提供 源代码级别 了解UVM 1.2——通用验证方法。
激活后,Claude可以浏览实际的UVM源文件,跟踪类层次结构,读取方法实现,并检索精心策划的专家见解,从而提供远远超出一般文档提供的答案。
UVM 1.2源代码和预构建的知识库捆绑在这个存储库中。无需额外的下载或构建步骤。
______________________________________________________________________
克劳德可以用这个MCP做什么
| 工具 | 它做什么 |
|---|---|
search_uvm_source | 正则表达式搜索全部 .sv / .svh 文件 |
get_uvm_class | 完整的类源代码 |
get_uvm_class_hierarchy | 祖先/后代树 |
list_uvm_class_methods | 类中的所有方法 |
get_uvm_method_source | 精确的方法实现 |
list_uvm_classes | 浏览所有100+UVM课程 |
get_uvm_file | 带有行号的原始文件内容 |
list_uvm_files | 按子系统划分的文件树 |
get_uvm_macro | 宏定义来自 uvm_macros.svh |
semantic_search_uvm | 自然语言搜索(RAG) |
explain_uvm_concept | 结合资源+专家知识的深度潜水 |
______________________________________________________________________
需求
- Python 3.10+
- 约200 MB可用磁盘空间(用于Python虚拟环境)
- 无需GPU
- 没有外部API密钥
______________________________________________________________________
安装
1.克隆存储库
git clone https://github.com/YOUR_USERNAME/UVM_MCP.git
cd UVM_MCP2.创建虚拟环境并安装依赖项
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt第一次运行将自动下载 all-MiniLM-L6-v2 嵌入模型(~90 MB)。______________________________________________________________________
配置Claude代码
添加以下内容 ~/.claude/settings.json (如果文件不存在,请创建该文件):
{
"mcpServers": {
"uvm": {
"command": "/absolute/path/to/UVM_MCP/.venv/bin/python",
"args": ["/absolute/path/to/UVM_MCP/server.py"]
}
}
}替换 /absolute/path/to/UVM_MCP 使用克隆仓库的实际路径。
示例 (如果克隆到您的主目录):
{
"mcpServers": {
"uvm": {
"command": "/Users/yourname/UVM_MCP/.venv/bin/python",
"args": ["/Users/yourname/UVM_MCP/server.py"]
}
}
}保存后重新启动Claude Code。
______________________________________________________________________
验证
重新启动后,打开一个新的对话并运行:
/mcp你应该看看 uvm 列为已连接的服务器。
然后试着问克劳德:
“解释如何 uvm_driver 与定序器通信,并向我展示相关的源代码。"Claude将自动调用UVM MCP工具,以回答实际的源级细节。
______________________________________________________________________
UVM 1.2源
来源: accellera/uvm@uvm_1_2_RELEASE\ 许可证:Apache 2.0
