Token导航 LogoToken导航TokenDH.com
Repository Analysis MCP logo
数据服务未说明官方级别未说明来源级核验

Repository Analysis MCP

MCP Server

一个用于分析MCP服务器和工具的综合系统,通过repomix和LLM工作流处理仓库数据,提供分类、工具提取、比较和推荐功能。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
自动化处理JavaScript数据分析

安装说明

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

作者 / 组织

odenizo

提供方

odenizo

最后核验

2026/5/17 20:20

快速接入

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

详细介绍

仓库分析MCP(或:MCP仓库分析)

一个利用repomix和LLM工作流程全面分析MCP(模型上下文协议)服务器和工具的系统。

概述

这个系统处理包含MCP服务器和工具的存储库,生成repomix输出,将其存储在SQLite数据库中,并利用大型语言模型(LLM)工作流来:

  • 按功能对仓库进行分类
  • 提取并列出可用工具
  • 在功能类别内比较服务器
  • 根据分析生成建议

特点/功能

  • 🔄 翻译成中文可以是“🔄(循环/重复)”。不过,这个符号本身并没有直接对应的中文词汇,它通常用来表示循环、重复或刷新的动作。在中文语境中,我们可能会根据上下文用“循环”、“重复”或“刷新”等词汇来表达这个符号的含义。 自动化处理GitHub工作流:用于计划和按需处理存储库
  • 📊 表格 Repomix 集成使用repomix生成全面的仓库输出结果
  • 💾 代表软盘的符号,可翻译为“软盘”或根据上下文简化为“磁盘”等,具体含义需结合语境理解。 SQLite 数据库存储所有输出、分析结果和元数据
  • 🤖 机器人 大语言模型(LLM)分析使用OpenAI API进行智能分类和比较
  • 🏷️(标签) 分类自动将仓库分类到功能类别中
  • 🔍 翻译为中文是:“🔍”(注:这个符号本身在中文中没有特定的含义,通常用于表示放大镜或搜索,因此直接保留原样或根据上下文解释为“放大镜/搜索”的意思。)不过,如果仅从符号本身来看,它在中文网络语境中常被用来表示“搜索”或“放大镜”的意思,类似于英文中的“🔍”。所以,也可以理解为“放大镜/搜索”。 工具提取识别并列出所有工具和功能
  • 📈 表示“上升趋势”或“增长”的图表符号。 比较在同一类别内比较仓库
  • 💡(这个符号本身在中文里没有直接对应的翻译,但通常表示“灯泡”或“灵感”的意思,可以理解为“灵光一闪”或“想到主意了”) 建议基于分析生成建议

安装

# Clone the repository
git clone https://github.com/odenizo/repository-analysis-mcp.git
cd repository-analysis-mcp

# Install dependencies
npm install

# Install repomix globally (optional but recommended)
npm install -g repomix

# Set up environment variables
cp .env.example .env
# Edit .env and add your OPENAI_API_KEY (optional)

使用方法

命令行界面

# Show help
node src/index.js help

# Process a single repository
node src/index.js process   [description]
node src/index.js process https://github.com/user/repo my-repo "A great MCP server"

# Process multiple repositories from JSON file
node src/index.js batch repositories.json

# Analyze all repositories and generate report
node src/index.js analyze
node src/index.js analyze --needs "web scraping tools"

# List all repositories
node src/index.js list

# List all categories
node src/index.js categories

# Get all tools
node src/index.js tools

# Get report for specific category
node src/index.js category web-scraping

GitHub 工作流

过程存储库

这个(或:该) process-repositories.yml 工作流可以被触发:

  • 手动地使用 workflow_dispatch 处理单个仓库
  • 按计划进行每周运行一次以处理来自(某处)的存储库 repositories.json
  • 在推进中自动运行于 repositories.json 已更新

要使用手动触发器:

  1. 在GitHub中转到“Actions”选项卡
  2. 选择“处理和分析存储库”
  3. 点击“运行工作流”
  4. 输入仓库详细信息

比较仓库

这个 compare-repositories.yml 工作流程:

  • 手动地比较特定类别中的存储库
  • 按计划进行每月运行以生成对比报告

配置

repositories.json

创建一个 repositories.json 根目录中包含要处理的存储库的文件:

[
  {
    "name": "mcp-server-example",
    "url": "https://github.com/user/mcp-server",
    "description": "An example MCP server"
  }
]

repositories.json.example 作为模板。

建筑学

组件

  1. 数据库层 (src/database/db.js)

- 包含仓库、工具、类别、分析结果和比较等表的SQLite数据库 - 所有实体的CRUD操作

  1. Repomix处理器 (src/utils/repomix.js)

- 克隆仓库并生成repomix输出 - 如果 repomix 不可用,则回退到基本输出生成

  1. LLM 分析器 (src/analysis/llm-analyzer.js)

- 使用OpenAI API进行分类 - 从存储库内容中提取工具 - 类别内的仓库比较 - 推荐生成 - API不可用时的模拟模式

  1. 处理流水线 (src/process-repository.js)

