프로토타입 · 미리 보기: 공식 레지스트리의 모든 서버를 담고 있으며 30분마다 동기화해요. 리뷰와 계정 기능은 다음 단계에서 열려요.
PopNx MCPAI를 쓰는 사람을 위한 MCP 서버 · 쉬운 말로 설명해요

agentburn

제작자: Socialpranker버전 0.14.0i★ –i내 컴퓨터에서 실행
레지스트리 이름io.github.Socialpranker/agentburn

설치

개요

제작자가 쓴 설명(영어 원문)

Local profiler: which usage window took you out, and where your agent's money goes

PopNx MCP의 세 기둥

이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.

할 수 있는 일

이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.

  • 연결 방식: 내 컴퓨터에서 실행
  • 전송 방식: stdio
  • 카테고리: 기타

설치

쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.

설치하기 전에

  • 기본 점검: 1개 중 1개 통과
  • 내 컴퓨터에서 내 사용자 계정의 권한(파일, 네트워크, 앱)으로 실행돼요.
  • 레지스트리에 입력해야 할 키가 나와 있지 않아요.

필요한 것

  • PyPIPython의 uv 설치(uvx 명령어용)

어떤 앱을 쓰세요?

위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.

Claude Desktop → Settings → Developer → Edit Config를 열고 claude_desktop_config.json에 이 내용을 붙여 넣으세요

{
  "mcpServers": {
    "agentburn": {
      "command": "uvx",
      "args": [
        "agentburn",
        "mcp"
      ]
    }
  }
}

터미널에서 이 명령어를 실행하세요

claude mcp add agentburn -- uvx agentburn mcp

Cursor에서 열기

또는 설정을 직접 복사하기

프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요

{
  "mcpServers": {
    "agentburn": {
      "command": "uvx",
      "args": [
        "agentburn",
        "mcp"
      ]
    }
  }
}

브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.

VS Code에서 열기

또는 설정을 직접 복사하기

프로젝트의 .vscode/mcp.json에 붙여 넣으세요

{
  "servers": {
    "agentburn": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "agentburn",
        "mcp"
      ]
    }
  }
}

브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.

이 서버는 내 컴퓨터에서 실행되는데, ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.

선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.

이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.

할 수 있는 일

내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.

기본 점검i

누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 7일 점검

  • ✓ 통과

    제작자와 저장소 일치

    레지스트리 이름이 GitHub 계정 Socialpranker 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요

  • … 아직 점검 안 함

    계속 관리되고 있음

    아직 GitHub에서 이 저장소를 읽어 오지 않았어요

  • … 아직 점검 안 함

    라이선스 있음

    아직 GitHub에서 이 저장소를 읽어 오지 않았어요

  • – 해당 없음

    엔드포인트 응답

    내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요

  • – 해당 없음

    OAuth로 로그인

    내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요

  • … 아직 점검 안 함

    도구 설명에 숨겨진 지시 없음

    내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요

기타 카테고리의 다른 서버와 비교i

  • 이 카테고리의 다른 서버 32602개 중 0%보다 스타가 많아요
  • 이 카테고리의 다른 서버 32602개 중 33%보다 최근에 레지스트리에 공개됐어요
  • 기본 점검 결과가 이 카테고리의 다른 서버 32602개 중 100%와 같거나 더 좋아요

레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.

자주 묻는 질문

agentburn, 안전한가요?

해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.

어떤 키나 코드가 필요한가요?

레지스트리에 필수 키가 나와 있지 않아요. 다만 처음 쓸 때 로그인을 요구하는 서버도 있어요.

내 컴퓨터에서 실행되나요, 클라우드에서 실행되나요?

내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).

아직 관리되고 있나요?

GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(0.14.0)은 2개월 전 레지스트리에 올라왔어요.

어떤 앱에서 쓸 수 있나요?

Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 Python (uv)도 있어야 해요.

대신 쓸 수 있는 건 뭐가 있나요?

같은 카테고리에는: Spec Driven Development, Remote Desktop Commander, Rystic

대안

같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.

카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i

Spec Driven Development

제작자: formulahendry

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

내 컴퓨터에서 실행★ 440MIT14개월 전 업데이트
설치

Remote Desktop Commander

제작자: desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

클라우드에서 실행★ 211그저께 업데이트
설치

Rystic

제작자: Rystic-Inc

Start, seed, clock, inspect and diff Rystic API simulators from your agent.

내 컴퓨터에서 실행오늘 업데이트
설치

제작자의 README

README 열기

제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.

