일반 소개
openapi-mcp-server는 OpenAPI v3.1 호환 API를 AI가 사용할 수 있는 리소스로 변환하도록 설계된 오픈 소스 도구입니다. janwilmake가 유지 관리하며 모델 컨텍스트 프로토콜(MCP) 프로토콜을 기반으로 개발되었습니다. 이 프로젝트의 핵심 기능은 개발자가 API 프록시 역할을 하여 Claude 데스크톱과 같은 도구는 API와 직접 상호 작용합니다. 이 도구는 API를 빠르게 통합해야 하는 개발자와 AI 엔지니어에게 특히 적합합니다. 간단하고 직관적으로 설계되었으며, GitHub에서 오픈소스로 제공되어 누구나 무료로 코드를 사용하거나 기여할 수 있습니다.

기능 목록
- API에서 MCP 프록시로: OpenAPI 지정 엔드포인트를 Claude에서 사용 가능한 도구로 변환합니다.
- 여러 형식 지원API를 OpenAI, Anthropic 또는 MCP 도구 형식.
- 명령줄 작업API에 대한 프로그래밍 호출을 용이하게 하는 CLI 도구를 제공합니다.
- 샘플 서버사용자가 빠르게 시작할 수 있도록 펫스토어 API 예제가 내장되어 있습니다.
- 오픈 소스 및 무료이 코드는 공개적으로 사용 가능하며 사용자가 자유롭게 수정하고 확장할 수 있습니다.
도움말 사용
openapi-mcp-server는 복잡한 설치가 필요하지 않으며, GitHub에서 소스 코드를 다운로드하여 실행하기만 하면 됩니다. 자세한 단계는 다음과 같습니다.
설치 및 운영
- 환경 준비하기
컴퓨터에 Node.js와 pnpm이 설치되어 있는지 확인합니다(권장). 다음 명령으로 확인할 수 있습니다:
node -v
pnpm -v
그렇지 않은 경우 다음을 방문하세요. https://nodejs.org
노래로 응답 https://pnpm.io
다운로드하여 설치합니다.
2. 클론 창고
터미널을 열고 입력합니다:
git clone https://github.com/janwilmake/openapi-mcp-server.git
cd openapi-mcp-server
- 종속성 설치
프로젝트 디렉토리에서 실행합니다:
pnpm install
- 프로젝트 빌드
제대로 작동하도록 코드를 작성하세요:
pnpm build
- 글로벌 명령 연결
명령줄 도구를 사용할 수 있도록 설정합니다:
npm link
Claude 데스크톱 구성
- 구성 파일 편집
일반적으로 다음에서 클로드 데스크톱의 구성 파일을 찾습니다:
- Windows.
%AppData%\Claude\claude_desktop_config.json
- Mac.
~/Library/Application Support/Claude/claude_desktop_config.json
그렇지 않은 경우 새 파일을 만듭니다.
- MCP 서버 추가
구성 파일에 다음을 추가합니다:
{
"mcpServers": {
"petstore-api": {
"command": "npx",
"args": ["openapi-mcp-server", "/path/to/petstore-openapi.json"]
}
}
}
최고 사령관(군) /path/to/petstore-openapi.json
이 경로를 프로젝트의 examples/petstore-openapi.json
.
3. Claude 데스크톱 시작
클로드 데스크톱을 실행하면 이 서버가 자동으로 로드됩니다.
CLI로 API 호출하기
- OpenAPI 파일 준비하기
다음과 같이 대상 API에 대한 OpenAPI v3.1 JSON 파일이 있는지 확인하세요.petstore-openapi.json
. - 명령 실행
터미널에 입력합니다:
npx openapi-mcp-server /path/to/your-openapi.json
그러면 프록시 서버가 시작됩니다.
3. 펫스토어 테스트 예시
이 프로젝트는 펫스토어 API 예제와 함께 제공됩니다. 실행해 보세요:
npx openapi-mcp-server examples/petstore-openapi.json
그런 다음 클로드 데스크톱에서 "ID로 애완동물 가져오기"를 입력하는 등의 방법으로 애완동물과 상호작용합니다.
프로그래매틱 전환 API
- 모듈 가져오기
Node.js 프로젝트에 코드를 추가합니다:
import { OpenAPIToMCPConverter } from 'openapi-mcp-server';
- 전환 API
다음 코드를 사용하여 OpenAPI를 도구 형식으로 변환하세요:
const converter = new OpenAPIToMCPConverter(openApiSpec); // openApiSpec 是你的 JSON 数据
const openAiTools = await converter.convertToOpenAITools(); // 转为 OpenAI 格式
const mcpTools = converter.convertToMCPTools(); // 转为 MCP 格式
- API 호출하기
HttpClient를 사용하여 요청을 실행합니다:
import { HttpClient } from 'openapi-mcp-server';
const httpClient = new HttpClient({ baseUrl: 'https://api.example.com' }, openApiSpec);
const response = await httpClient.executeOperation(mcpTools.openApiLookup['getPetById'], { petId: 123 });
운영 제안
- 문제 디버깅클로드가 충돌하는 경우, OpenAPI 파일에서
https://editor.swagger.io
유효성 검사. - 코드 업데이트코드를 수정한 후 다음을 실행합니다.
pnpm build
를 클릭하고 클로드 데스크톱을 다시 시작합니다. - 학습 예제: 보기
examples/README.md
펫스토어 서버의 CRUD 작업을 이해합니다.
애플리케이션 시나리오
- 빠른 API 통합
한 개발자가 프로젝트에 반려동물 관리 기능을 추가하려고 합니다. 그는 수동으로 코드를 작성하는 시간을 절약하기 위해 openapi-mcp-server로 Petstore API를 로드하고 Claude에서 직접 엔드포인트를 테스트했습니다. - AI 지원 개발
AI 엔지니어는 API 호출 코드를 생성해야 합니다. 그는 도구를 사용하여 OpenAPI 파일을 변환하고 Claude를 사용하여 전체 요청 코드를 생성합니다. - 교육 데모
교사는 펫스토어 예시를 사용하여 학생들에게 API를 AI 도구에 연결하고 API 상호 작용에 대해 배우는 방법을 보여줍니다.
QA
- 결제해야 하나요?
이 프로젝트는 완전히 오픈 소스이며 무료이며 GitHub에서 호스팅됩니다. - 어떤 API가 지원되나요?
GitHub, Cloudflare 등 OpenAPI v3.1 사양의 일부인 모든 API를 사용할 수 있습니다. - 클로드가 인식하지 못하면 어떻게 하나요?
구성 파일 경로와 OpenAPI 파일이 올바른지 확인하고 서버가 가동 중인지 확인합니다.
© 저작권 정책
이 글은 저작권이 있으며 무단으로 복제해서는 안 됩니다.
관련 문서
댓글 없음...