USB-C
로 빗대어 설명하는 MCP
가 무엇인지를 느껴보기 위해
공식에서 설명하는 간단한 예제를 만들어 보도록 하겠습니다.
예제는 단순히 이미 제작되어 있는 FileSystem이라는 MCP 서버를 통해 Tool을 불러오고 Args에 로컬의 Path를 전달 해 주는 방식입니다.
먼저 데스크톱용 클로드를 설치해 줍니다. 다운로드 링크 (클로드 공홈)
본문에서는 Claude.ai
가 아닌 데스크톱용 클로드를 사용하는지 설명 되어 있습니다.
Why Claude for Desktop and not Claude.ai
Because servers are locally run, MCP currently only supports desktop hosts. Remote hosts are in active development.
설치된 클로드에 로그인을 하고, 설정을 들어갑니다.
설정창에 왼쪽 탭에서 개발자탭에 들어가 설정 편집을 눌러줍니다.
클로드에서 claude_desktop_config.json
을 생성하고, 그 파일에 기본적인 Config들을 작성해주면 됩니다.
생성된 json파일의 경로는 다음과 같습니다:
~/Library/Application Support/Claude/claude_desktop_config.json
%APPDATA%\Claude\claude_desktop_config.json
만약 파일이 생성되지 않았다면 해당 경로에 생성해주면 됩니다.
이제 텍스트 편집기를 통해 MCP Server에 대한 Config를 작성합니다.
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"/your/path/to/desktop"
]
}
}
}
여기서 생각해봐야 할 점은
저는 D:\
를 인자로 사용했습니다.
How does the configuration file work?
애플리케이션이 동작할 때 사용할 MCP 서버를 config파일을 통해 알려줍니다.
서버에 대한 Describe는 여기에 정리되어 있습니다.
이제 Claude를 재시작 해줍니다.
Setting 해놓은 config를 읽고 클라이언트를 생성해 Server에서 Tool을 가져 온 모습입니다.
오픈소스로 올라온 Github에 들어가보면 TS파일에 설정된 Tool들이 불러와진 것을 알 수 있습니다.
저는 프롬프트에 다음과 같은 명령을 넣었습니다.
Prompt:
D드라이브에는 무슨 폴더들이 있고, 그 하위에는 무슨 파일들이 있는지 깔끔하게 정리해서 시각화 해줘
이제 Claude가 Tool을 사용하겠다는 내용과 내 로컬 파일을 탐색해도 되는지 Permission을 수락 받은 후 탐색을 진행합니다.
가장 크게 놀란 점은 저의 프롬프트를 받고 명령을 이행할 때 어떤 툴을 사용해서 어떻게 사용하는지 처리 과정을 보여준다는 점 입니다.
(LLM 추론 모델의 생각 과정을 보여주 듯)
또한, 과정을 보면 알 수 있듯이, 민감한 정보를 담은 폴더들은 탐색을 중단하는 모습입니다.
마지막으로 시각화를 해달라는 Prompt 마지막 문장에 따라 시각화도 해줍니다.
MCP를 이용하면 더욱 똑똑한 AI Agent를 구성할 수 있고,
활용도가 무궁무진한 만큼 Automatically한 업무(Task)가 가능할 것 같습니다.