MCP Repo Mapper

io.github.LovRanRan由 GitHub 帳號 LovRanRan 發布v0.1.0更新於 Oct 25, 2026

Deterministic repository structure mapping for onboarding agents.

已驗證STDIO僅桌面知識與記憶開發者工具

概覽

AI 產生的概覽

一個本機 MCP 伺服器,掃描程式碼儲存庫並向助理提供檔案結構、語言組成、進入點、框架與 Python 相依圖。

可以做什麼
掃描儲存庫路徑,回傳檔案、語言組成、進入點、Python 相依圖與偵測到的框架,並找出 Python 匯入圖中的循環相依,依檔案數與位元組數統計各語言,偵測 FastAPI、Flask、Django、Express、Spring 等框架,為 Python main、套件啟動腳本、Dockerfile、Node 進入點等候選進入點排序,在掃描工具填入快取後透過 repo-structure 資源讀取快取的 JSON 掃描結果。
適用情境
適合助理在說明陌生本機程式碼庫的架構之前,先取得一份確定性的結構地圖,例如程式碼上手或相依性審查時。它補充而非取代符號層級查詢與測試執行類工具。
執行需求
以 stdio 本機程序執行,從 PyPI 套件 mcp-repo-mapper 安裝並以 uv 啟動。只掃描本機檔案系統路徑,無需帳號、API 金鑰或環境變數。
安裝前請注意
它會讀取本機儲存庫檔案,只應指向你願意暴露給助理工作階段的程式碼。相依分析僅限 Python 且為靜態解析,框架偵測採啟發式標記,資源快取為程序內記憶體快取,結果可能不完整。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 MCP Repo Mapper,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

mcp-repo-mapper

mcp-repo-mapper is a FastMCP server for deterministic repository structure mapping. It scans a local codebase and exposes file structure, language counts, Python import dependencies, circular dependency detection, framework detection, entry point candidates, and a cached repo structure resource.

The server does not call an LLM and does not execute user code. It is intended as a grounded structure tool for codebase onboarding agents such as wayfinder.

Codebase Onboarding Stack

mcp-repo-mapper is the structure layer in a three-server MCP tool stack for Project 6 wayfinder, a codebase onboarding agent.

  • mcp-repo-mapper maps repository structure, languages, entry points, framework evidence, and Python dependency edges.
  • mcp-ast-explorer provides symbol-grounded Python definition, signature, reference, call-chain, and class-hierarchy lookups.
  • mcp-test-runner runs local pytest/Jest checks and coverage summaries so agent claims can be verified against execution.

In wayfinder, this server feeds the architecture-mapping step before semantic explanation or test verification begins.

Features

  • scan_repo(path) returns a typed repo scan with files, language breakdown, entry points, Python dependency graph, and detected frameworks.
  • find_circular_deps(path) returns circular dependencies from the static dependency graph.
  • language_breakdown(path) returns language counts by file count and bytes.
  • detect_framework(path) detects FastAPI, Flask, Django, Express, and Spring using registry-based markers.
  • find_entry_points(path) returns ranked entry point candidates such as Python mains, FastAPI apps, package start scripts, Dockerfiles, and Node indexes.
  • repo-structure://{url_hash} returns a cached JSON scan result after a tool call has populated the cache.

Install

bash
uv sync --extra dev

Run the server locally:

bash
uv run mcp-repo-mapper

Development

bash
uv run ruff check .uv run mypyuv run pytest

Resource Flow

Resource reads use a cache populated by tool calls:

  1. Call scan_repo(path) or another scan-backed tool.
  2. Compute the repo hash with the same path.
  3. Read repo-structure://{url_hash}.

The public resource uses repo-structure://... because URL schemes cannot contain underscores.

Scope And Limitations

  • Dependency graph support is currently Python-only and based on static ast parsing.
  • Import graph resolution only records modules that exist inside the scanned repo.
  • Framework detection is heuristic marker matching, not a full build-system analysis.
  • The resource cache is in-memory and process-local.
  • The server scans local filesystem paths only.

License

MIT

來源:README.md,提交 5fe2378

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.1.0最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分