FastMCP는 Ruby on Rails 애플리케이션을 Model Context Protocol을 이해하는 서버로 변환하는 Ruby Gem입니다. 이 Gem을 사용하면 복잡한 맞춤형 API나 프롬프트 해킹 없이 명확한 인터페이스를 가진 도구를 정의하고 AI 에이전트가 이를 활용하게 할 수 있습니다.
FastMCP 설정
FastMCP는 Rails 앱을 Model Context Protocol 서버로 전환하는 Ruby Gem입니다. bundle add fast-mcp
및 bin/rails generate fast_mcp:install
명령으로 간편하게 설치됩니다. 이 과정에서 config/initializers/fast_mcp.rb
(설정), app/tools
(도구 정의), app/resources
(데이터 리소스) 디렉토리가 생성되며, Rails 앱은 추가 설정 없이 즉시 MCP 서버로 기능하여 개발자가 AI 에이전트 도구 개발에 집중할 수 있습니다.
도구 개발
FastMCP를 활용한 도구 개발은 직관적입니다.
* 투두 목록 조회 (GetTodosTool
): app/tools/get_todos_tool.rb
에 정의되며, description
으로 기능이 설명되고 call
메서드에서 데이터베이스의 투두 목록을 조회, 해시 배열로 반환합니다. 인자 없이 작동합니다.
* 투두 생성/업데이트 (CreateTodoTool
): 인자를 받는 도구 예시로, description
과 arguments
블록을 사용하여 title
(필수), id
(선택), done
(선택) 인자를 정의합니다. call
메서드는 이 인자들을 활용해 투두를 생성하거나 업데이트한 후 상세 정보를 반환합니다.
테스트
개발된 도구는 두 가지 방식으로 테스트됩니다.
* MCP Inspector: npx @modelcontextprotocol/inspector
로 실행되는 웹 기반 도구로, 노출된 도구를 확인하고 직접 호출하여 기능을 검증합니다.
* VS Code MCP 클라이언트: VS Code 내에서 http://localhost:3000/mcp/sse
주소로 MCP 서버를 설정하여, LLM 에이전트 모드에서 Rails 앱 도구를 직접 호출하고 실제 AI 통합 시나리오를 시뮬레이션할 수 있습니다.