Claude Code + Notion MCP 서버로 개발 로그 자동화하기
2025. 8. 3.

개발하면서 "어? 어제 뭘 했더라?" 하며 git log를 뒤지신 경험 있으신가요? 저도 매일 코딩하고 커밋하지만, 정작 무엇을 했는지 기억이 안 나는 경우가 많았습니다.
그래서 이번에 Claude Code와 Notion MCP 서버를 연동해서 자연어 한 마디로 개발 로그를 자동 생성하는 시스템을 구축해봤습니다. "오늘 작업을 Notion에 정리해줘"라고 말하면 git 커밋을 분석해서 깔끔한 로그를 만들어주는 마법 같은 기능입니다.
미리보기

이런 것들이 가능해집니다
기존 방식:
1git log --oneline -10
2# 커밋 메시지들 복사해서
3# Notion 페이지 수동 작성
4# 카테고리 분류도 일일이...MCP 설정 후:
"오늘 작업을 Notion에 새 로그로 정리해줘"그러면 Claude가 알아서:
- 최근 커밋들 분석
- 작업 타입 자동 분류 (Feature, Bug Fix, Documentation 등)
- 구조화된 로그 생성
- Notion 데이터베이스에 완벽한 포맷으로 저장
단계별 설정 가이드
1단계: Notion 통합 만들기
Notion 통합 페이지에서 새 통합을 생성해주세요.
꼭 필요한 권한들:
- Read content - 기존 데이터 읽기
- Insert content - 새 페이지/로그 생성
- Update content - 기존 로그 수정
통합 이름은 "Claude Dev Logger" 같은 직관적인 이름으로 지어주시면 됩니다.
2단계: 개발 로그 데이터베이스 설계
Notion에서 새 데이터베이스를 만들고 이런 속성들을 추가해보세요:
| 속성명 | 타입 | 활용 예시 |
|---|---|---|
| 제목 | Title | "로그인 기능 구현 완료" |
| 설명 | Rich Text | 상세한 작업 내용 |
| 타입 | Multi-select | Feature, Bug Fix, Documentation, Test |
| 상태 | Select | 진행중, 완료, 보류 |
| 날짜 | Date | 작업 날짜 |
| 프로젝트 | Select | 프로젝트별 구분 |
| 커밋 해시 | Rich Text | Git 커밋 ID |
| 변경된 파일 | Multi-select | 수정된 파일들 |
| 작업 시간 | Number | 예상 소요 시간 |
중요한 포인트: 데이터베이스 우측 상단 "공유" → 방금 만든 통합 초대하는 것 잊지 마세요!
3단계: MCP 서버 설정 파일 작성
프로젝트 루트에 .mcp.json 파일을 생성합니다:
1{
2 "mcpServers": {
3 "notion-dev-log": {
4 "type": "stdio",
5 "command": "npx",
6 "args": ["-y", "@notionhq/notion-mcp-server"],
7 "env": {
8 "OPENAPI_MCP_HEADERS": "{\"Authorization\": \"Bearer ntn_your_token_here\", \"Notion-Version\": \"2022-06-28\"}"
9 }
10 }
11 }
12}
13여기서 ntn_your_token_here를 실제 통합 토큰으로 바꿔주세요.
설정 포인트 해설:
y플래그:npx가 패키지를 자동으로 설치하도록 허용OPENAPI_MCP_HEADERS: MCP 서버와의 통신을 위한 특별한 환경변수 형태- Bearer 토큰 + Notion-Version 헤더 조합이 핵심입니다
4단계: 연결 테스트
Claude Code를 완전히 재시작한 후, 다음과 같이 테스트해보세요:
"Notion MCP 연결 테스트해줘"
성공하면 데이터베이스 스키마 정보가 쭉 나타나고, 오류 없이 깔끔하게 연결됩니다.
실전 활용하기
기본 사용법
이제 이런 자연스러운 명령들로 개발 로그를 관리할 수 있어요:
1"오늘 작업한 내용을 새 Notion 로그로 만들어줘"
2"최근 버그 수정 작업을 정리해서 추가해줘"
3"새로 구현한 로그인 기능을 독립된 로그로 기록해줘"
4실제 생성 결과 예시
명령: "최근 MCP 설정 작업을 정리해줘"
Claude가 생성하는 결과:
1제목: "Notion MCP 설정 가이드 추가 및 기존 dev-log 규칙 제거"
2
3타입: ["Documentation", "Configuration"]
4날짜: "2025-08-03"
5상태: "완료"
6프로젝트: "crowrish-blog"
7커밋: "3c24651f6e5bfdb8ea14305656a4b178a4894c8c"
8변경 파일: [".mcp.json", "CLAUDE.md", "notion-mcp-setup-guide.md"]
9작업 시간: 2.5시간
10
11상세 내용:
12• 새 파일: notion-mcp-setup-guide.md - 설정 과정 완전 가이드
13• 수정: CLAUDE.md - 기존 bash 방식 제거
14• 추가: .mcp.json - MCP 서버 설정 완료
15
16성과:
17• bash 명령어 → 자연어 기반 로그 관리 전환 완료
18• 동료들과 공유 가능한 실용적 가이드 문서 작성
19• 표준화된 개발 로그 시스템 구축활용법
요청 스타일 커스터마이징
Claude에게 이런 식으로 세부 조정을 요청할 수 있어요:
"상세하게 분석해서 Notion에 정리해줘"
"간단하게 요약해서 기존 페이지에 업데이트해줘"
"지난 주 작업들을 프로젝트별로 나눠서 만들어줘"데이터베이스 최적화 팁
Multi-select 옵션 미리 정의해두기 (예시):
- 타입:
Feature,Bug Fix,Documentation,Refactor,Configuration, Test - 상태:
계획,진행중,완료,보류,취소
이렇게 해두면 Claude가 더 일관성 있게 분류해줍니다.
보안 관리
1# .gitignore에 꼭 추가하세요
2.mcp.json
3
4# API 토큰 정기적으로 로테이션
5# 통합 권한도 최소한으로 설정문제 해결 가이드
자주 겪는 문제들
"401 Unauthorized" 계속 발생하는 경우:
- 통합이 데이터베이스에 제대로 연결되었는지 재확인
- 토큰을 새로 생성해서 다시 시도
- 통합 권한 설정 재점검
페이지는 생성되는데 속성들이 비어있는 경우:
- 데이터베이스 스키마와 Claude의 API 요청이 일치하는지 확인
- Multi-select 옵션들이 미리 정의되어 있는지 체크
Claude Code 재시작 후에도 연결이 안 되는 경우:
- 시스템 환경변수에 NOTION 관련 변수가 있는지 확인
.mcp.json파일 경로와 권한 재확인
한 단계 더 나아가기
Claude.md 작성하기
아래는 예시입니다. claude 에게 원하는 방향을 설명하고 기록해달라고 요청해보세요.
1## Notion MCP 개발 로그 관리
2
3- **MCP 연결**: `.mcp.json` 파일을 통한 Notion MCP 서버 연결 완료
4- **설정 가이드**: `notion-mcp-setup-guide.md` 시행착오 해결 가이드 문서화
5- **자연어 관리**: 기존 bash `dev-log` 명령어에서 자연어 기반 로그 관리로 전환
6
7### 사용 방법
8
9#### 기본 요청 방식
10
11```
12"오늘 작업 내용을 Notion MCP에 로그로 남겨줘"
13"최근 커밋들을 분석해서 개발 로그 작성해줘"
14"새로 구현한 기능을 Notion 개발 로그에 정리해줘"
15```
16
17### MCP DEV LOG 데이터베이스 스키마
18
19모든 로그 항목은 다음 속성들이 자동으로 채워집니다:
20
21- **제목** (Title): 작업 내용 요약
22- **설명** (Rich Text): 상세한 작업 설명
23- **타입** (Multi-select): Documentation, Feature, Bug Fix, Configuration 등
24- **상태** (Select): 진행중, 완료, 보류 등
25- **날짜** (Date): 작업 일자
26- **프로젝트** (Select): crowrish-blog
27- **커밋 해시** (Rich Text): Git 커밋 해시
28- **변경된 파일** (Multi-select): 수정된 파일 목록
29- **작업 시간** (Number): 예상 작업 시간 (시간)
30
31### ⚡ 자동 처리 기능
32
33Claude가 자동으로 수행하는 작업:
34
35- 최근 git 커밋 분석 및 정보 추출
36- 작업 내용 카테고리화 (이미지, 테스트, 구조 등)
37- 커밋 해시와 변경된 파일 목록 자동 입력
38- 영향도와 기능 설명 상세 작성
39- 구조화된 블록 형태로 Notion에 저장
40
41### 🚨 Notion MCP 새 페이지 생성 시 주의사항
42
43**데이터베이스에 새 페이지 생성할 때**:
44
45```json
46// ✅ 올바른 방식 - database_id를 parent로 사용
47{
48 "parent": {"database_id": "db_id"},
49 "properties": {
50 "제목": {"title": [{"text": {"content": "페이지 제목"}}]},
51 "설명": {"rich_text": [{"text": {"content": "내용"}}]},
52 "프로젝트": {"select": {"name": "프로젝트 이름"}},
53 "타입": {"multi_select": [{"name": "Feature"}]},
54 "상태": {"select": {"name": "완료"}},
55 "커밋 해시": {"rich_text": [{"text": {"content": "해시값"}}]},
56 "변경된 파일": {"multi_select": [{"name": "파일명"}]},
57 "날짜": {"date": {"start": "2025-08-04"}},
58 "작업 시간": {"number": 1.5}
59 }
60}
61```
62
63**흔한 실수들**:
64- `page_id`를 parent로 사용 → `object_not_found` 에러
65- 한국어 속성명 오타 (`제목` vs `title`)
66- 잘못된 속성 타입 사용 (select vs multi_select)팀 활용
개인 로그를 팀 차원으로 확장해보세요:
- 일일 스탠드업용 작업 요약 자동 생성
- 스프린트 리뷰를 위한 주간/월간 통계
- 팀 대시보드에서 모든 구성원의 작업 현황 한눈에 보기
CI/CD 연동
GitHub Actions에서도 활용 가능합니다:
1- name: Log to Notion
2 run: |
3 curl -X POST https://api.notion.com/v1/pages \
4 -H "Authorization: Bearer ${{ secrets.NOTION_TOKEN }}" \
5 -d "$BUILD_LOG"
6도입 효과
Before & After
도입 전:
- "어제 뭘 했더라?" 매번 고민
- 커밋 메시지만으로는 컨텍스트 부족
- 회고 시간에 작업 내용 기억 안남
도입 후:
- "오늘 뭘 했더라?" → 한 마디로 해결
- 풍부한 컨텍스트와 구조화된 로그
- 시각적이고 검색 가능한 작업 히스토리
- 팀 공유와 피드백이 쉬워짐
마무리
bash 명령어에서 자연어 기반 개발 로그 관리로의 전환은 단순한 도구 변경이 아니에요. 개발 과정을 기록하고 회고하는 방식 자체의 혁신입니다.
이제 코딩에만 집중하고, 로그 정리는 Claude에게 맡겨보세요. 여러분의 소중한 개발 여정이 체계적으로 기록되고, 언제든 돌아보며 성장할 수 있는 자산이 될 거예요.
핵심 포인트 요약:
-
OPENAPI_MCP_HEADERS환경변수로 확실한 인증 - 통합을 데이터베이스에 직접 연결 필수
- 9개 속성이 모두 자동으로 채워지는 스마트한 로그
- 자연어 요청으로 유연하고 직관적인 관리
참고 자료
Happy Coding!
감사합니다. 🌱
이 글이 도움되셨나요?
공유해주시면 더 많은 사람들이 볼 수 있어요!