mcpField
S
Sentinel DV

Sentinel DV

本地服务
kiranreddi.github.io开发工具513 周前更新

关于 Sentinel DV

Sentinel DV 是面向芯片设计验证工程师的只读 MCP 服务,可索引 UVM、cocotb、覆盖率、回归和波形等导出产物。它以有界、结构化工具支持故障排查与覆盖率闭合,但不会执行仿真或修改设计文件。

主要功能

  1. 01索引验证产物至 DuckDB
  2. 02分析回归、测试及故障
  3. 03追踪覆盖率趋势与缺口
  4. 04提供有界波形摘要
  5. 05支持只读且受限的工具输出
  6. 06提供验证工作流 Agent 技能

适用场景

  1. 01排查回归中的测试失败
  2. 02比较运行结果并检查状态
  3. 03定位覆盖率缺口与趋势
  4. 04查看波形摘要及信号信息

MCP 相关

MCP 服务提供 28 个只读、带版本输出模式的工具,覆盖运行、测试、故障、断言、覆盖率、回归和波形。工具读取已索引数据及配置的产物目录;提交和重放操作仅返回供工程师审核的命令。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"kiranreddi-sentinel-dv": {
"command": "uvx",
"args": [
"sentinel-dv"
],
"env": {
"SENTINEL_DV_CONFIG": "<SENTINEL_DV_CONFIG>"
}
}
}
}
启动命令uvx sentinel-dv
需要配置的环境变量
SENTINEL_DV_CONFIGPath to config.yaml (alternative to --config)

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypisentinel-dv2.3.1

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Sentinel DV

PyPI MCP Registry CI Documentation License

Sentinel DV v2.3.1 是一个只读的设计验证证据模型上下文协议服务。它会将导出的 SystemVerilog、UVM、cocotb、断言、覆盖率、回归和波形工件编入 DuckDB,并向 AI Agent 提供 28 个有界、由架构驱动的工具。

文档 | 快速入门 | 视频演示 | 所有工具 | Agent 技能

提供的功能

  • **运行与测试智能:**发现、摘要、历史记录、拓扑、差异、回放命令生成和实时状态快照。
  • **失败分析:**规范化类别、稳定签名、有界证据、断言失败和失败聚类。
  • **覆盖率闭环:**功能、代码、翻转和 FSM 指标;趋势;缺口;空洞性;SVA 状态;以及协议感知的约束候选项。
  • **波形上下文:**预计算的 *.wave.json 和有界 VCD 摘要。原生 FSDB/WLF 流式处理不在支持范围内。
  • **Agent 工作流:**面向 Codex、Claude Code 和 GitHub Copilot 的回归问题分类、单项测试失败调试和覆盖率闭环技能。

Sentinel DV 不会执行仿真、修改 RTL 或测试平台文件,也不会无限制地流式传输原始工件。runs.submit 和 tests.replay 会返回供工程师审核的试运行命令。

快速入门

需要 Python 3.10 或更高版本。此示例会为已检入的演示语料库建立索引:

若要使用持久环境,请安装 sentinel-dv>=2.3.1。以下命令使用 uvx 运行同一版本,无需持久安装。

git clone https://github.com/kiranreddi/sentinel-dv.git
cd sentinel-dv
cp demo/config.example.yaml demo/config.yaml

uvx --from [email protected] \
  sentinel-dv-index --config "$PWD/demo/config.yaml" --index-all

连接一个 Agent:

Codex
codex mcp add sentinel-dv \
  --env SENTINEL_DV_CONFIG="$PWD/demo/config.yaml" \
  -- uvx --from [email protected] sentinel-dv-server
Claude Code
claude mcp add \
  --env SENTINEL_DV_CONFIG="$PWD/demo/config.yaml" \
  --transport stdio --scope local sentinel-dv \
  -- uvx --from [email protected] sentinel-dv-server
GitHub Copilot CLI
copilot mcp add sentinel-dv \
  --env SENTINEL_DV_CONFIG="$PWD/demo/config.yaml" \
  -- uvx --from [email protected] sentinel-dv-server

使用绝对路径设置 SENTINEL_DV_CONFIG。在客户端的 MCP 状态视图中确认连接,然后调用 runs.list。

请参阅Agent 设置,了解配置文件示例、项目范围、技能发现和故障排除。

生产环境配置

