AI 코딩 세션의 트랜스크립트를 캡처하여 스탠드업 미팅, 보고서, ADR, PR 설명으로 자동 변환하고 문서화합니다.
다른 이름 MUSE-CODE-SPACE/vibe-coding-mcp, vibe-coding-mcp
- 스타
- 1
- Tools
- 17
- 다운로드, 30일
- —
- 최신 버전
- 2.12.1
- 마지막 커밋
- 2026년 10월 22일
- 라이선스
- MIT
vibe-coding MCP란?
vibe-coding은(는) MCP server입니다. AI 코딩 세션의 트랜스크립트를 캡처하여 스탠드업 미팅, 보고서, ADR, PR 설명으로 자동 변환하고 문서화합니다. 17개 도구를 제공합니다. 예: muse_capture_transcript, muse_digest, muse_session_history.
프로젝트 README에서 생성된 요약
vibe-coding MCP server 정보
vibe-coding-mcp는 Claude Code를 사용하는 개발자가 AI 코딩 세션을 자동으로 기록하고 변환할 수 있도록 설계된 문서화 도구입니다. 로컬 디렉토리에 저장된 세션 트랜스크립트를 파싱하여 프롬프트, 파일 변경 사항, 실행된 명령 및 설계 결정을 캡처합니다. 이 과정은 로컬 디스크에서 수행되며 초기 캡처 시 API key가 필요하지 않으므로, 사용자가 게시를 선택하기 전까지 데이터의 프라이버시가 보장됩니다.
이 MCP server는 보고서 생성을 위한 muse_digest 및 콘텐츠 내보내기를 위한 muse_publish_document와 같은 17개의 특화된 도구를 제공합니다. 사용자는 Notion, Obsidian, GitHub Wiki, Confluence, Slack 또는 Discord와 같은 플랫폼과 워크플로우를 통합할 수 있습니다. Claude Code 설정에 hook을 설치하면, 간단한 슬래시 명령어나 자연어 요청을 통해 가공되지 않은 대화 기록을 스탠드업 미팅, 주간 보고서, ADR, PR 설명과 같은 구조화된 자산으로 변환합니다.
활용 사례
- 1Pull request 설명 생성특정 세션의 설계 결정과 코드 변경 사항을 분석하여 PR 설명 생성을 자동화할 수 있습니다.
- 2아키텍처 결정 문서화기술적 선택의 근거를 추출하여 Obsidian vault에 ADR로 직접 게시할 수 있습니다.
- 3과거 코딩 컨텍스트 검색개발자는 특정 키워드나 파일 경로를 사용하여 과거 세션을 쿼리함으로써 특정 구현 방식이 선택된 이유를 파악할 수 있습니다.
프로젝트의 README를 바탕으로 작성되었습니다. 모든 활용 사례는 해당 내용의 인용문과 대조하여 확인합니다.
vibe-coding MCP 설치 방법
형식 확인: 2026년 11월 10일Cursor에 추가Goose에 추가Claude Code에 vibe-coding MCP 설치
$ claude mcp add vibe-coding-mcp -- npx -y vibe-coding-mcpCursor에 vibe-coding MCP 설치
~/.cursor/mcp.json
{
"mcpServers": {
"vibe-coding-mcp": {
"command": "npx",
"args": [
"-y",
"vibe-coding-mcp"
]
}
}
}VS Code에 vibe-coding MCP 설치
.vscode/mcp.json
{
"servers": {
"vibe-coding-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"vibe-coding-mcp"
]
}
}
}VS Code CLI에 vibe-coding MCP 설치
$ code --add-mcp '{"name":"vibe-coding-mcp","type":"stdio","command":"npx","args":["-y","vibe-coding-mcp"]}'Claude Desktop에 vibe-coding MCP 설치
claude_desktop_config.json
{
"mcpServers": {
"vibe-coding-mcp": {
"command": "npx",
"args": [
"-y",
"vibe-coding-mcp"
]
}
}
}Codex에 vibe-coding MCP 설치
$ codex mcp add vibe-coding-mcp -- npx -y vibe-coding-mcpCodex config.toml에 vibe-coding MCP 설치
~/.codex/config.toml
[mcp_servers.vibe-coding-mcp] command = "npx" args = ["-y", "vibe-coding-mcp"]
Gemini CLI에 vibe-coding MCP 설치
$ gemini mcp add -s user vibe-coding-mcp npx -- -y vibe-coding-mcpGemini settings.json에 vibe-coding MCP 설치
~/.gemini/settings.json
{
"mcpServers": {
"vibe-coding-mcp": {
"command": "npx",
"args": [
"-y",
"vibe-coding-mcp"
]
}
}
}vibe-coding MCP 도구 17
README에서 감지됨muse_capture_transcriptmuse_digestmuse_session_historymuse_session_statsmuse_summarize_design_decisionsmuse_analyze_codemuse_generate_dev_documentmuse_create_session_logmuse_export_sessionmuse_normalize_for_platformmuse_publish_documentmuse_collect_code_context
| muse_capture_transcript | — | |
| muse_digest | — | |
| muse_session_history | — | |
| muse_session_stats | — | |
| muse_summarize_design_decisions | — | |
| muse_analyze_code | — | |
| muse_generate_dev_document | — | |
| muse_create_session_log | — | |
| muse_export_session | — | |
| muse_normalize_for_platform | — | |
| muse_publish_document | — | |
| muse_collect_code_context | — |
도구 17개 모두 보기도구 수 줄이기
muse_gitmuse_auto_tagmuse_templatemuse_project_profilemuse_batch
| muse_git | — | |
| muse_auto_tag | — | |
| muse_template | — | |
| muse_project_profile | — | |
| muse_batch | — |
자동 검사
2026년 11월 13일에 실행됨전체 보고서 →자동 검사를 통과했습니다. 이는 보안 감사가 아닙니다. 코드를 직접 읽고 서버에 필요한 최소한의 권한만 부여하십시오. 검사 방식
- 소스 저장소 연결 및 접근 가능muse-code-space/vibe-coding-mcp is public and reachablegithub.com/muse-code-space/vibe-coding-mcp ↗통과
- 패키지가 이 저장소를 소스로 명시vibe-coding-mcp names muse-code-space/vibe-coding-mcp as sourcenpmjs.com/package/vibe-coding-mcp ↗통과
- 빌드 출처(Sigstore 증명)No build attestation published for this release검사되지 않음
- 오픈 소스 라이선스 (OSI)MITspdx.org/licenses/MIT.html ↗통과
- 최근 1년 내 커밋 또는 릴리스Last commit or release 2026-10-22github.com/muse-code-space/vibe-coding-mcp ↗통과
- OpenSSF Scorecard검사되지 않음
- 패키지 이름이 인기 패키지와 유사하지 않음No popular package one edit away from vibe-coding-mcp통과
- 패키지 및 해당 종속성에 중요한 보안 권고 없음149 resolved dependencies checked; no critical advisoryosv.dev ↗통과
- 모델에 대한 숨겨진 지침 없음17 tool descriptions and the README read; no override phrases, credential paths or hidden characters통과
- 파괴적인 도구에 라벨 표시됨No tool named like delete, drop or exec통과
- 원격 엔드포인트가 MCP 핸드셰이크에 응답검사되지 않음
README
GitHub에서 보기vibe-coding-mcp
Your AI coding sessions, documented automatically. Captures every Claude Code session from its transcript — prompts, files changed, commands, design decisions — then turns them into standups, weekly reports, ADRs and PR descriptions, and publishes them to Notion / Obsidian / GitHub Wiki / Confluence / Slack / Discord.
Why vibe-coding?
You spent four hours pair-programming with Claude. You made three architectural decisions, wrote eight files, and reverted twice. Tomorrow you will not remember why you picked the second option over the first. Most people solve this with manual journaling that lasts two weeks, or by trawling git log after the fact — and git log knows what changed, not why.
vibe-coding-mcp fixes that at the source. Claude Code already writes a full transcript of every session to ~/.claude/projects/. A tiny hook (vibe-coding-mcp hook) parses that transcript after every turn and stores a structured session locally: what you asked, which files were written or edited (with the code), which commands ran, how long it took, which branch, and the design decisions it can detect in the conversation. From there, 17 MCP tools turn those sessions into a standup, a weekly report, a daily log, a DESIGN / ADR / README / API doc, or a PR description, and publish them anywhere.
No API key needed for capture. Everything stays on your disk until you publish.
30-second install
# 1. Register the MCP server with Claude Code (tools, resources, slash-command prompts)
claude mcp add -s user vibe-coding-mcp -- npx -y vibe-coding-mcp
# 2. Install the capture hooks into ~/.claude/settings.json (backup written first)
npx -y vibe-coding-mcp init
# 3. Restart Claude Code. Then import the sessions you already have and check health
npx -y vibe-coding-mcp capture --all
npx -y vibe-coding-mcp doctor
Then, inside Claude Code:
/standup → Yesterday / Today / Blockers from captured sessions
/weekly-report → Shipped / Decisions / In progress / Next, per project
/daily-vibe-log → today's sessions as one log, offer to publish
@vibe-coding://search/redis → every session that touched redis (titles, prompts, or file paths)
Or just ask: "why did we choose JWT over sessions last week?", "document yesterday's session as a DESIGN doc and put it in my Obsidian vault", "write the PR description for this refactor".
Upgrading from v2.14? The old README's hook recipe used
claude mcp call, which is not a real Claude Code command, so nothing was ever captured. Runnpx vibe-coding-mcp initand remove the old entries. Seedocs/AUTO_CAPTURE.md.
What's new in v2.15.0
- Auto-capture that works.
vibe-coding-mcp hookreads Claude Code's hook JSON on stdin, parses the session transcript, and upserts one session per Claude session (idempotent, exit 0 always, nothing on stdout). init/doctor/captureCLI. Install the hooks with a merge + backup, diagnose, backfill history.muse_digest. Standup / weekly / monthly report over captured sessions, grouped by day · project · tag, English or Korean.muse_capture_transcript. Capture on demand from inside the chat ("save this session").- Resources
vibe-coding://sessions/today,vibe-coding://search/{query}and prompts/standup,/weekly-report. - Agent Skill.
skills/vibe-coding/tells any skill-aware agent (Claude Code, Cursor, Codex, …) when and how to use the server.npm run skill:packbuilds the zip.
Real use cases
1. "Write my standup"
/standup calls muse_digest for yesterday and today plus muse_git status, and returns three bullet groups. Every bullet traces to a captured session title, file path, or decision — nothing invented.
2. "What did I ship this week?" (for your 1:1, Slack, or Notion)
/weekly-report calls muse_digest { period: "week", groupBy: "project" }: totals (sessions, hours, files, decisions), highlights (decisions with rationale), per-project sessions with the files they touched, and most-touched files. Optionally muse_publish_document to Notion / Slack.
3. "Why did we pick option B?"
@vibe-coding://search/<keyword> matches titles, summaries, tags and touched file paths. Open the session; designDecisions holds problem → choice → rationale, and summary holds the actual prompts you typed. This is the context a diff cannot give you.
4. "PR description for a refactor that touched 11 files"
/refactor-context chains session → muse_summarize_design_decisions → muse_analyze_code (AST + Mermaid) → muse_git diff into Why / What changed / Trade-offs / How to review.
5. "Fill my Obsidian vault with ADRs"
muse_summarize_design_decisions over a session, muse_generate_dev_document { documentType: "DESIGN" }, muse_publish_document { platform: "obsidian" } — frontmatter, tags and a session back-reference included.
Tools / Resources / Prompts
| Name | Type | What it does |
|---|---|---|
muse_capture_transcript |
tool | (new) Claude Code transcript → stored session (capture / preview / list, all for backfill) |
muse_digest |
tool | (new) Standup / weekly / monthly report over captured sessions, grouped by day / project / tag |
muse_session_history |
tool | save / get / update / delete / list / search / stats over ~/.vibe-coding-mcp/sessions/ |
muse_session_stats |
tool | Productivity dashboard: sessions/day, decisions/session, language breakdown |
muse_summarize_design_decisions |
tool | Extract decisions (problem → options → choice → trade-off), EN/KO, optional Claude API |
muse_analyze_code |
tool | AST analysis (TypeScript / Python / Go) + Mermaid diagrams |
muse_generate_dev_document |
tool | README / DESIGN / TUTORIAL / CHANGELOG / API / ARCHITECTURE generator |
muse_create_session_log |
tool | Daily or per-session log composition |
muse_export_session |
tool | Export sessions to Markdown / JSON / HTML |
muse_normalize_for_platform |
tool | Markdown quirks for Notion / GitHub Wiki / Obsidian |
muse_publish_document |
tool | Publish to Notion / GitHub Wiki / Obsidian / Confluence / Slack / Discord |
muse_collect_code_context |
tool | Pull code blocks + summary out of raw text |
muse_git |
tool | status / log / diff / branch / snapshot + decision extraction from commits |
muse_auto_tag |
tool | Tag suggestions (Claude API, optional) |
muse_template |
tool | Custom doc templates |
muse_project_profile |
tool | Per-project defaults (platform, tags, language) |
muse_batch |
tool | Several tool calls in one round-trip |
vibe-coding://sessions/list |
resource | All captured sessions |
vibe-coding://sessions/today |
resource | (new) Sessions started today, with files touched |
vibe-coding://sessions/{id} |
resource | One session in full |
vibe-coding://search/{query} |
resource | (new) Keyword search incl. file paths |
vibe-coding://config |
resource | Which publish platforms are configured |
/daily-vibe-log |
prompt | Today's sessions → one daily log |
/standup |
prompt | (new) Yesterday / Today / Blockers |
/weekly-report |
prompt | (new) Shipped / Decisions / In progress / Next |
/document-session |
prompt | Session → dev document → publish |
/refactor-context |
prompt | Session → PR description |
The skill
skills/vibe-coding/ is an Agent Skill (SKILL.md + references/ + scripts/setup.sh + assets/). It teaches the agent: check that capture is running before reporting, which tool chain matches which request, output shapes for standup / weekly / PR, and the rule that every reported line must trace to a captured session. Install it alongside the MCP server:
# Claude Code: drop it into your skills directory
cp -r skills/vibe-coding ~/.claude/skills/
# or build a zip for a marketplace (Agensi, etc.)
npm run skill:pack # → dist-skill/vibe-coding-skill-<version>.zip
How it works
Claude Code ──Stop / SessionEnd hook──▶ vibe-coding-mcp hook ──▶ ~/.vibe-coding-mcp/sessions/*.json
│ (stdin: session_id, │ parse ~/.claude/projects/<slug>/<id>.jsonl
│ transcript_path, cwd) │ prompts · files+code · commands · timing · decisions
│ │ upsert by claudeSessionId
▼
Claude (or any MCP client) ──▶ src/cli.ts ──▶ src/stdio.ts ─┐
src/index.ts (HTTP, POST /mcp) ─┴─▶ src/core/mcpServerFactory.ts
├─ toolRegistry.ts (17 muse_* tools)
├─ resources.ts (5 resources)
└─ prompts.ts (5 prompts)
│
▼
src/tools/*.ts · src/core/{captureEngine,transcriptParser}.ts
src/core/sessionStorage.ts · src/platforms/*.ts
Design choices that matter:
- Capture reads the transcript, not the editor. Claude Code already logs everything; we parse it after the fact. The hook does no network calls, writes nothing to stdout, and exits 0 even on failure, so it can never slow down or break a session.
- One session per Claude session. The
Stophook fires after every turn; captures are keyed onclaudeSessionIdand update in place. User-added tags survive updates. - Local-first.
~/.vibe-coding-mcp/sessions/<id>.json. No DB, no telemetry.grep, back up, or sync it however you like. - One registry, two transports. HTTP and stdio expose the same 17 tools / 5 resources / 5 prompts via
createMcpServer().
CLI reference
vibe-coding-mcp start the MCP server (stdio)
vibe-coding-mcp init install Stop + SessionEnd hooks into ~/.claude/settings.json
--project | --local target .claude/settings.json | .claude/settings.local.json
--dry-run | --print show merged file | print only the hooks block
--remove uninstall
--command "<cmd>" custom hook command
vibe-coding-mcp capture capture the newest transcript for the cwd
--all every transcript for the cwd (backfill)
--transcript <path> --cwd <dir> --dry-run --json
vibe-coding-mcp doctor hooks · transcripts · store · last hook run · platforms
vibe-coding-mcp hook (used by the hooks) stdin JSON → capture
Configuration
| Env var | Required for | Purpose |
|---|---|---|
| (none) | capture, digest, search, docs | Works with zero configuration |
ANTHROPIC_API_KEY |
useAI options, muse_auto_tag |
Claude-API-powered analysis |
NOTION_API_KEY + NOTION_DATABASE_ID |
Notion publishing | |
GITHUB_TOKEN + GITHUB_REPO |
GitHub Wiki publishing | |
OBSIDIAN_VAULT_PATH |
Obsidian default vault | or pass options.vaultPath |
CONFLUENCE_BASE_URL + CONFLUENCE_USERNAME + CONFLUENCE_API_TOKEN + CONFLUENCE_SPACE_KEY |
Confluence | |
SLACK_WEBHOOK_URL / DISCORD_WEBHOOK_URL |
Slack / Discord | |
VIBE_CODING_STORAGE_DIR |
— | Move the session store |
CLAUDE_CONFIG_DIR |
— | If Claude Code's config is not in ~/.claude |
PORT |
HTTP mode only | default 3000 |
Tools that need an unconfigured integration return a structured INTEGRATION_NOT_CONFIGURED error instead of crashing.
Known limitations
- Claude Code only (for now). Capture parses Claude Code's transcript format. Cursor / Codex transcripts are on the roadmap. The MCP tools themselves work from any MCP client.
- Decision extraction is heuristic unless
useAI: truewith an API key: it looks for "decided / chose / instead of / because" patterns in EN and KO. - AST analysis covers TS / Python / Go.
- Publishing is one-way. Edits made in Notion / Wiki are not pulled back.
- Single-user store. Team search across everyone's sessions needs a shared store (roadmap).
When NOT to use this
- Automatic commit messages → use aicommits or similar; this generates documents.
- Team-wide search across everyone's sessions → build a Notion DB on top, or wait for the shared store.
- Hand-written rich notes → use Obsidian / Notion directly; this is capture-then-publish.
Roadmap
- Cursor / Codex CLI transcript capture.
- Shared session store (S3 / Git / WebDAV) and team mode.
prepare-commit-msgsuggestions from the current session's decisions.- Rust / Swift / Kotlin AST + diagrams.
Contributing
git clone https://github.com/MUSE-CODE-SPACE/vibe-coding-mcp
cd vibe-coding-mcp
npm install
npm run typecheck && npm test && npm run build
node dist/cli.js capture --dry-run # try the capture engine on your own transcript
Adding a tool is one file in src/tools/<name>.ts, a Zod schema in src/core/schemas.ts, and one entry in src/core/toolRegistry.ts. CI runs typecheck + build + tests on Node 22 and 24.
Security
Paths are validated, filenames sanitized, webhook URLs must be HTTPS and allowlisted, outbound HTTP has timeouts and backoff — see src/core/security.ts and SECURITY.md. The capture hook stores only your prompts, the assistant's prose, the code it wrote, and the commands it ran; tool outputs, sub-agent side-chains and system reminders are dropped.
Report vulnerabilities privately via a GitHub Security Advisory: https://github.com/MUSE-CODE-SPACE/vibe-coding-mcp/security/advisories/new.
License
MIT — see LICENSE.
Maintainer
@yoon-k (MUSE-CODE-SPACE). Issues + support: https://github.com/MUSE-CODE-SPACE/vibe-coding-mcp/issues.
한국어 요약
vibe-coding-mcp는 Claude Code 세션을 자동으로 문서화하는 MCP 서버 + 에이전트 스킬입니다. Claude Code가 남기는 트랜스크립트(~/.claude/projects/)를 훅이 매 턴마다 파싱해서 프롬프트 · 수정한 파일과 코드 · 실행한 명령 · 소요 시간 · 브랜치 · 설계 결정을 ~/.vibe-coding-mcp/sessions/에 저장합니다. API 키 없이 동작하고, 발행하기 전까지는 아무것도 외부로 나가지 않습니다.
claude mcp add -s user vibe-coding-mcp -- npx -y vibe-coding-mcp # MCP 등록
npx -y vibe-coding-mcp init # 훅 설치 (settings.json 백업 후 병합)
npx -y vibe-coding-mcp capture --all # 기존 세션 가져오기
npx -y vibe-coding-mcp doctor # 상태 확인
Claude Code 안에서 /standup(어제·오늘·블로커), /weekly-report(주간 보고, language: ko 지원), /daily-vibe-log, @vibe-coding://search/키워드를 바로 쓸 수 있고, "지난주에 왜 JWT를 골랐지?", "어제 세션을 DESIGN 문서로 만들어서 Obsidian에 넣어줘", "이 리팩터링 PR 설명 써줘" 같은 요청에 muse_* 도구 17개가 대응합니다.
v2.14의 훅 레시피(
claude mcp call)는 존재하지 않는 명령이라 실제로 캡처가 되지 않았습니다. v2.15에서init으로 교체하세요.
설치·검증·백필은 docs/AUTO_CAPTURE.md, 변경 이력은 CHANGELOG.md, 스킬 패키지는 skills/vibe-coding/ 참고.
vibe-coding MCP 질문
vibe-coding MCP를 Claude Code에 추가하려면 어떻게 하나요?
터미널에서 claude mcp add vibe-coding-mcp -- npx -y vibe-coding-mcp를 실행합니다. 모든 프로젝트에서 사용할 수 있게 하려면 --scope user를 추가합니다.
vibe-coding MCP를 Cursor에 추가하려면 어떻게 하나요?
~/.cursor/mcp.json를 열고 mcpServers 아래에 서버를 추가합니다. 위 설치 섹션에 표시된 Cursor 구성을 사용합니다.
vibe-coding MCP는 어떤 도구를 제공하나요?
17개 도구를 제공합니다. 예: muse_capture_transcript, muse_digest, muse_session_history, muse_session_stats, muse_summarize_design_decisions.
세션 캡처를 위해 API key가 필요한가요?
아니요, 캡처 과정에는 API key가 필요하지 않습니다. 모든 데이터는 사용자가 게시를 선택하기 전까지 로컬 디스크에 저장됩니다.
PR 설명을 생성하는 데 사용할 수 있나요?
네, /refactor-context 프롬프트를 사용하여 세션 데이터, 설계 결정 요약, git diff를 연결해 PR 설명을 생성할 수 있습니다.
문서를 게시할 수 있는 플랫폼은 무엇인가요?
Notion, Obsidian, GitHub Wiki, Confluence, Slack, Discord에 문서를 게시할 수 있습니다.