Skip to main content
Glama

MCP-OpenAPI

OpenAPI 사양의 HTTP 메서드를 도구로 공개하는 모델 컨텍스트 프로토콜 서버입니다.

[!경고] 이것은 개념 증명이며 아직 완전히 테스트되고 문서화되지 않았습니다.

용법

각 MCP-OpenAPI 서버는 단일 OpenAPI 사양의 작업을 노출합니다. 여러 인스턴스를 실행하여 여러 사양을 노출할 수 있습니다.

이 패키지는 PyPI @ [ mcp-openapi ][pypi]에서 사용할 수 있습니다. uvx mcp-openapi --openapi-url https://httpbin.org/spec.json (sse | stdio) 사용하여 서버를 시작할 수 있습니다.

Claude 구성의 예(포트 8000에서 fastapi dev tests/todos.py 실행하는 동안):

지엑스피1

OpenAPI URL은 MCP_OPENAPI_URL 환경 변수로도 전달될 수 있습니다.

SSE로 실행하는 경우 다음을 사용하여 서버를 구성할 수 있습니다.

  • --fastmcp-sse-host - MCP 서버를 제공할 호스트

  • --fastmcp-sse-port - MCP 서버를 제공할 포트

추가적인 글로벌 옵션은 다음과 같습니다.

  • --fastmcp-debug - MCP 서버에 대한 디버그 모드를 활성화합니다.

  • --fastmcp-log-level - MCP 서버의 로그 수준

FASTMCP_ 접두사를 사용하는 환경 변수를 통해 구성할 수도 있습니다(예: FASTMCP_LOG_LEVEL=DEBUG .

작동 원리

  1. MCP-OpenAPI 서버는 OpenAPI 사양 URL로 초기화됩니다.

  2. 서버는 OpenAPI 사양을 가져와서 구문 분석하고 각 경로 작업을 도구로 등록합니다.

  3. 등록된 도구로 FastMCP 서버가 시작됩니다.

  4. 클라이언트가 도구를 요청하면 MCP 서버는 API에 HTTP 요청을 하고 응답을 반환합니다.

지원되는 OpenAPI/Swagger 버전

스웨거 2.0

오픈API 3.0

오픈API 3.1

:엑스:

:굵은 체크 표시:

:굵은 체크 표시:

이 패키지는 JSON 및 YAML 형식의 OpenAPI 3.0 및 3.1 사양을 지원합니다.

우리는 내부적으로 openapi-parser를 사용하고 있는데, 꽤 포괄적인 듯하고 외부 사양에 대한 참조를 해결하는 것을 지원합니다.

향후 구성 옵션

[!INFO] 아직 구현되지 않았습니다.

엔드포인트 제한

기본적으로 모든 엔드포인트는 도구로 노출됩니다. 노출되는 엔드포인트를 제한할 수 있습니다.

  • 경로 패턴으로,

  • HTTP 방식으로,

  • 노출할 개별 작업을 명시적으로 나열합니다.

  • OpenAPI 태그를 사용하여 경로를 선택합니다.

API 인증 처리

MCP-OpenAPI는 대상 API에 API 요청을 보냅니다. 이때 글로벌 인증 토큰을 사용할 수 있습니다.

  • --auth-token - OpenAPI 사양에 따라 사용되는 전달자 토큰 또는 base64 형식의 기본 자격 증명입니다.

다양한 인증 토큰(예: 클라이언트 사용자별)을 사용하여 요청을 할 수 있으면 좋겠지만, LLM이 토큰을 볼 수 없으면 안 됩니다. 아직은 미정입니다.

-
security - not tested
A
license - permissive license
-
quality - not tested

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/rmasters/mcp-openapi'

If you have feedback or need assistance with the MCP directory API, please join our Discord server