- 单一仓库的端到端处理 - 所有组件的集成

  1. 分析流程 (src/analyze-repositories.js)

- 多仓库分析 - 基于类别的比较 - 报告生成

  1. 主要应用 (src/index.js

- 命令行界面(CLI) - 批处理 - 编曲;管弦乐编排

数据库模式

仓库

  • ID,名称,URL,描述,处理时间,repomix输出,类别,元数据

工具

  • id(标识符)、repository_id(仓库标识符)、name(名称)、description(描述)、type(类型)、metadata(元数据)

类别

  • id,名称,描述,创建时间

分析结果

  • ID,仓库ID,分析类型,结果,分数,分析时间

比较

  • ID,类别,仓库ID列表,对比结果,建议,对比时间

类别

该系统将存储库分类为:

  • web-scraping网页抓取和爬虫工具
  • data-processing数据转换和ETL(抽取、转换、加载)
  • api-integrationREST/GraphQL API客户端
  • database数据库集成
  • file-management文件系统操作
  • cloud-servicesAWS、Azure、GCP 集成
  • ai-ml人工智能和机器学习工具
  • developer-tools开发实用工具
  • communication消息和通知
  • other未分类

示例

处理一个存储库

node src/process-repository.js \
  https://github.com/modelcontextprotocol/servers \
  mcp-servers \
  "Official MCP servers collection"

输出:

================================================================================
Processing repository: mcp-servers
URL: https://github.com/modelcontextprotocol/servers
================================================================================

Step 1: Adding repository to database...
✓ Repository added with ID: 1

Step 2: Processing with repomix...
✓ Repomix output saved (15234 bytes)

Step 3: Categorizing repository with LLM...
✓ Category: developer-tools

Step 4: Extracting tools and functionalities...
✓ Extracted 12 tools

Step 5: Storing analysis results...
✓ Analysis complete

================================================================================
Successfully processed: mcp-servers
================================================================================

分析所有仓库

node src/analyze-repositories.js

这将会:

  1. 按类别分组存储库
  2. 比较每个类别内的仓库
  3. 生成推荐建议
  4. 输出一份全面的分析报告

程序化使用

import { RepositoryAnalysisMCP } from './src/index.js';

const app = new RepositoryAnalysisMCP();

// Process a repository
await app.process(
  'https://github.com/user/repo',
  'my-repo',
  'Description'
);

// Process multiple repositories
await app.processBatch([
  { name: 'repo1', url: 'https://github.com/user/repo1' },
  { name: 'repo2', url: 'https://github.com/user/repo2' }
]);

// Analyze all repositories
const analysis = await app.analyze({ userNeeds: 'web scraping' });

// Get tools list
const tools = await app.getAllTools();

// Close database connection
app.close();

GitHub 密钥(或:GitHub 秘密)

在GitHub工作流中使用LLM进行分析时,请添加以下秘密:

  • OPENAI_API_KEY你的OpenAI API密钥

如果没有这个密钥,系统将使用基于关键词的分析以模拟模式运行。

人工制品;遗物;文物

工作流生成以下工件:

  • 存储库数据库包含所有数据的SQLite数据库
  • repomix-outputs 翻译为中文是“repomix 输出”生成的repomix输出文件
  • 分析报告综合分析报告
  • 对比报告类别对比报告

工件保留90天。

发展

项目结构

repository-analysis-mcp/
├── .github/
│   └── workflows/           # GitHub workflow definitions
├── src/
│   ├── analysis/            # LLM analysis components
│   ├── database/            # Database layer
│   ├── utils/               # Utility functions
│   ├── index.js             # Main application
│   ├── process-repository.js # Single repository processor
│   └── analyze-repositories.js # Multi-repository analyzer
├── repositories.json        # List of repositories to process
├── package.json
└── README.md

添加新功能

  1. 新的分析类型添加方法到 LLMAnalyzer 班级;类别
  2. 新数据库表更新 RepositoryDatabase.initSchema()
  3. 新工作流程创建新的工作流程于 .github/workflows/

故障排除

未找到Repomix

如果未安装repomix,系统将生成基本输出。安装方法如下:

npm install -g repomix

OpenAI API错误

如果你没有OpenAI API密钥,系统将使用模拟模式。要启用完整的LLM功能:

  1. 从https://platform.openai.com/获取API密钥
  2. 将其添加到 .env 或者 GitHub 密钥

数据库被锁定

如果您遇到数据库锁定错误,请确保没有其他进程正在使用该数据库:

# Check for locks
lsof repositories.db

# If needed, remove the database and reprocess
rm repositories.db

贡献

欢迎投稿!请:

  1. 克隆该仓库
  2. 创建一个特性分支
  3. 进行你的更改
  4. 提交拉取请求

许可证

ISC(互联网服务提供商)

致谢

目录标签

目录标签

自动化处理JavaScript数据分析仓库分析本地部署MCP工具LLM工作流SQLite数据库

接入字段

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

未说明

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

none

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明none部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP