Skip to main content
Glama

멀티-레포 아키텍처 허브 (oss-mcp)

Node.js Version Protocol Package Manager License

Node.js(ESM)로 작성된 확장 가능한 멀티-레포 아키텍처 라우터 및 Model Context Protocol(MCP) 서버입니다. codebase-memory-mcp와의 통합을 위한 교차-저장소 의존성 탐색, 토폴로지 라우팅, 배치 AST 인덱싱을 위해 설계되었습니다.


⚡ 빠른 시작 (3분 설정)

1. 사전 요구사항

Node.js (>= 18)codebase-memory-mcp가 전역으로 설치되어 있는지 확인하세요:

# Install codebase-memory-mcp globally
npm install -g codebase-memory-mcp@latest

2. 클론 및 의존성 설치

git clone https://github.com/Abbilville/oss-mcp oss-mcp
cd oss-mcp
npm install

3. 멀티-레포 워크스페이스 초기화

oss-mcp를 마이크로서비스 디렉토리에 지정하세요. 저장소를 스캔하고 registry.yaml을 생성한 후, 코드를 AST 지식 그래프로 자동 배치 인덱싱합니다:

npx oss-mcp setup /path/to/your/microservices-workspace

Related MCP server: Codebase Contextifier 9000

🚀 주요 기능

  1. 멀티-프로젝트 동적 탐색: CLI 파라미터, 중앙 카탈로그(data/projects.yaml), 환경 변수 또는 워크스페이스 계층 구조에서 저장소 매니페스트(registry.yaml)를 동적으로 해석합니다.

  2. 자동 구조 및 의존성 스캐너: 여러 기술 스택(Node.js, Express, React, Python, FastAPI, Java, Go)에 걸쳐 디렉토리 트리를 재귀적으로 검사하여 진입점, 포트, 서비스 간 HTTP/이벤트 관계를 감지합니다.

  3. 자동 배치 AST 인덱싱: 단일 명령으로 프로젝트 매니페스트의 모든 서비스에 대해 codebase-memory-mcp AST 그래프 인덱싱을 오케스트레이션합니다.

  4. 구조화된 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 manifests

1. 중앙 프로젝트 카탈로그 (data/projects.yaml)

