본문으로 건너뛰기
ReviewRamble

주간 브리프

AI 리뷰를 받은편지함으로.

  • 도구, 모델, MCP 서버, 저장소의 새 리뷰(결론부터)
  • 변경이 있을 때 다시 확인한 가격과 평점
  • 새로 발행된 분석 글

모델, 에이전트, MCP 서버, 그리고 정말 시간을 들일 만한 도구.

일주일에 한 통입니다. 각 브리프의 링크로 구독을 해지할 수 있습니다. 이메일 사용 방식

database-mcp (cocaxcode)

한 명의 개발자가 만든 PostgreSQL, MySQL, SQLite용 stdio 서버로, 저장된 연결, 되돌리기 스냅샷, 덤프, 쿼리 기록을 제공합니다.

리뷰어: ReviewRamble editors · 업데이트

설치 문서 오픈 소스

평점

2.9/5

잘 고른 작업대 기능이 코드가 지키지 않는 안전 약속 위에 서 있으니, 노트북의 데이터베이스까지만 쓰고 운영 환경 가까이에는 두지 말아야 합니다.

database-mcp (cocaxcode)의 개요

GitHub 사용자 cocaxcode가 npm에 @cocaxcode/database-mcp로 공개한 database-mcp는 MCP 클라이언트를 PostgreSQL, MySQL, SQLite용 작은 데이터베이스 작업대로 바꿉니다. 연결은 한 번 저장하면 프로젝트 디렉터리별로 묶이므로, 한 저장소에서 일하는 에이전트에게는 그 프로젝트의 데이터베이스만 보입니다. 쿼리 도구 주변에는 3단계 스키마 검색, EXPLAIN, 프로젝트별 쿼리 기록, 변경 전에 찍어 되돌리기용 역 SQL을 만드는 스냅샷, SQL 덤프와 복원, 그리고 컨텍스트를 아끼기 위해 큰 셀을 잘라 내는 결과 압축이 더해집니다.

코드는 도구 34개와 스키마 리소스 2개를 등록합니다(README는 33개, MCP 레지스트리 항목은 19개라고 적고 있습니다). stdio로만 동작하며 전역으로 설치한 postgres, mysql2, sql.js 드라이버를 불러옵니다. 저장소는 2026년 3월에 만들어졌고 GitHub 스타 3개, 커밋 41개이며 마지막 변경은 2026년 8월 26일입니다. npm 최신 버전은 2026년 4월 21일의 0.3.4이고, 패키지는 11월 10일까지 한 달 동안 330회 다운로드되었습니다.

database-mcp (cocaxcode) 설치 방법

npx -y @cocaxcode/database-mcp@latest

database-mcp (cocaxcode), 쓸 만한 가치가 있습니까?

기능은 개발자 자신의 컴퓨터용으로 잘 골라져 있습니다. 연결은 세션이 바뀌어도 유지되고 프로젝트 디렉터리를 따라가며, 읽기 쿼리에는 LIMIT 100이 붙고, 500바이트가 넘는 셀은 표시를 남기고 잘리며, 20칸짜리 캐시 덕분에 에이전트는 쿼리를 다시 실행하지 않고도 나중에 전체 결과를 가져올 수 있습니다. INSERT, UPDATE, DELETE마다 영향받는 행을 먼저 저장해 rollback_apply로 되돌릴 수 있게 합니다. DDL은 기록되지만 되돌릴 수 없습니다.

안전 모델은 README가 말하는 것보다 약합니다. README는 파괴적인 작업에 명시적인 confirm: true가 필요하다고 약속하지만, 우리가 소스 코드를 읽은 바로는 execute_mutation에 그런 매개변수가 없고 DELETE나 DROP을 즉시 실행합니다. 확인을 요구하는 것은 conn_delete, rollback_apply, db_restore뿐이며, 그 플래그를 켜는 것도 모델 자신입니다. 새 연결이 기본적으로 읽기 전용인 것은 옳은 선택이지만, 에이전트는 conn_set으로 도구 호출 한 번에 연결을 읽기와 쓰기 모드로 바꿀 수 있습니다.

