Ch12. Prisma MCP 활용
Prisma MCP와 독립 agent credential·승인 정책의 적용 범위를 구분합니다.
핵심 요약
- MCP가 원격이라는 이유로 읽기 전용이라고 판단하지 않습니다. SQL·삭제·복구·배포 도구의 실제 목록과 권한을 확인합니다.
- Prisma의 agent enrollment는 사용자 계정과 별도 credential을 발급하고 Console에서 pause·revoke할 수 있게 합니다.
- credential 기반 승인 정책과 GitHub push로 시작되는 Actions 배포는 서로 다른 통제면입니다.
- Prisma 7 로컬 MCP 예제는 CLI 버전을 고정하며, 8 RC를 무심코 설치하지 않습니다.
로컬과 원격 연결
| 연결 | 범위 | 주의점 |
|---|---|---|
| Local MCP | 프로젝트의 CLI·schema·개발 도구 | 프로젝트의 Prisma major와 DB 환경을 고정 |
| Remote MCP | Prisma workspace·DB·Compute 관리 | 실제 tool inventory와 계정·프로젝트 scope 확인 |
Prisma 7을 유지하는 개발 프로젝트의 예입니다. 운영 DB의 자동 변경에 사용하지 않습니다.
{
"mcpServers": {
"prisma": {
"command": "npx",
"args": ["-y", "prisma@7.10.1", "mcp"]
}
}
}Remote endpoint는 https://mcp.prisma.io/mcp이며 client의 공식 HTTP/OAuth 설정을 따릅니다. 도구 수를 이전의 “로컬 7개·원격 10개”로 고정하지 않습니다. 10월 공지는 Compute rollback·logs 조회까지 포함합니다.
독립 agent credential과 승인 범위
Console Settings → Agents에서 enrollment 안내를 받고 pairing code를 사람이 승인하면 agent의 별도 credential이 발급됩니다. agent별로 접근을 중지·회수할 수 있고 감사 기록에 agent가 식별됩니다.
| 동작 | 기본 정책의 범위 |
|---|---|
| preview branch 작업 | agent credential의 허용 범위에서 자율 수행 |
| production 쓰기·삭제·connection string 생성 | 승인 요청 대상 |
| Git push → GitHub Actions 배포 | agent credential 요청이 아니므로 이 승인 정책이 자동 적용되지 않음 |
따라서 protected branch·CI environment approval·배포 권한을 별도로 설정합니다. enrollment만으로 모든 배포가 사람 승인 뒤 실행된다고 가정하지 않습니다.
도입·운영 절차
- 비프로덕션 workspace에서 연결하고 도구 이름·read/write 성격·대상 resource를 목록으로 남깁니다.
- 조회와 변경 credential을 나누고
reset·delete·restore·rollback의 허용 범위를 명시합니다. - 승인 시 target DB·실행 SQL 또는 배포·영향 범위·복구 방법을 함께 확인합니다.
- 요청·판정·실행 결과·변경 티켓을 동일한 correlation ID로 기록합니다. connection string 자체는 로그에 넣지 않습니다.
- 계정 퇴사·프로젝트 종료·인시던트 시 credential을 회수하고 접근이 실제 거절되는지 확인합니다.
버전 경계
이 책의 Migrate 예제는 Prisma 7.10.1 기준입니다. prisma@latest는 8 RC이므로 local MCP와 CI 설치에도 버전을 명시합니다. ORM 8 평가와 MCP 권한 변경을 한 변경으로 합치지 않습니다.