velog-mcp-claude
downloads
Velog ๊ฐ๋ฐ์(@velopert )๋ก๋ถํฐ ์ด์์ ํ์ฉํ๋ค๋ ๋ต๋ณ์ ๋ฐ์ ๋
๋ฆฝ ์คํ์์ค์
๋๋ค.
Claude๊ฐ Velog์ ์ง์ ํฌ์คํธ๋ฅผ ์์ฑยท๋ฐํยท์์ ยท์ญ์ ํ๊ณ , ๋๊ธยท์ข์์ยท๊ฒ์ยทํธ๋ ๋ฉ๊น์ง ๋ค๋ฃฐ ์ ์๋ MCP ์๋ฒ.
stdio ๊ธฐ๋ฐ ํ์ค MCP ์๋ฒ๋ผ Claude Code, Claude Desktop, Codex CLI ๋ฑ MCP๋ฅผ ์ง์ํ๋ ํด๋ผ์ด์ธํธ์์ ๋ชจ๋ ๋์ํฉ๋๋ค.
npm : velog-mcp-claude | ์๊ตฌ์ฌํญ : Node.js 18+
์ค์น
npx -p velog-mcp-claude velog-mcp-setup
Velog์ ๋ก๊ทธ์ธํ ์ํ์์ ๋ธ๋ผ์ฐ์ DevTools โ Application โ Cookies โ https://velog.io์์ access_token๊ณผ refresh_token ๊ฐ์ ๋ณต์ฌํด ์
๋ ฅํ์ธ์.
ํ ํฐ์ ~/.velog-mcp.json์ 0600 ๊ถํ์ผ๋ก ์ ์ฅ๋ฉ๋๋ค.
์ค์
Claude Code
claude mcp add velog -- npx -y velog-mcp-claude
์ ์ญ์ผ๋ก ์ถ๊ฐํ๋ ค๋ฉด:
claude mcp add --scope global velog -- npx -y velog-mcp-claude
Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json์ ์ถ๊ฐ:
{
"mcpServers" : {
"velog" : {
"command" : "npx" ,
"args" : [ "-y" , "velog-mcp-claude" ]
}
}
}
Codex CLI
codex mcp add velog -- npx -y velog-mcp-claude
๋๋ ~/.codex/config.toml์ ์ง์ ์ถ๊ฐ:
[mcp_servers.velog]
command = "npx"
args = ["-y" , "velog-mcp-claude" ]
๋ฑ๋ก ํ์ธ์ codex mcp list.
ํด ๋ชฉ๋ก
ํฌ์คํธ
ํด ์ค๋ช
velog_draft_postํฌ์คํธ ์ด์ ์์ฑ velog_publish_post์ด์์ Velog์ ๋ฐํ velog_list_posts๋ด ํฌ์คํธ ๋ชฉ๋ก ์กฐํ velog_get_postํน์ ํฌ์คํธ ์ ์ฒด ๋ด์ฉ ์กฐํ (์กฐํ์ ํฌํจ) velog_update_post๊ธฐ์กด ํฌ์คํธ ์์ velog_delete_postํฌ์คํธ ์ญ์ velog_upload_image๋ก์ปฌ ์ด๋ฏธ์ง๋ฅผ Velog CDN์ ์
๋ก๋ velog_import_from_githubGitHub ๋ธ๋ก๊ทธ ๋งํฌ๋ค์ด์ Velog ์ด์์ผ๋ก ๊ฐ์ ธ์ค๊ธฐ velog_git_to_postgit ์ปค๋ฐ ์ด๋ ฅ๊ณผ diff๋ฅผ ๋ถ์ํด ๋ธ๋ก๊ทธ ์ด์ ํ๋กฌํํธ ์์ฑ
์๋ฆฌ์ฆ
ํด ์ค๋ช
velog_list_series๋ด ์๋ฆฌ์ฆ ๋ชฉ๋ก ์กฐํ velog_create_series์ ์๋ฆฌ์ฆ ์์ฑ velog_update_series์๋ฆฌ์ฆ ์ด๋ฆยท์ค๋ช
์์ velog_append_to_seriesํฌ์คํธ๋ฅผ ์๋ฆฌ์ฆ์ ์ถ๊ฐ velog_delete_series์๋ฆฌ์ฆ ์ญ์
๋๊ธ
ํด ์ค๋ช
velog_get_commentsํฌ์คํธ ๋๊ธ ๋ชฉ๋ก ์กฐํ (๋๋๊ธ ํฌํจ) velog_write_comment๋๊ธ ๋๋ ๋๋๊ธ ์์ฑ velog_update_comment๋๊ธ ์์ velog_delete_comment๋๊ธ ์ญ์
์ข์์
ํด ์ค๋ช
velog_like_postํฌ์คํธ ์ข์์ velog_unlike_postํฌ์คํธ ์ข์์ ์ทจ์
ํ์
ํด ์ค๋ช
velog_search_postsํค์๋๋ก ํฌ์คํธ ๊ฒ์ velog_get_trendingํธ๋ ๋ฉ ํฌ์คํธ ์กฐํ (day / week / month / year) velog_trend_reportํธ๋ ๋ฉ ํฌ์คํธ ๋ถ์ ๋ฆฌํฌํธ velog_topic_researchํธ๋ ๋ฉ ํ๊ทธ ร ๋ด ํฌ์คํธ ๊ต์ฐจ๋ถ์์ผ๋ก ์์ง ์ ์ด ์ธ๊ธฐ ์ฃผ์ ๋ฐ๊ตด velog_get_rssํน์ ์ ์ ์ RSS ํผ๋ ์กฐํ (์ธ์ฆ ๋ถํ์)
๋ด ๊ณ์
ํด ์ค๋ช
velog_list_tags๋ด ํ๊ทธ ๋ชฉ๋ก๊ณผ ํ๊ทธ๋ณ ํฌ์คํธ ์ ์กฐํ velog_list_temp_posts์์์ ์ฅ ํฌ์คํธ ๋ชฉ๋ก ์กฐํ velog_get_notifications์๋ฆผ ๋ชฉ๋ก ์กฐํ (์ข์์ยท๋๊ธยทํ๋ก์ฐ, ์ฝ์ง ์์ ์ ํฌํจ) velog_get_reading_list์ฝ์ ๋ชฉ๋ก(๋ถ๋งํฌ) ์กฐํ
git ์ปค๋ฐ โ ๋ธ๋ก๊ทธ ์ด์
์ต๊ทผ ์ปค๋ฐ ์ด๋ ฅ๊ณผ diff๋ฅผ ๋ถ์ํด Claude๊ฐ ํ๊ตญ์ด ๊ธฐ์ ๋ธ๋ก๊ทธ ํฌ์คํธ๋ฅผ ์๋์ผ๋ก ์์ฑํฉ๋๋ค.
๋: "์ค๋ ์์
ํ ์ปค๋ฐ๋ค๋ก ๋ฒจ๋ก๊ทธ ํฌ์คํธ ์์ฑํด์ค"
๋: "์ง๋ 10๊ฐ ์ปค๋ฐ ๊ธฐ๋ฐ์ผ๋ก ๋ธ๋ก๊ทธ ๊ธ ์จ์ค"
๋: "v0.19.0 ํ๊ทธ ์ดํ ๋ณ๊ฒฝ์ฌํญ์ผ๋ก ํฌ์คํธ ์ด์ ๋ง๋ค์ด์ค"
repo_path: ๋ถ์ํ ๋ก์ปฌ git ์ ์ฅ์ ๊ฒฝ๋ก (๊ธฐ๋ณธ๊ฐ: ํ์ฌ ๋๋ ํฐ๋ฆฌ)
commits: ๊ฐ์ ธ์ฌ ์ต๊ทผ ์ปค๋ฐ ์ (๊ธฐ๋ณธ๊ฐ: 5)
since: ํน์ ์ปค๋ฐยทํ๊ทธ ์ดํ ๋ฒ์ ์ง์ (์: v0.19.0, HEAD~10)
include_diff: ์ฝ๋ diff ํฌํจ ์ฌ๋ถ (๊ธฐ๋ณธ๊ฐ: true)
max_diff_lines: diff์์ ๊ฐ์ ธ์ฌ ์ต๋ ์ค ์ (๊ธฐ๋ณธ๊ฐ: 200)
tags: ํฌ์คํธ์ ๋ฃ์ ํ๊ทธ ํํธ (๋ฏธ์ง์ ์ ํ์ผ ํ์ฅ์๋ก ์๋ ์ถ๋ก )
GitHub ๋ธ๋ก๊ทธ ๋ง์ด๊ทธ๋ ์ด์
Jekyll / Hugo ๋ฑ front matter๊ฐ ์๋ ๋งํฌ๋ค์ด์ ์ง์ํฉ๋๋ค. dry_run: true๋ก ๋จผ์ ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ฅผ ํ์ธํ์ธ์.
๋: "๋ด ๊นํ๋ธ ๋ธ๋ก๊ทธ _posts ํด๋ ๊ธ๋ค์ ๋ฒจ๋ก๊ทธ ์ด์์ผ๋ก ์ฎ๊ฒจ์ค"
์๋ ๊ฒฝ๋ก ์ด๋ฏธ์ง๋ GitHub raw URL๋ก ์๋ ๋ณํ
Private ์ ์ฅ์๋ github_token ํ๋ผ๋ฏธํฐ๋ก ์ ๊ทผ
GitHub API ํ๋ ์ด๊ณผ ์
ํ ํฐ ์์ด ์ฌ์ฉํ๋ฉด 60ํ/์๊ฐ ์ ํ์ด ์์ต๋๋ค. dry_run: true ํ ๋ฒ๋ง์ผ๋ก๋ ํ๋์ ์๋น ๋ถ๋ถ์ด ์์ง๋ ์ ์์ต๋๋ค.
ํ๋๋ฅผ ์ด๊ณผํ๋ฉด github_token์ ๋ฐ๊ธํด ์ ๋ฌํ์ธ์.
ํ ํฐ ๋ฐ๊ธ : GitHub โ Settings โ Developer settings โ Personal access tokens โ Tokens (classic) โ Generate new token
๊ณต๊ฐ ์ ์ฅ์: ์ค์ฝํ ์์ด ์์ฑํด๋ ๋์ง๋ง, public_repo๋ฅผ ์ฒดํฌํ๋ฉด ํ์คํฉ๋๋ค
๋น๊ณต๊ฐ ์ ์ฅ์: repo ์ฒดํฌ
ํ ํฐ์ ์ ๋ฌํ๋ฉด 5,000ํ/์๊ฐ์ผ๋ก ํ๋๊ฐ ์ฌ๋ผ๊ฐ๋๋ค.
์ธ์ฆ
access_token: ~24์๊ฐ TTL, Velog ์๋ฒ๊ฐ ์๋ ๊ฐฑ์
refresh_token: ~30์ผ TTL. ๋ง๋ฃ ์ npx -p velog-mcp-claude velog-mcp-setup ์ฌ์คํ
์ฃผ์์ฌํญ
draft๋ MCP ์๋ฒ ์ธ์
๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅ๋จ. ์ฌ์์ ์ ์๋ฉธ, 24์๊ฐ ํ ์๋ ๋ง๋ฃ.
๋ณด์กดํ๋ ค๋ฉด velog_publish_post(is_private: true)๋ก ๋น๊ณต๊ฐ ์ ์ฅ.
๋ก๋๋งต
docs/roadmap.md ์ฐธ๊ณ .
๋ฉด์ฑ
์กฐํญ
๋ด๋ถ GraphQL API๋ฅผ ๋ฆฌ๋ฒ์ค ์์ง๋์ด๋งํ์ฌ ๊ตฌํ๋์์ต๋๋ค. API ๊ตฌ์กฐ ๋ณ๊ฒฝ์ผ๋ก ์๊ณ ์์ด ๋์์ด ์ค๋จ๋ ์ ์์ต๋๋ค.