Token导航 LogoToken导航TokenDH.com
Sentinel Dv logo
安全风控stdio官方级别未说明来源级核验

Sentinel Dv

MCP Server

Sentinel DV是一个开源的模型上下文协议(MCP)服务器,为大型语言模型和AI代理提供安全、结构化、只读的验证工件访问,支持确定性分类、根因分析和验证洞察。

工具数

14

提示词数

0

GitHub Stars

2

资源数

0
安全访问PythonClaudeClaude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

kiranreddi

提供方

kiranreddi

最后核验

2026/5/17 20:19

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install -e ".[dev]"

详细介绍

🛡️ Sentinel DV v1.0.0-人工智能代理的验证智能

![Python](https://www.python.org/downloads/) ![MCP](https://modelcontextprotocol.io) ![License](LICENSE) ![CI](https://github.com/kiranreddi/sentinel-dv/actions/workflows/ci.yml) ![Documentation](https://github.com/kiranreddi/sentinel-dv/actions/workflows/docs.yml) ![PRs Welcome](CONTRIBUTING.md) ![Coverage](tests/)

用于验证智能的安全第一MCP服务器(SystemVerilog/UVM/cocotb)

特性建筑快速开始文档

______________________________________________________________________

🌟 什么是Sentinel DV?

Sentinel DV是一种 开源模型上下文协议(MCP)服务器 它为大型语言模型和AI代理提供了 安全、结构化、只读访问 验证工件——实现确定性分类、根本原因分析和验证洞察,而无需公开原始日志或授予模拟器控制权。

支持验证生态系统

  • 🔧 通用验证方法 -企业验证框架
  • 🐍 可可结核 -基于Python的协程验证
  • 📊 系统 -断言、覆盖率和本地测试台
  • 🌊 波形摘要 -预先计算的信号分析(无原始FSDB/VCD流)

全部通过a 统一的、模式驱动的接口 具有内置的安全性、编校性和确定性输出。

______________________________________________________________________

🏗️ 建筑

哨兵DV遵循 严格分离关注点 安全第一原则:

sentinel_dv/
├── server.py              # MCP server entrypoint
├── config.py              # Security limits, feature flags, governance
├── registry.py            # Tool registration and versioning
├── schemas/               # Typed contracts for all data
│   ├── common.py         # EvidenceRef, RunRef, base types
│   ├── tests.py          # TestCase, TestTopology, UvmTopology
│   ├── failures.py       # FailureEvent, FailureSignature
│   ├── assertions.py     # AssertionInfo, AssertionFailure
│   ├── coverage.py       # CoverageSummary, CoverageMetric
│   ├── regressions.py    # RegressionSummary, RunDiff
│   └── versioning.py     # Schema version management
├── tools/                 # MCP tools (discovery + detail)
│   ├── runs.py           # runs.list, runs.diff
│   ├── tests.py          # tests.list, tests.get, tests.topology
│   ├── failures.py       # failures.list
│   ├── assertions.py     # assertions.list/get/failures
│   ├── coverage.py       # coverage.list/summary
│   ├── regressions.py    # regressions.summary
│   └── wave.py           # wave.summary, wave.signals
├── indexing/              # Artifact indexing and querying
│   ├── indexer.py        # Build normalized index from artifacts
│   ├── store.py          # DuckDB storage interface
│   └── query.py          # Filter/sort/pagination
├── adapters/              # Parse verification artifacts
│   ├── uvm_log.py        # UVM log parsing
│   ├── cocotb.py         # cocotb result parsing
│   ├── assertions.py     # Assertion map/failure parsing
│   ├── coverage.py       # Coverage export parsing
│   └── waveform_summary.py  # Waveform summary parsing
├── normalization/         # Security and determinism
│   ├── signatures.py     # Stable failure signature hashing
│   ├── taxonomy.py       # Failure categorization
│   └── redaction.py      # Automatic secret/PII redaction
└── utils/                 # Common utilities
    ├── hashing.py
    ├── time.py
    └── bounded_text.py

设计原则:

  • 默认情况下为只读 -无模拟器控制,无伪影修改
  • 架构优先 -每个响应都符合键入的合同
  • 确定性的 -相同的输入→ 相同的输出(无LLM生成的字段)
  • 基于证据的 -所有可追溯到源工件的事实
  • 有界且安全 -自动编校、大小限制、路径沙盒

______________________________________________________________________

✨ 特性

🔒 安全第一

  • 按设计只读 -无模拟触发器或工件写入
  • 自动编校 -凭据、令牌、电子邮件、IP地址、路径
  • 路径沙盒 -仅配置的工件根可访问
  • 有界输出 -最大响应大小,最大证据摘录
  • 来源追踪 -每个事实都包括可选的源引用

📊 丰富的验证数据

  • 测试结果 -状态、持续时间、种子、模拟器信息、DUT配置
  • UVM拓扑 -环境/代理/驾驶员/监视器/记分板层次结构
  • 失效分析 -分类事件(断言/记分板/协议/超时)
  • 断言智能 -SVA定义、运行时故障、意图映射
  • 覆盖率指标 -功能/代码/断言/切换/FSM覆盖率
  • 回归分析 -通过率、失败特征、运行差异
  • 接口绑定 -协议映射(AXI/AHB/APB/PCIe/USB)

⚡ 性能和规模

  • 高效索引 -DuckDB用于快速过滤和聚合
  • 智能分页 -具有稳定排序的有界结果集
  • 标准化存储 -去重、散列工件
  • 选择性投影 -仅请求必填字段

🔌 模拟器不可知

  • 使用 任何模拟器 (Synopsys VCS、Cadence Xcelium、Mentor Questa、Verilator)
  • 适配器模式 -采用特定于工具的格式,输出统一的模式
  • 预先计算的摘要 -运行时不依赖EDA工具

📋 模式驱动的合约

  • 版本化架构 -具有兼容性保证的SemVer
  • JSON模式验证 -确定性、可测试性
  • 稳定的工具API -向后兼容的进化
  • 自我记录 -模式定义了接口

______________________________________________________________________

🚀 快速开始

安装

# Clone the repository
git clone https://github.com/yourusername/sentinel-dv.git
cd sentinel-dv

# Install with development dependencies
pip install -e ".[dev]"

# Or production install
pip install sentinel-dv

配置

创建 config.yaml:

# Artifact roots (read-only)
artifact_roots:
  - /path/to/verification/regressions
  - /path/to/uvm/logs

# Index storage
index:
  type: duckdb  # or sqlite, json
  path: ./sentinel_dv.db

# Adapters (enable/disable)
adapters:
  uvm: true
  cocotb: true
  assertions: true
  coverage: true
  waveform_summary: false

# Security & limits
security:
  max_response_bytes: 2097152  # 2MB
  max_page_size: 200
  max_evidence_refs: 10
  max_excerpt_length: 1024

# Redaction
redaction:
  enabled: true
  patterns:
    - AKIA.*           # AWS keys
    - ghp_.*           # GitHub tokens
    - Bearer\s+\S+     # Bearer tokens
  redact_emails: true
  redact_paths: true

运行服务器

# Start the MCP server
python -m sentinel_dv.server --config config.yaml

# Index artifacts (one-time or scheduled)
python -m sentinel_dv.indexing.indexer --config config.yaml --index-all

# Run with Claude Desktop
# Add to Claude config:
{
  "mcpServers": {
    "sentinel-dv": {
      "command": "python",
      "args": ["-m", "sentinel_dv.server", "--config", "/path/to/config.yaml"]
    }
  }
}

查询示例

与Claude或任何MCP客户:

"Why did test axi_burst_test fail in the latest regression?"
→ Uses: tests.list, failures.list, tests.topology

"What assertions failed in the AXI agent?"
→ Uses: assertions.failures, assertions.get

"Compare coverage between runs R123 and R124"
→ Uses: runs.diff, coverage.summary

"Show me the failure signatures from the past week"
→ Uses: regressions.summary

______________________________________________________________________

📖 文档

核心概念

指南

参考

______________________________________________________________________

🤝 贡献

我们欢迎捐款!看 贡献.md 用于:

  • 行为准则
  • 开发设置
  • 测试指南
  • 拉取请求流程

发展

# Install with dev dependencies
pip install -e ".[dev]"

# Run tests
pytest

# Run with coverage
pytest --cov=sentinel_dv --cov-report=html

# Lint and format
ruff check .
black .
mypy sentinel_dv/

______________________________________________________________________

📊 项目状态

  • 核心模式 -稳定v1.0
  • MCP工具 -6个类别的14个工具
  • 适配器 -UVM、cocotb、断言、覆盖范围
  • 索引 -具有高效查询功能的DuckDB
  • 安全 -重动作、沙盒、边界
  • 测试覆盖率 -70%以上,经过单元和集成测试
  • 文档 -完整指南和API参考
  • 🚧 波形摘要 -实验性
  • 🚧 插件生态系统 -即将推出

______________________________________________________________________

🎯 定位

什么哨兵DV

  • A. 只读MCP服务器 用于验证生态系统
  • A. 模式优先上下文提供程序 对于代理商和LLM
  • A. 确定性翻译层 从噪声伪影到类型化数据
  • A. 可组合的基础设施组件 用于调试工作流

什么哨兵DV 不是

  • ❌ 确实如此 启动模拟或提交作业
  • ❌ 确实如此 修改RTL/测试台代码
  • ❌ 确实如此 需要任何特定的模拟器
  • ❌ 它是 一个“会猜测的AI”;它返回有根据的、键入的事实

______________________________________________________________________

🙏 致谢

灵感来源:

______________________________________________________________________

📄 许可证

Apache许可证2.0-请参阅 许可证 了解详情。

______________________________________________________________________

🔗 链接

______________________________________________________________________

建于❤️ 对于验证社区

⬆ 返回页首

目录标签

目录标签

安全访问PythonClaude验证智能本地部署MCP服务器UVMSystemVerilogcocotb

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

token

工具数量(toolCount,工具数)

14

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiotoken部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP