velog-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| VELOG_ACCESS_TOKEN | No | Access token from Velog. Expires in about an hour. | |
| VELOG_ALLOW_PUBLIC | No | Set to '1', 'true', 'yes', or 'on' to enable public publishing. Off by default. | |
| VELOG_REFRESH_TOKEN | No | Refresh token from Velog browser cookie. Lasts 30 days. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| velog_get_postA | 벨로그 글 하나를 본문까지 읽어온다. username + url_slug 조합이나 글 id 로 지정한다. 예: https://velog.io/@velopert/react-context-tutorial → username="velopert", url_slug="react-context-tutorial" |
| velog_list_postsA | 특정 사용자의 글 목록을 최신순으로 가져온다. tag 로 좁힐 수 있다. cursor 에 직전 응답의 마지막 글 id 를 주면 다음 페이지를 읽는다. |
| velog_search_postsA | 키워드로 벨로그 전체를 검색한다. username 을 주면 그 사람 글 안에서만 찾는다 — "내가 예전에 쓴 그 글" 을 찾을 때 이 조합을 쓴다. |
| velog_trending_postsA | 벨로그 전체에서 지금 많이 읽히는 글. 기간(day/week/month/year)을 골라 본다. 내 글이 아니라 벨로그 전체 순위다. 무엇이 반응을 얻는지, 어떤 주제가 도는지 볼 때 쓴다. 특정 사용자의 글은 velog_list_posts, 검색은 velog_search_posts 를 쓴다. year 기간은 벨로그가 limit>20 이면 빈 결과를 주므로 20 으로 낮추고, offset 도 1000 까지만 받는다. 조정하면 응답 notes 에 적어 준다. 인증 불필요. |
| velog_recent_postsA | 벨로그 전체 최신 글. 지금 무슨 글이 올라오는지 훑을 때. |
| velog_create_draftA | 벨로그에 임시저장 글(초안)을 만든다. 발행되지 않으며 작성자 본인만 볼 수 있다. 이 도구는 어떤 설정에서도 발행하지 않는다 — 발행하려면 velog_publish_draft 를 따로 부를 것. body 는 마크다운으로 쓴다. |
| velog_update_draftA | 기존 초안을 통째로 교체한다. 부분 수정이 아니다. 생략한 필드는 유지되지 않고 초기화된다 — tags 를 안 주면 기존 태그가 전부 지워지고, url_slug 를 안 주면 제목에서 새로 만들어 주소가 바뀌며, series_id 를 안 주면 기존 시리즈 연결이 끊긴다. 그래서 수정 전에 velog_get_post 로 현재 값을 읽어 바꾸지 않을 필드도 그대로 다시 넘기는 것을 권한다. 발행된 글의 id 는 거부한다(비공개로 내려가는 사고 방지). |
| velog_list_draftsA | 내 임시저장 글 목록. 초안을 이어 쓰거나 수정하기 전에 id 를 여기서 확인한다. |
| velog_blog_statsA | 한 사용자의 글 전체를 긁어 조회수·좋아요·댓글을 집계한다. 연도별·태그별 분포와 상위 글 순위를 함께 낸다. 벨로그에 없는 화면이라 직접 계산한다. 글이 많으면 여러 번 요청하므로 몇 초 걸릴 수 있다. |
| velog_export_postsA | 한 사용자의 벨로그 글을 프론트매터가 붙은 마크다운 파일로 로컬에 저장한다. 벨로그에 공식 내보내기가 없어서 만든 기능이다. 파일 이름은 |
| velog_whoamiA | 현재 토큰으로 인증된 계정을 확인한다. 토큰이 살아있는지 점검하는 용도로도 쓴다. 다른 도구에서 username 을 생략하면 여기서 얻는 계정을 쓴다. |
| velog_get_userB | 벨로그 사용자의 프로필과 팔로워 수를 조회한다. |
| velog_list_seriesA | 사용자의 연재 시리즈 목록. 각 시리즈에 글이 몇 편인지 함께 준다. 초안을 특정 시리즈에 넣으려면 여기서 얻은 id 를 velog_create_draft 의 series_id 에 준다. |
| velog_user_tagsA | 사용자가 쓴 태그와 각 태그의 글 수. "이 사람이 뭘 주로 쓰나"를 가장 싸게 파악하는 방법이다. |
| velog_publish_postA | 새 글을 바로 발행한다. 초안을 거치지 않는다. 현재 설정에서는 비공개로만 발행된다 (공개 발행은 VELOG_ALLOW_PUBLIC=1 이 필요하다). 되돌리려면 velog_unpublish_post 로 초안으로 내릴 수 있다. |
| velog_publish_draftA | 기존 임시저장 글을 발행한다. 본문은 저장된 내용을 그대로 쓴다 — 다시 넘길 필요가 없다. 현재 설정에서는 비공개로만 발행된다 (공개 발행은 VELOG_ALLOW_PUBLIC=1 이 필요하다). |
| velog_unpublish_postA | 발행된 글을 임시저장으로 되돌린다. 글은 사라지지 않고 초안 목록으로 간다. ★ 이미 나간 RSS·구독 메일은 회수되지 않는다 — 검색엔진 캐시도 한동안 남는다. |
| velog_update_postA | 이미 발행된 글을 수정한다. 발행 상태(is_temp:false)는 유지된다. 생략한 필드는 기존 값을 그대로 유지한다 — 초안 도구와 달리 전체 교체가 아니다. 초안 id 는 거부한다(초안 수정은 velog_update_draft). 현재 설정에서는 공개 범위를 바꿀 수단이 없다 — 공개 글은 공개로, 비공개 글은 비공개로 그대로 남는다. 범위를 바꾸려면 VELOG_ALLOW_PUBLIC=1 이 필요하다. |
| velog_render_diagramA | 구성도·흐름도를 그려 PNG 로 만들고 벨로그에 올린다. 본문에 붙일 마크다운을 돌려준다. 좌표만 주면 나머지는 렌더러가 맞춘다 — 노드 폭·캔버스 크기·선 꺾임·라벨 위치는 브라우저 실측으로 정해지고, 글자 삐져나옴/선 관통/선끼리 교차와 겹침/살짝 어긋난 줄은 자가감사가 잡는다. 감사에 걸리면 올리지 않고 무엇이 문제인지 알려준다. 이 판단은 끌 수 없고, 감사에 걸린 산출물은 velog_upload_image 로도 받지 않는다. 고쳐서 다시 그릴 것. 밋밋하게 나오면 입력이 밋밋한 것이다. 사람 손 그림처럼 보이게 하는 셋: 노드마다 icon 과 tag(포트·버전·역할), 관련 노드는 groups 로 묶기, 흐름 종류가 둘 이상이면 planes 로 색 가르기. 나란한 노드는 y 를 맞추면 선이 곧게 나간다. 배치를 먼저 설계한다. 카드는 격자(행 간격 200 안팎)에 두고, 옆으로 나란하면 y 를 같게, 어긋낼 거면 카드 높이 이상 어긋낸다. 한 면에는 나가는 선만 또는 들어오는 선만 둔다. 감사를 피하려고 points·label_at 을 쓰지 않는다(끝이 허공에 뜨거나 라벨이 선에서 떨어지면 감사가 잡는다). 걸리면 카드 자리를 고친다. 아이콘: alert arrow bell bolt branch browser cache chart check clock cloud code cross database file gear key layers lock mail mobile network package retry search server terminal user 톤: slate gray blue green amber yellow purple teal rose indigo |
| velog_render_sequenceA | 참가자와 순서 있는 메시지로 시퀀스 다이어그램을 그려 PNG 로 만들고 벨로그에 올린다. 좌표를 받지 않는다 — 열 간격, 행 높이, 활성 막대, 묶음 상자를 전부 렌더러가 실측으로 정한다. 라벨이 안 들어가면 글자를 줄이는 게 아니라 그 구간을 넓히고, 길면 접고, 접힌 만큼 행을 높인다. 메시지는 배열 순서가 곧 시간 순서다. 중간에 하나를 끼워 넣어도 아래가 알아서 밀린다. 구성도나 흐름도(시간 축이 없는 그림)는 velog_render_diagram 을 쓸 것. 깔끔하게 나오는 건 레이아웃이 아니라 입력이 정한다. 세로 길이를 지배하는 셋:
|
| velog_render_coverA | 글 목록·SNS 미리보기에 쓸 표지 이미지(1200×630)를 만든다. 제목이 길면 줄바꿈하고, 그래도 안 들어가면 글자 크기를 줄인다 — 전부 실측 기준이다. 만든 뒤 velog_update_post 의 thumbnail 에 돌려받은 주소를 넣으면 표지가 된다. |
| velog_upload_imageA | 로컬 이미지 파일을 벨로그에 올리고 본문용 마크다운을 돌려준다. PNG·JPEG·GIF·WebP 만 받으며, 확장자가 아니라 파일 내용으로 판정한다. ⚠️ 올라간 주소는 공개다 — 주소를 아는 사람은 누구나 볼 수 있고, 벨로그에는 이미지 삭제 API 가 없다. 올리기 전에 무슨 파일인지 확인하라. |
| velog_diagnoseA | 지금 벨로그 GraphQL 스키마가 이 서버가 만들어질 때의 기준선과 같은지 대조한다. 도구가 이유 없이 실패하거나 응답 모양이 이상할 때 원인을 가르는 1차 진단이다. 벨로그는 비공식 API 라 예고 없이 바뀐다. 읽기 전용이고 인증이 필요 없다. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 23 tools
Most tools are clearly distinct (e.g., publish vs. draft, render vs. upload). However, velog_publish_post and velog_publish_draft overlap in purpose (both publish), and velog_update_draft vs. velog_update_post have different behaviors but similar names. The render tools are well-separated by diagram type.
All tools follow a consistent 'velog_' prefix with verb_noun pattern (e.g., velog_create_draft, velog_list_posts, velog_publish_draft). There are no mixed conventions or vague verbs, making the set highly predictable.
At 25 tools, the set is slightly above the ideal range but justified for a comprehensive Velog client. Each tool serves a distinct domain function (read, write, publish, render, stats), and none feel redundant. A few could be merged (e.g., publish_post/publish_draft) but overall scoped well.
The set covers a full lifecycle: read (list/get/search), write (create/update draft, publish, unpublish), modify (update_post), and utilities (stats, export, render). Minor gaps include lack of direct post deletion (only unpublish) and no tag management, but agents can work around these.