읽기 전용 자체도 문장의 첫 키워드만 보는 분류기에 기대고 있습니다. PostgreSQL 드라이버는 매개변수 없는 SQL을 postgres.js의 단순 프로토콜로 보내고, SQLite 드라이버는 sql.js의 exec를 씁니다. 둘 다 한 번의 호출로 여러 문장을 실행하므로, SELECT로 시작하는 문자열도 세미콜론 뒤에 DELETE를 실을 수 있습니다. analyze를 true로 둔 explain_query는 읽기 전용 검사를 아예 건너뛰고, PostgreSQL에서 EXPLAIN ANALYZE는 설명하는 문장을 실제로 실행합니다. 에이전트가 방금 읽은 행에 숨은 프롬프트 인젝션은 두 경로 모두를 악용할 수 있습니다. MySQL 드라이버는 prepared statement를 쓰며 이어 붙인 쿼리를 받지 않습니다.

자격 증명은 로컬에 남아 ~/.database-mcp 아래 소유자 전용 JSON 파일에 저장되고, conn_get은 비밀번호를 가립니다. 하지만 include_secrets를 켠 conn_export는 비밀번호를 평문 그대로 모델의 컨텍스트에 돌려줍니다. 기록, 이전 행 값을 담은 스냅샷, 전체 덤프는 프로젝트 안의 .database-mcp 폴더에 쓰이므로 이 폴더는 버전 관리에서 빼 두어야 합니다. 도구 설명과 서버 지침은 스페인어로 쓰여 있어, 모델은 문제없이 다루지만 에이전트 로그를 영어로 검토하는 사람은 읽지 못할 수 있습니다.

결론: SQLite 파일이나 버려도 되는 로컬 Postgres라면 되돌리기와 기록 도구는 맨 SQL 실행기보다 반가운 개선입니다. 중요한 것에는 SELECT만 가능한 데이터베이스 사용자 뒤에 둔 DBHub나 Microsoft의 Postgres 서버가 더 안전한 구성입니다. 거기서는 키워드 검사가 아니라 데이터베이스가 거부하기 때문입니다.

제 역할을 하는 곳

  • SQLite로 사이드 프로젝트를 만드는 1인 개발자

    Claude Code에서 테스트 데이터를 넣고, 스키마 변경을 시험하고, 실수를 되돌리기

    로컬 .db 파일에 읽기와 쓰기 연결을 만들고, 에이전트가 행을 삽입하고 수정하게 한 뒤, 변경이 잘못되면 rollback_apply를 호출합니다. 무료입니다. 스키마 변경은 되돌릴 수 없으니 DDL 전에는 db_dump를 실행하세요.

  • 여러 고객 프로젝트를 맡은 프리랜서 백엔드 개발자

    다시 설정하지 않고도 저장소마다 맞는 로컬 데이터베이스를 에이전트가 고르게 하기

    고객마다 연결 그룹을 만들고, 그 프로젝트 디렉터리를 범위로, 개발용 데이터베이스를 기본값으로 둡니다. 에이전트에게는 해당 고객의 연결만 보입니다. 운영 연결은 도구에 아예 넣지 않는 편이 낫습니다.

도입 전 확인할 점

설정
claude mcp add --scope user database -- npx -y @cocaxcode/database-mcp@latest에 더해, 사용하는 엔진에 맞춰 npm install -g postgres, mysql2, sql.js를 실행합니다. Node 20 이상이 필요합니다. Claude Code, Claude Desktop, Cursor, Windsurf, VS Code, Codex CLI, Gemini CLI용 설정이 문서화되어 있습니다. 연결은 에이전트에게 요청해 만들므로 첫 쿼리까지 몇 분이 걸립니다.
연동
코드상 도구는 34개입니다. 연결용 13개, 그룹용 7개, search_schema, execute_query, execute_mutation, explain_query, inspect_last_query, 덤프용 3개, 되돌리기용 2개, 기록용 2개, 설정용 2개이며, db://schema와 db://tables/{tableName}/schema 리소스가 더 있습니다. stdio 전용이고 HTTP 전송이 없어 네트워크 포트를 열지 않습니다.
데이터와 개인정보
모든 것이 로컬에서 실행되며 쿼리 결과는 사용하는 모델 제공자에게 갑니다. 자격 증명은 ~/.database-mcp/connections 아래 JSON 파일에 암호화 없이 소유자 전용 권한으로 저장되며, conn_export는 이를 평문으로 돌려줄 수 있습니다. 각 프로젝트의 .database-mcp에는 기록(최대 5,000건), 행 데이터를 담은 스냅샷(최대 1,000건), 전체 SQL 덤프가 저장되고, 최근 결과는 디스크에 1시간 동안 캐시됩니다. 에이전트가 읽는 행에는 프롬프트 인젝션이 들어 있을 수 있으며, PostgreSQL과 SQLite에서는 읽기 전용 모드가 그로 인한 쓰기를 확실히 막지 못합니다.
대규모 사용 시 비용
무료이며, 드는 비용은 데이터베이스 부하와 컨텍스트입니다. 기본 LIMIT 100과 셀당 500바이트 상한이 일반적인 결과를 작게 유지하지만, 이 상한을 피해 가는 EXPLAIN ANALYZE와 제한 없는 UNION 쿼리는 예외입니다.
제한
자체 SSH 터널이나 인증서 설정이 없고, 쿼리 시간 제한도 없으며, 엔진은 3개뿐입니다. 저장소의 버전 0.3.5는 npm에 없습니다. 읽기 전용과 확인 절차는 데이터베이스 권한이 아니라 모델의 협조에 달려 있습니다.

