Skip to main content

MCP Server for AI-powered RTL diagram generation

Project description

RTLViz - AI-Powered RTL Diagram Generator

⚠️ Development Notice: This project is under active development. It can make mistakes. Please verify generated diagrams against your design.

An MCP (Model Context Protocol) server that enables AI assistants to generate publication-quality RTL block diagrams from Verilog/SystemVerilog code.

Installation

pip install rtlviz
rtlviz-setup

That's it! The setup command auto-configures your AI IDE (Claude Desktop or VS Code).

Manual Setup (Alternative)

If auto-setup doesn't work, you can configure manually:

Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "rtlviz": {
      "command": "rtlviz-server"
    }
  }
}

VS Code (.vscode/mcp.json):

{
  "servers": {
    "rtlviz": {
      "command": "rtlviz-server"
    }
  }
}

Usage

Just ask your AI: "Generate an RTL diagram for CPU.v"

💡 Recommended: Works best with latest AI models like Claude Opus 4 or Claude Sonnet 4 for accurate RTL analysis.

How It Works

  1. You install the package (pip install rtlviz)
  2. Your IDE spawns the server locally when you open a session
  3. The AI reads the rtlviz://prompt resource to learn how to analyze RTL
  4. The AI generates Graphviz DOT code based on your Verilog
  5. The AI calls the render_diagram tool to create an interactive HTML viewer

No server hosting required. No API keys. Runs 100% locally.

Enterprise & Privacy

  • Safe for Work: All RTL analysis happens locally or via your enterprise-approved LLM provider.
  • Telemetry: We collect minimal, anonymous usage data (version, session ID) to improve the tool.
    • No IP addresses or personal data.
    • No file contents or code.
  • Opt-Out: Set the environment variable RTLVIZ_TELEMETRY=0 to disable all network calls.
    • Firewall Friendly: If blocked, the tool fails silently and continues working.

Developing & Releasing

Analytics Setup

To enable your own analytics dashboard:

  1. Deploy analytics/google_apps_script.js as a Google Web App (Execute as Me, Access: Anyone).
  2. Set RTLVIZ_TELEMETRY_URL in src/rtlviz/telemetry.py to your Web App URL.

Publishing to PyPI

  1. Bump Version: Update pyproject.toml and src/rtlviz/telemetry.py.
  2. Build: python -m build
  3. Upload: twine upload dist/*

Developers

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rtlviz-0.2.4.tar.gz (10.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rtlviz-0.2.4-py3-none-any.whl (13.3 kB view details)

Uploaded Python 3

File details

Details for the file rtlviz-0.2.4.tar.gz.

File metadata

  • Download URL: rtlviz-0.2.4.tar.gz
  • Upload date:
  • Size: 10.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.8

File hashes

Hashes for rtlviz-0.2.4.tar.gz
Algorithm Hash digest
SHA256 f45b58b3094a2350173395a15c8071d7092d6eb91929cf2b06e9b5ffa5761dfb
MD5 1ffa19327472f2bca686948a9630e07d
BLAKE2b-256 8403d6e74088e4ff8a248daf630ba7c5eb44f3a09a407b6a13976a91287b1d78

See more details on using hashes here.

File details

Details for the file rtlviz-0.2.4-py3-none-any.whl.

File metadata

  • Download URL: rtlviz-0.2.4-py3-none-any.whl
  • Upload date:
  • Size: 13.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.8

File hashes

Hashes for rtlviz-0.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 eede9b713702447641d6850733c8d339edf98881e134c03c983c9275c0b9f748
MD5 ee450650fc51c98373ac2450d988808c
BLAKE2b-256 ad5c2e78043a2646089e65da3d7fdbe1d46e718f6c961db9b30f54c433d2bd2b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page