개발자로서 살아남기

서버개발자로서 살아남기 - MCP 실무에서 활용하기 with 옵시디언, mysql, 파일시스템 (1)

코드 살인마 2025. 8. 1. 18:02
728x90

MCP란?

MCP(Model Context Protocol) 는 Anthropic이 2024년 11월 26일 공개한 개방형 표준 프로토콜입니다.대규모 언어모델(LLM)이 인터넷, 데이터베이스, 파일 시스템 등 다양한 외부 툴과 안전하고 쉽게 양방향 소통할 수 있도록 만든 규격입니다.

 

쉽게 말해, AI 모델이 인터넷 검색, 파일 저장, 코드 실행, 데이터베이스 작업 등 여러가지 도구(tool)를 사용할 수 있게 해주는 공통의 사용 설명서라고 생각하면 됩니다.

 

AI 분야의 "USB-C 포트" 라고 비유될 만큼, 어떤 AI 모델이나 도구든 동일한 방식으로 연결 가능합니다.

MCP 등장 배경

기존 방식의 한계점

이전에는 AI 모델과 외부 도구 연결 시 여러 문제가 있었습니다:

  • 특정 프레임워크(예: LangChain, LangGraph)를 매번 새로 학습해야 함
  • 각 도구마다 별도의 코드를 만들어야 함
  • 모델마다 연동 방식이 달라 중복 개발이 많음
  • 여러 도구를 동시에 연동하기 복잡함

MCP가 해결하는 문제

MCP는 이런 불편을 다음과 같이 해결합니다:

  • 어떤 도구든 하나의 표준 방식으로 연결
  • GPT, Claude 등 모델 종류에 상관없이 동일한 방법으로 사용 가능
  • 개발자뿐 아니라 일반 사용자도 쉽게 이용 가능
  • 다양한 도구를 쉽게 추가하고 공유 가능한 ‘앱스토어’형 생태계 구축

결국 MCP는 AI와 외부 도구 연결 작업을 단순화하고 확장성을 극대화합니다.

MCP 구조 및 동작원리

MCP는 다음과 같은 방식으로 작동합니다:

  1. MCP 클라이언트가 MCP 서버로부터 사용 가능한 도구 목록을 가져옵니다.
  2. 사용자가 MCP 호스트에 질문이나 요청을 입력합니다.
  3. MCP 호스트는 사용자의 요청과 사용 가능한 도구 목록을 AI 모델에 전달하고, 모델은 필요한 도구를 판단하여 응답합니다.
  4. MCP 호스트가 MCP 클라이언트를 통해 필요한 도구를 **실제로 사용(호출)**합니다.
  5. 도구 사용 결과와 원본 요청을 다시 AI 모델에 전달해 최종 응답을 생성합니다.
  6. 생성된 응답을 사용자가 보기 쉽게 전달합니다.

현재 제공되는 MCP 호스트 예시

  • Claude
  • Copilot
    Amazon Q Developer

MCP 실무 활용

MCP를 통해 다양한 실제 업무를 간편하게 처리할 수 있습니다

 


MCP 검색 사이트

옵시디언

  • 매일 기록하는 할 일을 MCP를 통해 간편하게 조회하고 주간 보고서를 작성할 수 있습니다.

질문

  • "지난주 목요일부터 오늘까지 한 일을 보여줘"

 

MYSQL

DB 정보 조회 및 수정 가능

  • DB 테이블 조회, 데이터 수정 등 작업을 AI가 대신 수행해줍니다.

질문

  • 챌린지 관련 테이블 어떤게 있는지 알려줘

파일시스템

파일 분석 및 수정 가능

  • 파일을 분석하거나 필요한 데이터를 간단히 추출할 수 있습니다.

질문

  • C:\ 해당 경로에 챌린지 관련 자바파일 찾을 수 있어?

 

vsCode 플러그인에 자바가 없었는데, 자바 플러그인을 설치해달라는 팝업이 나온다.

질문

- 챌린지 관련 자바 파일의 동작방식 분석해서 특정 유저 로그인 시, event 패킷 보내도록 수정해줘

 

보안때문에, 전체 공개는 힘들지만, 에이전트가 스스로 꽤 정확하게, 위 요구사항에 대한 코드를 적절한 곳에 작성하였다.

 

다중 도구 활용 예시 (MySQL + 파일시스템)

  • 데이터베이스와 파일을 동시에 활용해 엑셀에서 쉽게 사용할 CSV 데이터를 자동 생성합니다.

질문

  • 챌린지 뱃지가 5000개 이상인 유저의 memberId, memberNo, 뱃지 개수를 csv 호환되는 메모장 형식으로 만들어줘

의도

  1. 컨텐츠 관련 유저 테이블에는 memberId 가 존재하지 않아, 다른 테이블에서 memberNo에 맞는 memberId를 찾아야한다.
  2. 엑셀에 호환되는 CSV 파일을 만들어야 한다.

  • 다른 테이블과 조인 및 의도에 맞는 쿼리를 실행하여, 결과물 추출

  • CSV 파일 추출 및 엑셀에서 정상적으로 열리는 거 확인


`MYSQL`과 `파일시스템`을 조합하여, 의도에 맞는 결과물을 만들었다.

 

다음 편에서는  MCP서버를 실무 프로젝트에 직접 적용해보고, 미래에 어떻게 활용될건지에 대해 포스팅 할 것이다.