머신에서 여러 프로젝트를 관리하는 경우 data/projects.yaml(또는 ~/.config/oss-mcp/projects.yaml)에 등록하세요. 이렇게 하면 ID로 모든 프로젝트를 대상으로 지정할 수 있습니다(예: 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 참조

작업

명령

설명

워크스페이스 온보딩

npx oss-mcp setup /path/to/workspace

워크스페이스를 스캔하고 registry.yaml을 작성한 후 모든 서비스를 배치 인덱싱합니다.

디렉토리 스캔

npx oss-mcp scan /path/to/workspace -o ./registry.yaml

디렉토리를 스캔하고 진입점/포트를 추론하여 매니페스트를 출력합니다.

배치 인덱싱

npx oss-mcp index --registry ./registry.yaml

모든 매니페스트 저장소를 codebase-memory-mcp에 인덱싱합니다.

서비스 목록

npx oss-mcp list --registry ./registry.yaml

서비스, 포트 및 의존성의 요약 테이블을 표시합니다.

프로젝트 목록

npx oss-mcp projects

등록된 모든 프로젝트와 인덱스 그래프 상태를 표시합니다.

서비스 해제

npx oss-mcp remove <project_id_or_path> [--delete-manifest]

인덱싱된 그래프를 제거하고 카탈로그에서 프로젝트 등록을 해제합니다.

서버 시작

npx oss-mcp run

stdio 전송으로 MCP 서버를 실행합니다.


🤖 AI 어시스턴트 및 IDE 통합

oss-mcpcodebase-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 서버 구성

프로젝트의 .agents/mcp_config.json 또는 전역 ~/.gemini/config/mcp_config.jsonoss-mcp를 추가하세요:

{
  "mcpServers": {
    "oss-mcp": {
      "command": "node",
      "args": ["/absolute/path/to/oss-mcp/src/server.js"]
    }
  }
}

B. 워크스페이스 스킬 및 규칙 설치

  1. .agents/skills/ 디렉토리를 활성 프로젝트의 .agents/skills/(또는 전역 ~/.gemini/config/skills/)에 복사하거나 심볼릭 링크하세요.

  2. .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 설정

claude mcp add 명령을 사용하여 MCP 서버를 직접 추가하세요:

# 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.json

  • macOS: ~/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. Cursor에서 MCP 서버 추가

  1. Cursor 설정 $\rightarrow$ 기능 $\rightarrow$ MCP로 이동하세요.

  2. + 새 MCP 서버 추가를 클릭하세요.

  3. 다음을 입력하세요:

    • 이름: oss-mcp

    • 유형: command

    • 명령: node /absolute/path/to/oss-mcp/src/server.js

  4. 저장을 클릭하고 녹색 상태 점을 확인하세요.

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. 사용자 지정 지침

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/의 스킬은 완전한 종단 간 멀티-레포 워크플로우를 캡슐화합니다:

스킬

기본 트리거

수행 워크플로우

oss

/oss <query> 또는 "교차-레포 흐름 추적..."

자율 마스터 내비게이터: 인덱스 상태 확인 $\rightarrow$ 누락된 저장소 자동 스캔 및 배치 인덱싱 $\rightarrow$ 토폴로지 로드 $\rightarrow$ 범위 지정 AST 쿼리 실행 $\rightarrow$ 시퀀스 다이어그램 종합.

oss-navigator

교차-서비스 흐름 문의

쿼리 라우터: get_architecture_overview() 쿼리 $\rightarrow$ 호출자 클라이언트 추적 $\rightarrow$ 피호출자 라우트 핸들러 추적 $\rightarrow$ Mermaid 시퀀스 다이어그램 생성.

oss-onboard

/oss setup [path] 또는 "폴더 스캔..."

온보딩 마법사: 디렉토리 재귀 스캔 $\rightarrow$ 기술 스택 및 포트 감지 $\rightarrow$ registry.yaml 작성 $\rightarrow$ 배치 AST 인덱싱 트리거.

oss-status

/oss status 또는 "멀티-레포 상태 확인"

진단: 카탈로그 프로젝트 및 인덱싱된 그래프 노드/엣지 통계 쿼리 $\rightarrow$ 상태 요약 테이블 렌더링.

oss-remove

/oss remove <project_id>

정리: 카탈로그에서 프로젝트 해제 $\rightarrow$ 지식 그래프 데이터베이스 제거 $\rightarrow$ 요청 시 매니페스트 삭제.


🔌 MCP 도구 참조

도구

매개변수

출력

설명

get_architecture_overview

project?: str

JSON

완전한 저장소 매니페스트, 서비스 메타데이터 및 관계 그래프를 반환합니다.

get_repo_details

repo_name: str, project?: str

JSON

포트, 스택 및 직접 연결을 포함한 단일 저장소의 상세 정보를 반환합니다.

get_related_repos

repo_name: str, direction?: str, project?: str

JSON

연결된 의존성(inbound, outbound 또는 all)을 반환합니다.

list_projects

없음

JSON

카탈로그 프로젝트와 인덱싱된 codebase-memory-mcp 그래프 데이터베이스 통계를 나열합니다.

scan_and_create_registry

workspace_path: str, output_file?: str

JSON

디렉토리를 스캔하고 의존성을 추론하여 매니페스트 파일을 생성합니다.

index_project_repositories

project?: str, mode?: str

JSON

저장소를 codebase-memory-mcp에 배치 인덱싱합니다.

remove_project

project: str, purge_graphs?: bool, delete_manifest?: bool

JSON

인덱싱된 그래프를 제거하고 카탈로그에서 프로젝트 등록을 해제합니다.


라이선스

MIT 라이선스에 따라 배포됩니다.

A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables 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
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables 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.
    3
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Provides 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.
    10
    MIT

View all related MCP servers

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).

View all MCP Connectors

Latest Blog Posts

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