Token导航 LogoToken导航

MCP Server · 运维云端

Dependence Analysis MCP

一个用于扫描前端/Node项目ESModule依赖关系的工具,帮助识别已引用文件、未引用文件和未使用导入,适用于项目清理、打包优化、代码审计和重构准备。

stdio官方级别未说明来源级核验工具 1
PythonClaude静态分析Claude Desktop

快速开始

作者 / 组织
bugfix2020
提供方
bugfix2020

工具数量

1

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

1 个

MCP World

选型结论

Dependence Analysis MCP 属于运维云端类 MCP Server,公开资料标注 1 个工具,通过stdio 本地进程接入,适配 Claude Desktop、Claude,有可以直接复制的安装命令;接入前先确认权限范围。

分类

运维云端

传输方式

stdio

认证方式

无需认证

部署方式

公开资料未说明

安装与配置

安装命令

pip install -e .

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 对应的运行时,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 1 个工具,随便调一个只读工具确认能返回结果。

接入前确认

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

详细介绍

dependence-analysis-mcp

一个 MCP Server(支持 stdio/HTTP 双模式)用于扫描前端/Node 项目的 ESModule 依赖关系,帮助你快速找出:

  • ✅ 已引用文件 — 被 import 且确实有使用,附带引用次数
  • 🧹 未引用文件 — 存在于项目中但从未被其他文件引用
  • 💤 未使用导入 — 存在 import,但导入的标识符从未使用

🎯 为什么需要这个工具?

问题背景

大型前端项目迭代中常见的"死代码"问题:

传统方法局限性
ESLint no-unused-vars只检测单文件内,无法发现跨文件的废弃代码
IDE "查找引用"需逐个手动检查,无法批量分析
TypeScript 编译器不报告未被引用的导出

解决方案

通过 全局依赖图分析,一次性识别出所有未引用文件和未使用导入:

flowchart LR
    subgraph "传统工具"
        A[单文件 Lint]
    end

    subgraph "本工具"
        B[全局依赖图]
        C[未引用文件检测]
        D[未使用导入检测]
        E[引用计数统计]
    end

    A -.->|局限| B
    B --> C & D & E

核心分析流程

sequenceDiagram
    participant Dev as 开发者
    participant MCP as MCP Server
    participant Scanner as 扫描引擎
    participant AST as Tree-sitter

    Dev->>MCP: 调用 run_dependence_analysis
    MCP->>Scanner: 扫描项目目录

    loop 每个源文件
        Scanner->>Scanner: 提取 import 语句
        Scanner->>AST: 解析标识符使用
        Scanner->>Scanner: 解析路径别名
    end

    Scanner->>Scanner: 构建依赖图
    Scanner-->>MCP: AnalysisResult
    MCP-->>Dev: 分析报告

适用场景

场景效果
🧹 项目清理定位可删除的废弃代码
📦 打包优化减少 bundle 体积
📚 代码审计评估项目健康度
🔄 重构准备了解模块依赖关系

✨ 特性

  • 🎯 支持 React / Vue / Angular / Node(.js/.jsx/.ts/.tsx/.vue)
  • 🧠 Tree-sitter AST 级未使用导入检测,大幅降低误判
  • 🔗 路径别名支持:tsconfig.json paths + vite.config.* alias
  • 🚫 智能忽略 node_modules/dist/tests/... 等目录

📦 安装 & 快速开始

# 克隆仓库
git clone https://github.com/bugfix2020/dependence-analysis-mcp.git
cd dependence-analysis-mcp

# 安装依赖
pip install -e .

# stdio 模式(默认,用于 MCP 客户端如 Claude Desktop)
dependence-analysis-mcp

# HTTP 模式(用于 Web 部署)
dependence-analysis-mcp --mode http --host 0.0.0.0 --port 8000

连接 MCP endpoint(HTTP 模式):http://127.0.0.1:8000/mcp


🧩 MCP Tool API

run_dependence_analysis

