Skip to main content
Glama
jphittell

Catalog MCP

by jphittell

Catalog MCP

로컬 비즈니스 객체 수집 저장소에서 Oracle HDL 비즈니스 객체 메타데이터를 탐색하기 위한 독립형 읽기 전용 MCP 서버입니다.

카탈로그 인덱스는 attributes/*.json을 진실의 원천(source of truth)으로 취급합니다. manifest.json은 인덱싱된 속성 문서와 일치할 때만 사용되는 선택적 보조 메타데이터입니다.

로컬 설정

  1. Python 3.10+로 가상 환경을 생성합니다.

  2. 종속성을 설치합니다.

  3. 기본 형제 경로를 사용하지 않으려면 CATALOG_MCP_DATA_ROOT를 비즈니스 객체 수집 저장소로 지정합니다.

'/Users/justin/.cache/codex-runtimes/codex-primary-runtime/dependencies/python/bin/python3' -m venv .venv
.venv/bin/python -m pip install -e '.[dev]'
cp .env.example .env

선택적으로 서버 범위를 하나 이상의 정확한 비즈니스 객체로 제한할 수 있습니다:

CATALOG_MCP_ALLOWED_OBJECTS=Worker

또는:

CATALOG_MCP_ALLOWED_OBJECTS=Worker,Location

서버 실행

.venv/bin/python -m catalog_mcp.server

서버는 기본적으로 stdio를 통해 실행됩니다.

또한 체크인된 런처를 사용할 수 있으며, 이는 CATALOG_MCP_DATA_ROOT를 이 노트북의 형제 비즈니스 객체 저장소로 기본 설정합니다:

./scripts/run_catalog_mcp.sh

Codex에 등록

로컬 Codex MCP 구성에 서버를 추가합니다:

codex mcp add businessObjectCatalog -- /Users/justin/Documents/Codex/Projects/MCP/scripts/run_catalog_mcp.sh

등록을 확인합니다:

codex mcp list
codex mcp get businessObjectCatalog

테스트

.venv/bin/pytest

엔드투엔드 압력 매트릭스를 실행합니다:

.venv/bin/python scripts/pressure_test_catalog.py

공개 MCP 인터페이스

  • 도구:

    • catalog_health

    • get_catalog_stats

    • list_catalog_entries

    • get_catalog_entry

    • get_catalog_component

    • get_catalog_attribute

    • search_catalog

    • search_catalog_attributes

    • get_related_entries

    • refresh_catalog_index

  • 리소스:

    • catalog://summary

    • catalog://product-areas

    • catalog://stats

    • catalog://entries/{entry_id}

정확한 범위 검색

에이전트가 이미 객체, 구성 요소 또는 필드를 알고 있는 경우, 광범위한 검색보다 정확한 검색을 우선시하십시오.

예시:

{"identifier":"Worker"}
{"identifier":"Worker","component_name":"Worker"}
{"identifier":"Worker","component_name":"Worker","attribute_name":"WorkerNumber"}

Related MCP Connectors