MCP서버를 파이썬으로 직접 만들어보자. 사례는 원래 스터디한 날 쓰는 거임?

소개

시도하고자 했던 것과 그 이유를 알려주세요.

일요일 아침부터 진행한 번개같은 사례를 듣고, 62명의 참가자들이 모두 사례를 쓰기로 했다.

스크린샷도 찍어놓으심.

요 며칠전부터 MCP에 대한 내용이 핫했는 데, 어제 오늘 MCP스터디를 듣고 해보고 싶은 게 있었습니다.

저는 아주 아주 작은 기능을 하는 API서버가 많은 데, 이걸 MCP와 엮어서 클로드 같은 호스트가 정보를 가져오면 좋겠다고 생각했어요.

플레이스 순위를 체크하는 서버에 적용을 시킬 생각을 함.

요 며칠전에는 ai agent에 연결을 했었는 데요.

https://www.gpters.org/nocode/post/when-you-want-know-US1esF2JpFzVmyG

이걸 MCP로 클로드에도 연결해보았습니다.

진행 방법

어떤 도구를 사용했고, 어떻게 활용하셨나요?

댕댕이멍멍 님이 너무 쉽다고 하신 github에 가서 문서를 가져옵니다.

https://github.com/jlowin/fastmcp

README.md 파일을 다운로드하거나 복사할 준비를 합니다.

커서구독이 어제 만료가 되어서 윈드서프를 사용해서 진행했어요. 윈드서프는 커서와 같이 ai기능이 탑재된 개발을 도와주는 문서편집기 같은 거에요.

준비물 체크

  • 서버에 접속할 코드가 필요합니다. curl같은 게 있으면 좋죠?
    curl -X POST "https://api.example.com/rank" \ -H "Content-Type: application/json" \ -d '{ "keyword": "합정동 추어탕", "company_id": "36727622" }'
    이런 식의 정보

  • fastmcp 의 가이드 문서, README.md

  • 커서나 윈드서프 등.

PRD.md 작성

Adobe C#에서 코드 편집기의 스크린 샷

1,2,3을 작성합니다.

자, 이제 코드 작성하러 갑시다.

윈드서프가 코드생성하는 과정을 정리하면,

  1. python으로 실행하다가 안됨.. 왜? 난 맥이니까. 그래서 python3으로 수정하고 다시 만듬

  2. 가상환경은 venv방식으로 진행

  3. requirements.txt를 만듬

  4. app.py에 서버코드를 작성.

  5. README.md도 만듬

  6. 가상환경 활성화, 맥이니까 자동으로 source env/bin/activate로 활성화하고

  7. requirements.txt을 이용해서 패키지 실행

  8. app.py 실행

여기까지 순식간에 함. 아직 코드 확인은 못했음.

일단 서버가 돌아감. 서버끄고, 서버실행 명령을 클로드에 입력해야하니까.

한국 HTML 코드의 스크린 샷

여러번 수정을 하더니, 최종 코드를 줌

웹 응용 프로그램 코드를 보여주는 화면

클로드에서 에러가 나서 로그를 던져줬더니,

갑자기 새로운 서버코드를 만들기 시작.. 아차차 싶었나봅니다. 알고봤더니, MCP서버를 안만들고, 그냥 서버를 만들었지 뭐에요?? 이 녀석..

그리고 나온 새로운 MCP서버 코드

'순위 정보를 얻기 위해 도구를 정의'하는 텍스트가있는 화면

@mcp.tool() 데코레이션도 잘 작성했죠? descript도 언제 이렇게 꼼꼼하게 썼니??

클로드에서 호출한 결과

한국어로 메시지가있는 검은 색 화면

이렇게 ai와 연결되면 좋은 게, 여러개를 한번에 호출해도 결과를 잘 생성합니다.

결과와 배운 점

  1. 어찌어찌 만들어서 동작을 하지만,

  2. 배포하는 거를 더 알아야 함. uv로 가상환경을 했는 데, 아직 익숙하지않아서 패키지설치하는 것부터 실수를 했음. 그래서 익숙한 venv방식으로 진행함.

  3. 서버구동시 실행하는 python의 위치를 제대로 기록해주는 게 동작의 핵심이었음.

  4. 해보고 싶은 걸 이렇게 금방 한다고?? 이건 아침부터 진행해준 스터디가 아니면 불가능

  5. 1년이 넘게 지피터스에 있었더니 상상력의 시각화가 된다.
    이렇게 해볼까?

  6. 신나는 하루!!

감사합니다.

도움 받은 글 (옵션)

15기 CTO 스터디

https://smithery.ai/

https://github.com/jlowin/fastmcp

https://codeium.com/windsurf

10
6개의 답글

👉 이 게시글도 읽어보세요