oss-mcp
Multi-Repo Architecture Hub (oss-mcp)
Расширяемый маршрутизатор мультирепозиторной архитектуры и сервер Model Context Protocol (MCP), написанный на Node.js (ESM). Предназначен для обнаружения зависимостей между репозиториями, топологической маршрутизации и пакетной интеграции AST-индексации с codebase-memory-mcp.
⚡ Быстрый старт (настройка за 3 минуты)
1. Предварительные требования
Убедитесь, что у вас установлены Node.js (>= 18) и codebase-memory-mcp глобально:
# Install codebase-memory-mcp globally
npm install -g codebase-memory-mcp@latest2. Клонирование и установка зависимостей
git clone https://github.com/Abbilville/oss-mcp oss-mcp
cd oss-mcp
npm install3. Инициализация любого мультирепозиторного рабочего пространства
Укажите oss-mcp путь к каталогу ваших микросервисов. Он просканирует репозитории, сгенерирует registry.yaml и автоматически выполнит пакетную индексацию кода в графы знаний AST:
npx oss-mcp setup /path/to/your/microservices-workspaceRelated MCP server: Codebase Contextifier 9000
🚀 Ключевые возможности
Динамическое обнаружение нескольких проектов: Разрешает манифесты репозиториев (
registry.yaml) динамически из параметров CLI, центральных каталогов (data/projects.yaml), переменных окружения или иерархии рабочего пространства.Автоматический сканер структуры и зависимостей: Рекурсивно проверяет деревья каталогов в различных технологических стеках (Node.js, Express, React, Python, FastAPI, Java, Go), обнаруживая точки входа, порты и межсервисные HTTP/событийные связи.
Автоматическая пакетная AST-индексация: Оркестрирует индексацию графов AST через
codebase-memory-mcpдля всех сервисов в манифесте проекта одной командой.Структурированный MCP-интерфейс: Предоставляет стандартизированные инструменты для AI-агентов, позволяющие запрашивать межсервисные архитектуры, прослеживать сквозные жизненные циклы запросов и перемещаться по границам нескольких сервисов.
📁 Работа с каталогом data/
Каталог data/ обеспечивает централизованное управление проектами для сред, в которых размещено несколько различных проектов микросервисов или систем.
data/
├── projects.yaml # Central multi-project catalog (routes project IDs to manifests)
├── registry.yaml # Default / sample repository manifest and service relationships
├── projects.yaml.example # Reference template for projects catalog
└── registry.yaml.example # Reference template for repository manifests1. Центральный каталог проектов (data/projects.yaml)
Если вы управляете несколькими проектами на своей машине, зарегистрируйте их в data/projects.yaml (или ~/.config/oss-mcp/projects.yaml). Это позволит вам обращаться к любому проекту по идентификатору (например, npx oss-mcp index --project ecommerce):
# data/projects.yaml
projects:
ecommerce:
name: "E-Commerce Microservices"
description: "Frontend SPA, API Gateway, Auth Service, and Order Service"
registry_path: "./data/ecommerce_registry.yaml"
root_path: "/path/to/ecommerce/workspace"
analytics:
name: "Analytics Platform"
description: "Event streaming and reporting backend"
registry_path: "/path/to/analytics/registry.yaml"
root_path: "/path/to/analytics/workspace"2. Манифест репозитория (registry.yaml)
Каждый проект имеет registry.yaml, определяющий его отдельные сервисы, метаданные, точки входа, порты и связи.
# registry.yaml
repos:
- name: backend-service
owner: backend-team
local_path: ./services/backend-service
description: "REST API server handling auth, database persistence, and business logic"
tech_stack:
- Node.js
- Express
- PostgreSQL
- Redis
- JWT
entry_point: src/server.js
port: 4000
- name: web-frontend
owner: frontend-team
local_path: ./services/web-frontend
description: "Customer SPA built with React and TypeScript"
tech_stack:
- React
- TypeScript
- Axios
entry_point: src/index.tsx
port: 3000
relationships:
- source: web-frontend
target: backend-service
type: api_call
description: "Frontend makes REST API calls to backend endpoints for data and authentication."
- source: web-frontend
target: backend-service
type: depends_on
description: "Frontend depends on backend JWT session management and RBAC permissions."Поддерживаемые типы связей
api_call: HTTP / REST / GraphQL-вызов от источника к цели.depends_on: Архитектурная зависимость или зависимость жизненного цикла (например, общая сессия, контрактная зависимость).event_stream: Асинхронный обмен сообщениями (Kafka, RabbitMQ, Redis Pub/Sub, AWS EventBridge).shared_resource: Общая схема базы данных, экземпляр кэша или хранилище.submodule: Ссылка на Git-подмодуль или пакет в монорепозитории.
🎯 Иерархия разрешения манифеста
При выполнении инструментов или команд CLI oss-mcp определяет, какой реестр загрузить, используя резервный механизм из 4 уровней:
1. Explicit Flag / Parameter (--project "ecommerce" or --registry "/path/to/registry.yaml")
└── 2. Central Projects Catalog (data/projects.yaml or ~/.config/oss-mcp/projects.yaml)
└── 3. Environment Variable (export MCP_REGISTRY_PATH="/path/to/registry.yaml")
└── 4. Workspace Traversal (searching current directory & parent folders for registry.yaml)💻 Справочник CLI
Действие | Команда | Описание |
Онбординг рабочего пространства |
| Сканирует рабочее пространство, записывает |
Сканирование каталога |
| Сканирует каталоги, определяет точки входа/порты и выводит манифест. |
Пакетная индексация |
| Индексирует все репозитории манифеста в |
Список сервисов |
| Отображает сводную таблицу сервисов, портов и зависимостей. |
Список проектов |
| Показывает все зарегистрированные проекты и статус графов индексации. |
Вывод из эксплуатации |
| Очищает индексированные графы и удаляет проект из каталога. |
Запуск сервера |
| Запускает MCP-сервер на stdio-транспорте. |
🤖 Интеграция с AI-ассистентами и IDE
oss-mcp предоставляет архитектурный мост, работающий в связке с codebase-memory-mcp.
┌─────────────────────────────────────────────────────────────┐
│ AI Agent Layer │
│ (Antigravity / Claude Code / Cursor / Codex / Roo Code) │
└──────────────────────────────┬──────────────────────────────┘
│
┌───────────────┴───────────────┐
▼ ▼
┌───────────────────────────┐ ┌───────────────────────────┐
│ oss-mcp │ │ codebase-memory-mcp │
│ │ │ │
│ • Multi-repo discovery │ │ • Deep AST function index │
│ • Service topology & port │ │ • Class & symbol search │
│ • Cross-repo relationships│ │ • Call graph path tracing │
│ • Batch index management │ │ • Source code snippets │
└───────────────────────────┘ └───────────────────────────┘1. 🪐 Google Antigravity (AGY)
A. Настройка MCP-сервера
Добавьте oss-mcp в файл .agents/mcp_config.json вашего проекта или глобально в ~/.gemini/config/mcp_config.json:
{
"mcpServers": {
"oss-mcp": {
"command": "node",
"args": ["/absolute/path/to/oss-mcp/src/server.js"]
}
}
}B. Установка навыков и правил рабочего пространства
Скопируйте или создайте символическую ссылку на каталог
.agents/skills/в каталог.agents/skills/вашего активного проекта (или глобальный~/.gemini/config/skills/).Включите правило маршрутизации мультирепозиторных запросов в
.agents/AGENTS.md:# Multi-Repo Routing For any question spanning multiple services or repositories, use the `oss-mcp` MCP server to discover topology with `get_architecture_overview()`, then query `codebase-memory-mcp` scoped to relevant repositories.
C. Слэш-команды Antigravity и использование
Вводите эти команды непосредственно в чате Antigravity:
/oss setup /path/to/microservices— Автоматическое сканирование рабочего пространства, определение стеков и портов, генерацияregistry.yamlи пакетная индексация в графы AST./oss status— Просмотр таблицы зарегистрированных сервисов, портов и количества узлов/ребер графа./oss trace checkout flow from UI to backend— Прослеживание сквозных межсервисных жизненных циклов с диаграммами последовательности./oss remove <project_id>— Безопасное удаление проекта и очистка графов знаний.
2. ⚡ Claude Code (CLI) и Claude Desktop
A. Настройка Claude Code CLI
Добавьте MCP-сервер напрямую с помощью команды claude mcp add:
# Add oss-mcp MCP server
claude mcp add oss-mcp node /absolute/path/to/oss-mcp/src/server.jsИли добавьте в файл .claude.json / settings.json вашего проекта:
{
"mcpServers": {
"oss-mcp": {
"command": "node",
"args": ["/absolute/path/to/oss-mcp/src/server.js"]
}
}
}B. Настройка Claude Desktop
Откройте файл конфигурации Claude Desktop:
Windows:
%APPDATA%\Claude\claude_desktop_config.jsonmacOS:
~/Library/Application Support/Claude/claude_desktop_config.json
Добавьте определение сервера:
{
"mcpServers": {
"oss-mcp": {
"command": "node",
"args": ["C:/Telkom/oss-mcp/src/server.js"]
}
}
}C. Инструкция по рабочему процессу Claude (CLAUDE.md)
Добавьте эту рекомендацию в файл CLAUDE.md вашего проекта, чтобы научить Claude маршрутизировать мультирепозиторные запросы:
## Multi-Repo Architecture Navigation
When answering questions about cross-service interactions, microservices, or APIs:
1. Call `oss-mcp` tool `get_architecture_overview()` to locate caller/callee services and port contracts.
2. Query `codebase-memory-mcp` (`search_graph`, `trace_path`, `get_code_snippet`) scoped by repository name.
3. Synthesize the end-to-end flow with a Mermaid sequence diagram.D. Примеры чат-запросов в Claude
"Отсканируй папку
../servicesи инициализируй мультирепозиторный реестр.""Покажи все зарегистрированные микросервисы и проверь, индексированы ли их графы AST."
"Проследи поток аутентификации JWT от входа на фронтенде до проверки токена на бэкенде."
3. 🎯 Cursor IDE
A. Добавление MCP-сервера в Cursor
Перейдите в Cursor Settings $\rightarrow$ Features $\rightarrow$ MCP.
Нажмите + Add New MCP Server.
Заполните:
Name:
oss-mcpType:
commandCommand:
node /absolute/path/to/oss-mcp/src/server.js
Нажмите Save и проверьте зеленую точку статуса.
B. Правила Cursor (.cursorrules или .cursor/rules/multi-repo.mdc)
Создайте файл правил в вашем рабочем пространстве:
---
description: Multi-repository architecture navigation rules
globs: *
---
You have access to the `oss-mcp` MCP server.
When the user asks about multi-service architecture or cross-repo communication:
1. Call `get_architecture_overview` to understand service topologies and ports.
2. Trace API calls and dependencies between services.
3. Provide Mermaid sequence diagrams for all cross-service workflows.C. Примеры чат-запросов в Cursor
@oss-mcp Какие сервисы взаимодействуют с платежным бэкендом?@oss-mcp Отсканируй это мультирепозиторное рабочее пространство и сгенерируй registry.yamlКак фронтенд-клиент получает товары из API каталога? Проследи маршрут и обработчик.
4. 🧩 Roo Code / Cline / Codex (расширения VS Code)
A. Настройка параметров MCP
Откройте cline_mcp_settings.json (или roo_cline_mcp_settings.json):
{
"mcpServers": {
"oss-mcp": {
"command": "node",
"args": ["/absolute/path/to/oss-mcp/src/server.js"],
"disabled": false,
"autoApprove": [
"get_architecture_overview",
"get_repo_details",
"get_related_repos",
"list_projects"
]
}
}
}B. Пользовательские инструкции
Добавьте в Custom Instructions в настройках Cline / Roo Code:
When working across multiple repositories, use the `oss-mcp` MCP tools to inspect service dependencies and ports before making code modifications or answering architectural questions.🛠️ Подробный разбор навыков рабочего пространства
Навыки в .agents/skills/ инкапсулируют полные сквозные мультирепозиторные рабочие процессы:
Навык | Основной триггер | Выполняемый рабочий процесс |
|
| Автономный главный навигатор: Проверяет статус индексации $\rightarrow$ автоматически сканирует и выполняет пакетную индексацию отсутствующих репозиториев $\rightarrow$ загружает топологию $\rightarrow$ выполняет целевые AST-запросы $\rightarrow$ синтезирует диаграммы последовательности. |
| Запрос о межсервисном потоке | Маршрутизатор запросов: Запрашивает |
|
| Мастер онбординга: Рекурсивно сканирует каталог $\rightarrow$ определяет технологические стеки и порты $\rightarrow$ записывает |
|
| Диагностика: Запрашивает каталог проектов и статистику узлов/ребер индексированных графов $\rightarrow$ отображает сводную таблицу статуса. |
|
| Очистка: Выводит проект из эксплуатации в каталоге $\rightarrow$ очищает базы данных графов знаний $\rightarrow$ удаляет манифест по запросу. |
🔌 Справочник MCP-инструментов
Инструмент | Параметры | Выходные данные | Описание |
|
| JSON | Возвращает полный манифест репозитория, метаданные сервисов и граф связей. |
|
| JSON | Возвращает подробную информацию об одном репозитории, включая порты, стек и прямые соединения. |
|
| JSON | Возвращает связанные зависимости ( |
| Нет | JSON | Перечисляет проекты каталога и статистику индексированных баз данных графов |
|
| JSON | Сканирует каталог, определяет зависимости и генерирует файл манифеста. |
|
| JSON | Выполняет пакетную индексацию репозиториев в |
|
| JSON | Очищает индексированные графы и удаляет проект из каталога. |
Лицензия
Распространяется под лицензией MIT.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables semantic code search across multiple repositories using natural language queries. Provides intelligent code discovery, symbol lookups, and cross-repo dependency analysis for AI coding agents.MIT
- AlicenseNot gradedqualityDmaintenanceEnables semantic code search across multiple repositories using AST-aware chunking and relationship tracking. Supports local LLM embeddings, real-time indexing, and cross-codebase dependency analysis through vector and graph databases.3MIT
- AlicenseNot gradedqualityBmaintenanceProvides AI coding assistants with deep, semantic understanding of local codebases via AST-aware chunking, cross-repo symbol graphs, and architectural memory, enabling context-aware code search and dependency tracing.10MIT
- AlicenseAqualityCmaintenanceEnables AI agents to map cross-repository dependencies, detect breaking changes in API contracts, and assess impact across services.10MIT
Related MCP Connectors
Code intelligence for coding agents: semantic, AST, graph, and full-text search. 279+ languages.
Give your AI agent a persistent map of your project's structure, dependencies, and bugs.
AI Agent with Architectural Memory. Impact analysis (free), tests and code from the graph (pro).
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Abbilville/oss-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server