[Claude Code](#supported-agents) · [Codex CLI](#supported-agents) · [Gemini CLI](#supported-agents) · [opencode](#supported-agents) · [OpenClaw](#supported-agents) · [Hermes Agent](#supported-agents) — one normalized core, local, read-only, zero dependencies

uvx agentburn

[▶ Try it in your browser — no install](https://socialpranker.github.io/agentburn/)


You didn't run out on your average day

You ran out inside one window. On this machine that window was 5.4× the median one — same person, same week, same subscription.

Your assistant's own logs already know which window it was and what filled it. Nothing else on your machine does: the built-in counter shows a total, your invoice shows a total, and neither says *which five hours took you out.*

⏳ agentburn limits — claude-code · rolling 5-hour windows

PEAK WINDOW Aug 04 12:45–17:45 · 555M weighted opus 91% · sonnet 9% · cli 93% · subagent 7% TYPICAL WINDOW 104M median of 83 active 5h slots PEAK / TYPICAL 5.4× a wall is hit by the peak, not by the median

WHAT FILLS THE WINDOW cache reads 64% · cache writes 25% · output 11%

One command, no account, nothing leaves your computer:

uvx agentburn            # where it burns, and what to change

uvx agentburn limits # how fast you fill a usage window, and how long until the wall uvx agentburn context # what long contexts cost — and what a /clear at 150k would have saved

Two ways agents cost you, two questions

If you pay…what actually runs outask
a subscription (Claude Code Pro/Max)the rolling usage window — the invoice is fixed, the wall is notagentburn limits
per token (API keys, OpenClaw, Hermes)money, mostly while you're asleepagentburn

Both read the same local logs. Neither invents a number the data doesn't contain.

agentburn limits — the subscription view

Optimizing a subscription doesn't change your bill. It changes how far you get before you're cut off. That is a *window* problem, and windows need intra-session resolution — a single session routinely spans several of them.

  • Peak vs typical. Your worst rolling 5-hour window against the median of your own active ones. The ratio is the finding: a wall is hit by the peak.
  • What filled it — by model, by source (you / subagents / scheduled work), and by kind (cache reads vs cache writes vs output).
  • Measured against your own wall — automatically. Anthropic doesn't publish the formula behind those allowances, so agentburn refuses to invent a threshold. But Claude Code writes the cut-off into the transcript itself (*"You've hit your session limit · resets 8:30pm"*), and every one of those moments is a measured ceiling. With several, the ceiling is their median:
  YOUR MEASURED CEILING

median of 35 cut-offs Claude Code recorded itself ceiling 146M weighted tokens peak window 137% of your ceiling last 5h 16% of your ceiling TIME TO WALL 2.7 h at the pace of the last 30 min

No cut-off in your logs yet? --hit "2026-08-20 14:30" names one by hand. A measured ceiling is remembered in ~/.agentburn/ceiling.json, so the status line below knows it too.

  • Codex: the provider's own reading. Codex CLI writes rate_limits.used_percent next to every request. agentburn pairs each reading with your weighted usage of the same window and takes the median — a ceiling from the provider's arithmetic, not from a cut-off. Treat it as an estimate: that percentage counts every device and app on the account, while your local rollouts are only part of it — and when Codex stops reporting a window (plan or client change), a later peak is flagged as measured on earlier windows, not sold as an overrun.
  • Time to wall. Ceiling minus the current window, divided by the pace of the last half hour. The number you actually want while working.
  • The week, too. The heaviest rolling 7-day span, how much of it this week already is, and a weekly ceiling when Claude Code recorded a weekly cut-off.
  • By project. Sessions record their working directory; the peak window is split by it.
agentburn statusline — the wall, live, inside Claude Code

One line, no colour, built for Claude Code's statusLine:

⏳ 5h 63% · wall in 47 min · week 71%
{ "statusLine": { "type": "command", "command": "uvx agentburn statusline" } }

Reads only the last three days of logs (the ceiling comes from the state file), so it stays cheap enough to run on every turn.

agentburn context — what a long context costs

Every call re-reads its whole context, and on a subscription that re-reading *is* the window: a turn at 300k costs what three turns at 100k cost. Claude Code records the exact context size of every call, so this is measured, not modelled:

📏 agentburn context — claude-code · what a long context costs

CALLS 156,226 median context 143K · p90 316K · max 704K

WHERE THE WINDOW GOES, BY CONTEXT SIZE 100–200k ██████············ 35% 59,780 calls 200–400k ████████·········· 43% 42,420 calls

400k ██················ 11% 7,257 calls

IF YOU HAD RESTARTED AT… /clear at 100K → 41% of the window not spent (108,573 calls were past it) /clear at 150K → 26% of the window not spent (73,600 calls were past it)

WHAT A SKILL COSTS handoff 7.96K per load × 226 = 1.8M claude-api 33.6K per load × 14 = 470K

  • The `/clear` arithmetic — the part of every call's context above a threshold, at the cache-read rate: the honest saving of a restart habit, assuming the same work in shorter sessions.
  • Skill costs, measured — the context growth right after a lone Skill call, median of recent loads. Bundled skills never touch the disk; the transcript sees all of them.
  • By effort level — how much of the window each effort setting took.
  • Findings with a lever land in agentburn fix: the restart threshold, and the heavy skills.
agentburn commits — what a commit cost you

Sessions record their working directory and branch; your repositories record when each commit landed. The usage between two consecutive commits is what the second one cost — read-only git log, nothing written:

   COSTLIEST COMMITS

124M 33_Thoforge 1f7a31a1 Aug 30 fix(ui): правки UX-аудита — раскладка, навигация 81.2M 33_Thoforge ad19bff7 Aug 28 feat(ui): цель над деревом и развилка в карточке

BY REPOSITORY 33_Thoforge 1.95M median · 287 commits · 1.52B total

Weighted tokens = tokens × *published* price ratios (cache read 0.1×, cache write 1.25×, output per model), normalized to one input token of the reference model. Every ratio is public; none of them is a guess about how the provider counts.

agentburn — the money view
  • Where it burns — by source: cron / subagent / gateway:telegram|discord|whatsapp / cli. Always-on ≠ free.
  • 🌙 While you slept — the overnight bill, isolated and named (--night 23-7).
  • Fixed overhead — uncached input tokens per API call, per source, calibrated against a public benchmark.
  • Subagent rollups — delegation cost chained back to the session that spawned it.
  • `agentburn why` — behavioral forensics: re-read loops, retry storms, idle heartbeats, per-cron receipts, context thrash.
  • `agentburn fix` — ready-to-paste config patches, dry-run by design.

agentburn fix — findings become config, not advice

Not "consider a cheaper model" but the exact file and the exact lines. Patch generators exist only for levers verified against the agent's own source or documented configuration:

🔧 agentburn fix — claude-code · DRY-RUN (nothing was changed)
  1. Drop 2 MCP server(s) you never called why : registered but not called once in the last 30d: blender-mcp, pixellab. Every registered server ships its tool definitions with the context of every session that loads it. proposed: claude mcp remove blender-mcp
  1. Trim the always-loaded memory files (2,254 tokens) why : loaded into every session's context and re-sent whenever the prompt cache expires or the context is compacted — at least 3,565× this window.
AgentVerified levers
Claude Coderegistered MCP servers (~/.claude.json, .mcp.json), always-loaded CLAUDE.md memory files, the session-restart threshold (measured), heavy skills (measured per load)
Hermesper-job model / enabled_toolsets (cron/jobs.py), per-platform toolsets (gateway/run.py)
OpenClawheartbeat.{every, activeHours, model, lightContext} (config/types.agent-defaults.ts)

There is no --apply on purpose: it's your agent's config. Paste it yourself, then prove the saving with --save-baseline → --compare.

Why trust these numbers

Token trackers quietly disagree with each other (2–91× in public issue threads). agentburn takes the opposite stance:

  • Numbers come from the agent's own accounting, read-only. No scraping, no proxies, no guessing.
  • One reply is counted once. Claude Code writes one transcript line per content block, each carrying the same usage; summing lines inflates calls and tokens ~1.8×. agentburn deduplicates by requestId (found and fixed in 0.14.0 — earlier absolute totals from this tool were inflated by that factor; ratios were not).
  • Provider-billed costs are shown as-is; estimates are marked ~; mixed data is labeled mixed.
  • Where a price doesn't exist, none is invented. Claude Code records no costs and subscription usage has no honest per-token price — so that adapter reports tokens and windows, never dollars.
  • Sessions with messages but zero recorded tokens (known accounting gaps, e.g. hermes-agent #12023) are detected: totals become an explicit lower bound, and fixing the accounting becomes recommendation #1.
  • Result weights on agents that don't record them are labeled *estimates*, and only ever used to rank findings against each other.

Speed

Transcripts are append-only, so they are parsed once. Each file's parse is cached under its size and mtime in ~/.agentburn/cache, and a run reuses every file that hasn't changed:

30 days over 3.1 GB of Claude Code logs
first run (parses everything, writes the cache)~190 s
every run after that~3 s
cache size29 MB (0.9% of the logs)

A file that grew is re-parsed and re-cached; nothing else is touched. --no-cache (or AGENTBURN_NO_CACHE=1) forces a full re-parse, --clear-cache deletes it. The cache is derived data — deleting it costs time, nothing else.

Privac

앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요

PopNx에게 묻기