请求参数
字段类型必填说明
directorystring✅扫描目录路径
rootsstring[]-入口文件列表
includeExtensionsstring[]-额外扫描后缀
返回结构
字段说明
referencedFiles已引用文件及引用次数
unreferencedFiles未引用文件列表
unusedImports未使用的导入列表
warnings解析告警信息
示例
{
  "referencedFiles": [{ "path": "/src/utils/a.ts", "importCount": 3 }],
  "unreferencedFiles": ["/src/old-component.tsx"],
  "unusedImports": [
    {
      "file": "/src/pages/home.tsx",
      "importSource": "@/components/Button",
      "importedNames": ["Button"]
    }
  ]
}

🐳 Docker 部署

docker build -t dependence-analysis-mcp .
docker run --rm -e PORT=8000 -p 8000:8000 dependence-analysis-mcp

🔧 忽略规则

默认跳过:

  • 目录: node_modules, .git, dist, build, .next, .nuxt, coverage, .cache
  • 测试目录: __tests__, test(s), e2e, cypress, __mocks__, fixtures, examples
  • 文件: *.d.ts, *.test.*, *.spec.*, *.stories.*

⚠️ 限制

  • 仅统计本地源码文件间的引用(外部依赖如 react 会忽略)
  • 主要针对静态 import ... from ... 分析
  • 复杂动态导入场景可能无法覆盖

🧪 开发 & 测试

# 安装开发依赖
pip install -e ".[dev]"

# 运行测试
pytest

📂 项目结构

dependence-analysis-mcp/
├── src/dependence_analysis_mcp/  # 核心代码
├── tests/                        # 单元测试
├── Dockerfile                    # Docker 部署
├── CHANGELOG.md                  # 变更日志
└── pyproject.toml                # 项目配置

📝 Changelog

v0.0.3 (2025-12-17) — 准确率大幅提升 🎯

指标v0.0.2v0.0.3变化
未使用导入误报~581↓ 98%
综合准确率~18%97.3%↑ 79%

修复:

  • type 导入的使用追踪
  • 解构导入标识符追踪
  • 泛型参数中类型检测
  • extends/implements 类型使用
  • JSX 组件引用识别

已知问题:

  • $ 开头的标识符可能误报(如 $isTagNode)

v0.0.2 (2025-12-17)

  • Tree-sitter AST 未使用导入检测
  • tsconfig.json paths 别名解析
  • vite.config.* alias 解析
  • import.meta.glob 支持

v0.0.1

  • 首个可用版本

🔮 Roadmap

  • [ ] 修复 $ 开头标识符误报
  • [ ] Vue SFC AST 解析支持
  • [ ] import() 动态导入分析
  • [ ] re-export 链式追踪

详细变更日志见 CHANGELOG.md

工具与能力

工具数量

1

资源数量

0

提示词数量

0

能力标签

依赖分析Python本地部署代码优化前端工具静态分析项目清理

支持客户端

Claude DesktopClaude

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

看服务状态

查询容器、日志和监控指标,定位异常。

执行部署变更

在权限范围内触发发布、回滚和环境切换。

核对资源用量

汇总用量,找出闲置和超额的部分。

选择建议

值得选的地方

  • 只提供 1 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 已经适配 Claude Desktop、Claude,换客户端不用重新研究配置。

先想清楚的地方

  • stdio 方式要求本地装好 运行环境,换机器要重新装一遍。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在运维云端场景里让模型直接调用外部能力的人。
  • 已经在用 Claude Desktop 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Dependence Analysis MCP

MCP World · 本页

1stdio有1 个2026-05-17
Ui Tars Desktop 8a825770

MCP World

0stdio有1 个2026-05-17
Elie222 MCP

MCP World

0未说明未标注1 个2026-05-17
Arizeai Phoenix MCP

MCP World

0stdio有3 个2026-05-17
Unity MCP 87ee506e

MCP World

42HTTP有2 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Dependence Analysis MCP 怎么安装?

公开资料给出的安装命令是 pip install -e .,运行环境为 未标注。装完后按客户端要求写进 MCP 配置,重启客户端生效。

Dependence Analysis MCP 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 未标注;保存后完全退出客户端再打开,配置才会生效。

Dependence Analysis MCP 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Dependence Analysis MCP 需要 API Key 吗?

公开资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

Dependence Analysis MCP 支持哪些客户端?

公开资料标注支持 Claude Desktop、Claude;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP