AP

ariklapid/pyslang-mcp

Developer tools

이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기

21 stars 4 forks 품질 70 트렌드 14Apache-2.0

pyslang-mcp는 컴파일러 백업 Verilog 및 SystemVerilog 분석을위한 read-only Model Context Protocol 서버입니다.

개요

pyslang-mcp는 Verilog 및 SystemVerilog 프로젝트에 대한 AI Agent 컴파일러 백업, 읽기 전용 컨텍스트를 제공하는 Local Model Context Protocol 서버입니다. 그것은 pyslang 그래서 MCP 클라이언트는 일반 텍스트 대신 파삭과 정교한 HDL에 대한 질문을 할 수 있습니다 : - 어떤 모듈, 인터페이스 및 패키지는이 파일 목록에 있습니까? - 컴파일러 frontend 보고서는 어떤 진단이 있습니까? - 이 상단의 인스턴스 계층은 무엇입니까? - 이 기호가 선언 또는 참조되는 곳? - 경로, 정의 및 배열 .f 파일이 예상대로 해결되었습니까? 이것은 시뮬레이터, 합성기, 파형 구경꾼, linter 보충, 또는 RTL refactoring 공구 아닙니다. 로컬 HDL 체크 아웃을위한 작은 세마틱 분석 서비스입니다. 즉 read-only 경계는 의도적이다. 서버 측 효력이 무료로 유지하고, IP 보호된 작업 공간에 있는 폭발 반경을 감소시키고, 그것에게 국부적으로와 CI 환경에서 사용하기 위하여 더 안전한 만듭니다. pyslang-mcp 읽기 전용을 유지하기로 결정했습니다.

개요(AI 번역)

pyslang-mcp는 AI Agent를 제공하는 Local Model Context Protocol 서버입니다. Verilog 및 SystemVerilog 프로젝트에 대한 컴파일러 백업, 읽기 전용 컨텍스트.

그것은 포장 pyslang 그래서 MCP 클라이언트 요청할 수 있습니다 일반 텍스트 대신 parsed 및 elaborated HDL에 대한 질문 :

  • 어떤 모듈, 인터페이스 및 패키지는이 파일 목록에 있습니까?
  • 컴파일러 프론트엔드 보고서는 어떤 진단인가요?
  • 이 상단의 인스턴스 계층은 무엇입니까?
  • 이 기호가 선언 또는 참조되는 곳?
  • 내 경로, 정의 및 배열 .f] 파일이 예상대로 해결되었습니까?

이것은 시뮬레이터, 합성기, 파형 구경꾼, linter 보충, 또는 아닙니다 RTL refactoring 공구. 로컬 HDL의 작은 세마틱 분석 서비스입니다. 체크아웃

즉 read-only 경계는 의도적이다. 그것은 서버 부작용을 해방합니다, IP-protected 작업 공간에 폭발 반경을 감소시키고, 그것을 사용하기 위하여 더 안전한 만듭니다 현지 및 CI 환경.

pyslang-mcp 읽기 전용을 유지하기로 결정했습니다. LLM은 실제 RTL을 취급합니다. coding, while pyslang-mcp는 컴파일/elab-backed reader, checker, 그리고 이미 존재하는 코드에 대한 설명. 즉, 모델 초안

이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요.

README

원문 README의 일부입니다. 원문 보기.

pyslang-mcp

pyslang-mcp is a local Model Context Protocol server that gives AI agents compiler-backed, read-only context for Verilog and SystemVerilog projects.

It wraps pyslang so an MCP client can ask questions against parsed and elaborated HDL instead of plain text:

  • What modules, interfaces, and packages are in this filelist?
  • What diagnostics does the compiler frontend report?
  • What is the instance hierarchy below this top?
  • Where is this symbol declared or referenced?
  • Did my include paths, defines, and nested .f files resolve as expected?

This is not a simulator, synthesizer, waveform viewer, linter replacement, or RTL refactoring tool. It is a small semantic analysis service for local HDL checkouts.

That read-only boundary is intentional. It keeps the server side-effect free, reduces the blast radius in IP-protected workspaces, and makes it safer to use in local and CI environments.

It was decided to keep pyslang-mcp read-only. The LLM handles the actual RTL coding, while pyslang-mcp serves as the compile/elab-backed reader, checker, and explainer for code that already exists. In other words, the model drafts the RTL and the MCP server verifies what the compiler frontend sees.

[!NOTE] The project is currently early-stage and published on PyPI and the MCP Registry for local stdio use.

Why ASIC And EDA Engineers Might Care

Most AI coding tools are good at searching text. HDL usually needs more than that.

In real projects, useful answers often depend on filelists, packages, includes, defines, generate blocks, and hierarchy. pyslang-mcp gives an agent a compact compiler-backed view of that structure, while keeping the server read-only and scoped to a project root you provide.

Good fits:

  • triaging parse and semantic diagnostics before asking an agent to reason about RTL
  • checking what a .f file expands to
  • listing design units in a block or small IP
  • finding a declaration without chasing comments and stale grep hits
  • getting hierarchy and port-connection context for review/debug prompts
  • giving workflow agents HDL context without handing them an EDA runtime

Quickstart

Install the package:

pip install pyslang-mcp

Run the local stdio server:

pyslang-mcp

For contributor setup, clone the repo and install it in editable mode:

GitHub에서 전체 README 보기

설치

This server does not publish a one-line install command.

Open the repository installation guide MCP 초보자라면? mcpskill.org 가이드부터 시작하세요 →

설정

{ "mcpServers": { "pyslang-mcp": { "command": "pyslang-mcp", "args": [] } } }