复制 config.example.yaml 并定义允许的工件根目录:

artifact_roots:
  - /absolute/path/to/regression/artifacts

index:
  type: duckdb
  path: ./sentinel_dv.db

adapters:
  uvm: true
  cocotb: true
  assertions: true
  coverage: true
  waveform_summary: true

security:
  max_response_bytes: 2097152
  max_page_size: 200
  max_evidence_refs: 10

redaction:
  enabled: true
  redact_emails: true
  redact_paths: true

启动服务前先构建索引:

sentinel-dv-index --config /absolute/path/to/config.yaml --index-all
sentinel-dv-server --config /absolute/path/to/config.yaml

YAML 中的相对路径以配置文件所在目录为基准解析。生产环境启动时绝不会静默回退到演示数据。

MCP 工具

28 个工具按工程用途分组:

类别工具
运行runs.list、runs.get、runs.summary、runs.diff、runs.cross_sim、runs.submit
测试tests.list、tests.get、tests.history、tests.topology、tests.cluster、tests.replay
失败与断言failures.list、assertions.list、assertions.get、assertions.failures、assertions.sva_status、assertions.vacuity
覆盖率coverage.list、coverage.summary、coverage.gaps、coverage.trend、coverage.advisor
回归与仿真regressions.summary、regression.health、sim.status
波形wave.signals、wave.summary

每个已注册工具都带有只读 MCP 注释和带版本的输出架构。MCP 工具参考介绍了精确的输入和输出。

Agent 技能

规范技能位于 skills/ 下:

确定性镜像可辅助项目发现:

宿主路径
Codex.agents/skills/
Claude Code.claude/skills/
GitHub Copilot.github/skills/

仓库还包含 Codex 和 Claude 插件清单。.mcp.json 定义了捆绑的 stdio 服务命令;请提供 SENTINEL_DV_CONFIG,或在服务工作目录中放置 config.yaml。

编辑规范技能后:

.venv/bin/python scripts/sync_agent_skills.py
.venv/bin/python scripts/sync_agent_skills.py --check

支持的工件来源

  • UVM 日志和拓扑提示
  • cocotb 和通用 JUnit XML
  • 断言定义和故障 JSON
  • SVA 运行状态 JSON
  • 支持的 JSON、XML、文本和 HTML 覆盖率摘要
  • *.wave.json 和 VCD
  • 实时仿真状态 JSON
  • 导出的 VCS、Xcelium、Questa 和 Verilator 结果

适配器输出会规范化为带版本的架构,因此客户端无需编写特定于供应商的解析逻辑。

安全模型

  • 工具为只读,基于索引和已配置的工件根目录运行。
  • 路径解析限制在允许的根目录内。
  • 证据计数、摘录、页面、波形信号、覆盖点以及响应总大小均受到限制。
  • 可配置的脱敏功能可保护常见机密、电子邮件地址、IP 地址和本地路径。
  • 工具输出是确定性的;MCP 服务不会生成因果结论。

使用生产工件前,请阅读安全和生产部署。

验证

创建开发环境:

python3 -m venv .venv
.venv/bin/pip install -e ".[dev,docs]"

运行端点和工作流检查:

.venv/bin/python scripts/verify_all_mcp_tools.py
.venv/bin/python scripts/verify_skill_workflows.py

运行完整质量套件:

.venv/bin/pytest
.venv/bin/ruff check .
.venv/bin/black --check .
.venv/bin/mypy sentinel_dv
.venv/bin/mkdocs build --strict

全工具验证器会调用所有已注册的 MCP 端点。技能验证器会为 52 个已纳入版本控制的演示工件编制索引,并执行已发布的回归分诊、故障调试和覆盖率闭合流程。

项目布局

sentinel_dv/
  adapters/        artifact parsers
  indexing/        DuckDB indexing and queries
  normalization/   signatures, taxonomy, redaction, coverage guidance
  schemas/         versioned response contracts
  tools/core.py    tool implementations
  server.py        FastMCP registration and stdio entry point

skills/            canonical agent skills
demo/              license-free exported verification fixtures
docs/              MkDocs documentation
scripts/           verification, gallery, release, and skill-sync tooling
tests/             unit and integration coverage

贡献

请参阅 CONTRIBUTING.md。Sentinel DV 采用 Apache-2.0 许可证。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。