사용 버전 gemini-CLI 0.1.9
MCP를 추가해서 gemini-CLI에 기능을 추가해보는 방법에 대해서 알아보자.
mcp란?
gemini-cli는 settings.json을 수정해서 mcp tool을 call할 수 있다.
mcp에 대해서 궁금한게 있으면 다음 출처를 참고하면 이해에 도움이 된다.
출처 : https://docs.anthropic.com/ko/docs/agents-and-tools/mcp
mcp서버 설치
먼저 mcp를 위한 라이브러리인 smithery.ai에 접속한다.
https://smithery.ai 혹은 https://glama.ai/mcp
실습을 위해서 project manager 역할을 수행하는 @shirimp projectmanager를 사용해볼것이다.
mkdir lab1 cd lab1 git clone https://github.com/cjo4m06/mcp-shrimp-task-manager.git cd mcp-shrimp-task-manager npm install npm run build npm start이러면 로컬에서 mcp 서버는 전부 구성이 되었으니, .gemini/settings.json을 수정해야한다.
extension 디렉토리 생성
gemini-cli는 mcp와 같은 extension을 지원하기 위한 directory를 지원한다.
gemini-cli에 extension을 추가하기 위한 파일은 다음과 같다..gemini/extensions/my-extension/gemini-extension.json #없다면 다음과 같이 생성 touch .gemini/extensions/my-extension/gemini-extension.json
문제가 하나 있는데... shrimp Task Manager는 중국에서 만든 mcp 서버이기 때문에 보안상 취약할 수 있으니 로컬 MCP를 사용하는 예제 중 하나로만 생각해주면 좋겠다.
gemini-extension.json 수정
shirimp task manager의 mcp config양식은 다음과 같다.{ "mcpServers": { "shrimp-task-manager": { "command": "node", "args": [ "/path/to/mcp-shrimp-task-manager/dist/index.js" ], "env": { "DATA_DIR": "/path/to/project/data" } } } }자신에 맞게 수정하면 되는데 나는 다음과 같이 작성해줬다.
{ "name": "my-extension", "version": "1.0.0", "mcpServers": { "shrimp-task-manager": { "command": "node", "args": [ "/home/user1/lab1/mcp-shrimp-task-manager/dist/index.js" ], "env": { "DATA_DIR": "/home/user1/lab2" } } } }똑같이 gemini-extension.json에 복붙해주면 된다.
결과확인
gemini-cli가 mcp tool을 사용할 수 있는 걸 알 수 있다. shrimp task manager도 기능이 많은 mcp이기 때문에 많이 사용해보길 바란다.