좋은 점

  • 저장된 연결을 프로젝트 디렉터리별로 묶음
  • 변경 전 스냅샷과 역 SQL을 이용한 되돌리기
  • 자동 LIMIT 100과 셀 자르기로 컨텍스트 절약
  • 연결은 기본적으로 읽기 전용

아쉬운 점

  • README와 달리 execute_mutation에 확인 절차가 없음
  • 이어 붙인 문장과 EXPLAIN ANALYZE로 읽기 전용 우회 가능
  • 에이전트가 스스로 연결을 읽기와 쓰기 모드로 전환 가능
  • 스타 3개, 개발자 한 명, 2026년 4월 이후 npm 릴리스 없음

추천 대상

로컬 SQLite나 개발용 Postgres 데이터베이스를 되돌리기와 기록 기능과 함께 에이전트가 탐색하고 편집하게 하려는 1인 개발자.

database-mcp (cocaxcode) 대안

database-mcp (cocaxcode): 자주 묻는 질문

database-mcp (cocaxcode), 쓸 만한 가치가 있습니까?
잘 고른 작업대 기능이 코드가 지키지 않는 안전 약속 위에 서 있으니, 노트북의 데이터베이스까지만 쓰고 운영 환경 가까이에는 두지 말아야 합니다. 평점은 5점 만점에 2.9점입니다.
database-mcp (cocaxcode)의 가격은 얼마입니까?
무료 오픈 소스(MIT)입니다.
database-mcp (cocaxcode)의 단점은 무엇입니까?
README와 달리 execute_mutation에 확인 절차가 없음; 이어 붙인 문장과 EXPLAIN ANALYZE로 읽기 전용 우회 가능; 에이전트가 스스로 연결을 읽기와 쓰기 모드로 전환 가능; 스타 3개, 개발자 한 명, 2026년 4월 이후 npm 릴리스 없음.
database-mcp (cocaxcode)에 적합한 사람은 누구입니까?
로컬 SQLite나 개발용 Postgres 데이터베이스를 되돌리기와 기록 기능과 함께 에이전트가 탐색하고 편집하게 하려는 1인 개발자.
팀이나 프로덕션 환경에서 database-mcp (cocaxcode)의 비용은 얼마입니까?
무료이며, 드는 비용은 데이터베이스 부하와 컨텍스트입니다. 기본 LIMIT 100과 셀당 500바이트 상한이 일반적인 결과를 작게 유지하지만, 이 상한을 피해 가는 EXPLAIN ANALYZE와 제한 없는 UNION 쿼리는 예외입니다.
database-mcp (cocaxcode)에 회사 데이터를 맡겨도 안전합니까?
모든 것이 로컬에서 실행되며 쿼리 결과는 사용하는 모델 제공자에게 갑니다. 자격 증명은 ~/.database-mcp/connections 아래 JSON 파일에 암호화 없이 소유자 전용 권한으로 저장되며, conn_export는 이를 평문으로 돌려줄 수 있습니다. 각 프로젝트의 .database-mcp에는 기록(최대 5,000건), 행 데이터를 담은 스냅샷(최대 1,000건), 전체 SQL 덤프가 저장되고, 최근 결과는 디스크에 1시간 동안 캐시됩니다. 에이전트가 읽는 행에는 프롬프트 인젝션이 들어 있을 수 있으며, PostgreSQL과 SQLite에서는 읽기 전용 모드가 그로 인한 쓰기를 확실히 막지 못합니다.
database-mcp (cocaxcode)의 가장 좋은 대안은 무엇입니까?
저희가 리뷰한 것 중 가장 가까운 대안은 DBHub, Postgres MCP Server (Microsoft), Faucet 및 MCP Toolbox for Databases입니다.

답변 확인일: 2026년 11월 11일.