MCP
MCP 심화 — 에이전트에 파일·DB·API 안전하게 연결하기
MCP 기본을 익혔다면 다음은 안전한 연결입니다. 권한 범위, 서버 분리, 로컬 실행으로 도구를 안전하게 노출하는 법.
이어서
MCP 시작하기에서 기본을 다뤘습니다. 이번엔 실제 프로젝트에서 파일·데이터베이스·API를 에이전트에 연결할 때의 안전한 설계를 봅니다. 핵심 원칙 하나 — 필요한 만큼만 노출한다.
서버를 역할별로 분리한다
하나의 거대한 MCP 서버에 모든 권한을 몰아넣지 마세요. 파일 접근, DB 조회, 외부 API를 별도 서버로 나누면 각 서버가 자기 범위만 노출하고, 문제가 생겨도 영향 범위가 좁습니다.
{
"mcpServers": {
"docs": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/project/docs"]
},
"db-readonly": {
"command": "node",
"args": ["./mcp/db-readonly-server.js"]
}
}
}
최소 권한 원칙
- 파일: 프로젝트 전체가 아니라 필요한 디렉터리만 마운트합니다.
- DB: 쓰기가 필요 없다면 읽기 전용 연결만 노출합니다.
- API: 키는 서버 쪽에 두고, 에이전트에는 노출하지 않습니다.
로컬 실행이 주는 안전
MCP 서버를 로컬에서 돌리면 데이터가 사용자 머신을 벗어나지 않습니다. 민감한 코드·DB를 다룰 때 이 로컬 경계가 중요합니다. 마블로는 모든 에이전트를 로컬에서 실행하므로, MCP 서버도 같은 경계 안에 둘 수 있습니다.
여러 에이전트가 공유할 때
동일한 MCP 서버 집합을 여러 에이전트가 공유하면 도구와 컨텍스트가 일관됩니다. 단, 읽기/쓰기 권한이 있는 서버는 어느 에이전트가 어떤 변경을 하는지 추적할 수 있어야 합니다 — 티켓과 보드가 그 역할을 합니다.
정리
MCP 심화의 요점은 "더 많이 연결하기"가 아니라 "좁게, 로컬에서, 추적 가능하게 연결하기"입니다.
댓글
댓글 기능은 곧 제공됩니다.