模型上下文协议分析系统

MCPS是一个基于Supabase的生产就绪系统,用于聚合、索引、分析和可视化来自代码仓库和社交媒体的模型上下文协议服务器,提供深度元数据提取、安全分析、健康评分和语义搜索等核心功能。

  • by wyattowalsh
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 wyattowalsh/mcps

使用说明

MCPS-模型上下文协议系统

MCP生态系统的权威情报中心。

版本: 3.3.0 | 状态: 生产就绪| 最后更新时间: 2025-11-19

概述

MCPS是一种 生产就绪,Supabase供电 从以下位置聚合、索引、分析和可视化模型上下文协议服务器的系统 代码库和社交媒体:

🚀 v3.3.0中的新功能:Supabase集成

  • ☁️ Supabase后端即服务 -身份验证、存储、实时
  • 🔐 内置身份验证 -电子邮件/密码+OAuth(GitHub、谷歌)
  • 📁 文件存储 -具有Supabase存储的CDN支持存储
  • ⚡ 实时更新 -WebSocket订阅数据更改
  • 🔒 行级安全性 -数据库级安全策略
  • 🌐 类型安全API -自动生成的TypeScript类型

代码库

  • ✅ GitHub存储库(GraphQL API)
  • ✅ NPM包(注册表+tarball检查)
  • ✅ PyPI包(JSON API+车轮分析)
  • ✅ Docker容器(注册表v2)
  • ✅ HTTP/SSE端点(MCP自检)

社交媒体和社区(第11阶段-新!🎉)

  • ✅ 红迪 帖子和讨论(PRAW API)
  • ✅ 推特/X 提及和线程(Tweepy v2)
  • ✅ 油管 教程和演示(YouTube Data API v3)
  • 📊 情感分析(VADER)
  • 🎯 质量和相关性评分
  • 🔗 通过URL提取自动链接服务器

快速开始

使用安装脚本(推荐)

# Clone and install
git clone https://github.com/your-org/mcps.git
cd mcps

# Run setup script (handles everything)
bash scripts/setup.sh

# Start development environment
bash scripts/dev.sh

手动安装

# Clone and install
git clone https://github.com/your-org/mcps.git
cd mcps
uv sync

# Set up environment
cp .env.example .env
# Edit .env and add your API keys (GITHUB_TOKEN, OPENAI_API_KEY, etc.)

# Initialize database
uv run alembic upgrade head

# Start FastAPI backend
uv run uvicorn apps.api.main:app --reload --port 8000

# In another terminal, start Next.js dashboard
cd apps/web && npm run dev

使用Docker

# Build and run with Docker Compose
docker-compose up

# Application will be available at:
# - API: http://localhost:8000
# - Web: http://localhost:3000

特性

核心能力

  • 🔍 深度元数据提取 -解析mcp.json、package.json、pyproject.toml
  • 🛡️ 证券分析 -基于AST的危险模式扫描
  • 📊 健康评分 -算法质量评估
  • 🧠 语义搜索 -用于相似性搜索的向量嵌入
  • 📈 依赖图 -完全依赖树提取
  • 💾 SQLite优先 -零延迟本地分析
  • 📦 数据导出 -Parquet、JSONL和二进制向量格式

社交媒体智能(第11阶段)

  • 📱 多平台收割 -Reddit、推特/X、YouTube
  • 😊 情感分析 -基于VADER的情绪分类
  • 🎯 内容分类 -教程、新闻、讨论、展示等。
  • 🏆 质量评分 -基于参与度的质量指标(0-100)
  • 🔗 自动链接 -将社交提及链接到代码库
  • 📊 趋势检测 -识别随时间变化的流行内容
  • 🎓 教育价值 -对视频内容的学习价值进行评分
  • 🌐 Web仪表板 -互动社交媒体浏览器 /social

文档

📚 全部文件 (或在当地建造 cd docs && make html)

关键文件:

项目结构

mcps/
├── packages/harvester/     # Core Python logic
│   ├── adapters/          # Source-specific harvesters
│   ├── analysis/          # Security & analysis modules
│   ├── core/              # Base classes
│   └── exporters/         # Data export formats
├── apps/
│   ├── api/               # FastAPI service
│   └── web/               # Next.js dashboard
├── docs/                  # Sphinx documentation
├── tests/                 # Test suite
└── alembic/               # Database migrations

发展

有用的脚本

# Setup and run
bash scripts/setup.sh      # One-time project setup
bash scripts/dev.sh        # Start development servers
bash scripts/test.sh       # Run all tests and checks
bash scripts/build.sh      # Build for production
bash scripts/backup-db.sh  # Backup SQLite database

手动开发命令

# Run tests with coverage
uv run pytest tests/ --cov=packages --cov-report=html

# Check code quality
uv run ruff check . --fix
uv run mypy packages/
uv run ruff format .

# Start servers individually
uv run uvicorn apps.api.main:app --reload      # FastAPI on :8000
cd apps/web && npm run dev                      # Next.js on :3000

# Build documentation
cd docs && make html
open _build/html/index.html

CLI命令

# Code repository harvesting
uv run python -m packages.harvester.cli ingest --strategy github --target https://github.com/owner/repo
uv run python -m packages.harvester.cli export --format parquet --destination ./exports

# Social media harvesting (NEW!)
uv run python -m packages.harvester.cli harvest-social --platform all       # All platforms
uv run python -m packages.harvester.cli harvest-social --platform reddit    # Reddit only
uv run python -m packages.harvester.cli harvest-social --platform twitter   # Twitter/X only
uv run python -m packages.harvester.cli harvest-social --platform youtube   # YouTube only

# Server operations
uv run python -m packages.harvester.cli refresh --url https://github.com/owner/repo
uv run python -m packages.harvester.cli update-health    # Recalculate health scores
uv run python -m packages.harvester.cli update-risk      # Recalculate risk levels
uv run python -m packages.harvester.cli prune --days 180 # Remove stale servers
uv run python -m packages.harvester.cli stats            # Show database statistics

贡献

我们欢迎捐款!请查看我们的 贡献指南 详细指南。

报告问题或请求功能

开发工作流程

  1. 分叉存储库
  2. 创建要素分支(git checkout -b feature/your-feature)
  3. 进行更改并提交(git commit -am 'Add feature')
  4. 运行测试: bash scripts/test.sh
  5. 构建并验证: bash scripts/build.sh
  6. 推你的叉子(git push origin feature/your-feature)
  7. 打开一个带有清晰描述的拉取请求

看 .github/PULL_REQUEST_TEMPLATE.md 公关指南。

许可证

MIT许可证-请参阅 许可证 文件以获取详细信息。

资源

文档

社区

项目文件

技术栈

组件 技术 目的
后端API FastAPI REST API和异步请求处理
Web仪表板 Next.js 基于React的现代用户界面
数据库 SQLite 轻量级本地数据存储
ORM SQLModel 类型安全的数据库交互
CLI Typer 用户友好的命令行界面
测试 Pytest 综合测试套件
Linting Ruff 快速Python Linting和格式化
类型检查 Mypy 静态类型分析
文档 Sphinx 专业文档生成
部署 Docker 容器化部署

致谢

  • Anthropic -用于创建模型上下文协议
  • SQL模型 -用于与Pydantic集成的优雅ORM
  • 拉夫 -用于快速Python linting
  • 紫外线 -用于快速、可靠的Python打包
  • 快速API -适用于现代Python web框架
  • Next.js -React框架和部署选项

精心构建AI Agent生态系统

制作:心:| MIT许可证 | 安全策略