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

Sea Lite

제작자: rafe-walker버전 0.6.0i★ –i내 컴퓨터에서 실행
레지스트리 이름io.github.rafe-walker/sea-lite

설치

개요

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

Work queue for parallel coding agents: leased path-scoped claims, typed links, hash-chained history

PopNx MCP의 세 기둥

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

할 수 있는 일

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

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

설치

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

설치하기 전에

  • 기본 점검: 1개 중 1개 통과
  • 내 컴퓨터에서 내 사용자 계정의 권한(파일, 네트워크, 앱)으로 실행돼요.
  • 직접 입력할 값: KRONICLE_LITE_DATA_DIR, SEA_LITE_ACTOR, SEA_LITE_ROLE, SEA_LITE_TRACKS

필요한 것

  • npmNode.js 설치(npx 명령어용)

어떤 앱을 쓰세요?

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

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

{
  "mcpServers": {
    "sea-lite": {
      "command": "npx",
      "args": [
        "-y",
        "sea-lite",
        "serve"
      ],
      "env": {
        "KRONICLE_LITE_DATA_DIR": "your-value",
        "SEA_LITE_ACTOR": "your-value",
        "SEA_LITE_ROLE": "your-value",
        "SEA_LITE_TRACKS": "your-value"
      }
    }
  }
}

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

claude mcp add sea-lite --env KRONICLE_LITE_DATA_DIR=your-value --env SEA_LITE_ACTOR=your-value --env SEA_LITE_ROLE=your-value --env SEA_LITE_TRACKS=your-value -- npx -y sea-lite serve

실행하기 전에 빈 값을 채워 주세요.

Cursor에서 열기

또는 설정을 직접 복사하기

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

{
  "mcpServers": {
    "sea-lite": {
      "command": "npx",
      "args": [
        "-y",
        "sea-lite",
        "serve"
      ],
      "env": {
        "KRONICLE_LITE_DATA_DIR": "your-value",
        "SEA_LITE_ACTOR": "your-value",
        "SEA_LITE_ROLE": "your-value",
        "SEA_LITE_TRACKS": "your-value"
      }
    }
  }
}

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

VS Code에서 열기

또는 설정을 직접 복사하기

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

{
  "servers": {
    "sea-lite": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "sea-lite",
        "serve"
      ],
      "env": {
        "KRONICLE_LITE_DATA_DIR": "your-value",
        "SEA_LITE_ACTOR": "your-value",
        "SEA_LITE_ROLE": "your-value",
        "SEA_LITE_TRACKS": "your-value"
      }
    }
  }
}

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

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

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

직접 입력할 값

  • KRONICLE_LITE_DATA_DIR env
    Directory of the shared SQLite store (default ~/.kronicle-lite)
  • SEA_LITE_ACTOR env
    Actor label used on claims and writes (default local-agent)
  • SEA_LITE_ROLE env
    agent (default) or operator; operator unlocks force release
  • SEA_LITE_TRACKS env
    Enabled lifecycle tracks, e.g. work,design (default work)

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

할 수 있는 일

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

기본 점검i

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

  • ✓ 통과

    제작자와 저장소 일치

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

  • … 아직 점검 안 함

    계속 관리되고 있음

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

  • … 아직 점검 안 함

    라이선스 있음

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

  • – 해당 없음

    엔드포인트 응답

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

  • – 해당 없음

    OAuth로 로그인

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

  • … 아직 점검 안 함

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

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

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

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

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

자주 묻는 질문

Sea Lite, 안전한가요?

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

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

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

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

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

아직 관리되고 있나요?

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

어떤 앱에서 쓸 수 있나요?

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

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

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

대안

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

카드 보는 법:★ 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그저께 업데이트
설치

Draugr

제작자: draugr-dev

Security scanning for AI agents: SAST, SCA, secrets, IaC, DAST, ranked by real risk.

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

제작자의 README

README 열기

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

sea-lite

A work queue for parallel coding agents that can't collide.

Run three agents against one backlog and the failure mode is not that they are slow. It is that two of them pick up the same ticket, both "finish" it, and the one that finishes second overwrites the first. Or one of them dies holding a ticket and nobody else ever touches it.

sea-lite is a small MCP server where tickets are fenced:

  • sea_next atomically picks the best eligible ticket and claims it. The caller gets a one-time claim token; every write (sea_update, sea_transition, sea_link) must present it. A write from anyone else is refused and says who holds the ticket and until when.
  • Claims are leases (default 15 min, up to 1 h) that renew while the holder is active: every sea-lite tool call by the holder, and the sea-lite heartbeat a hook runs, push the expiry out again. An agent that dies stops renewing; the next reader sees the lapsed lease, treats the ticket as free, and records that it did. No sweeper, no cron.
  • A claim can carry a scope: the paths the holder will edit. Two holders' live scopes may not overlap (scope_conflict names the holder, ticket, paths and expiry), and sea_scope_check lets an edit hook refuse a write inside someone else's scope. A holder is an actor label plus a session, so two Claude Code terminals that both run --actor claude are still two holders (see Identity). The numbers that motivated it: PR pairs from different agents conflicted 41.7% of the time, pairs from one agent 19.8% (arXiv 2607.04697) — agents could lock tickets but not each other's files.
  • Enforcement outside the model: an edit hook for Claude Code, and a git pre-commit guard (sea-lite precommit --install) that refuses a commit staging files inside someone else's live claim, which works the same for Cursor, Codex, Copilot and humans.
  • Tickets belong to the project (git repository) they were created in, so one shared store serves many repositories without one repo's queue or locks leaking into another.
  • Tickets carry typed links (depends_on, blocks, parent_of, …). sea_next will not hand out a ticket whose predecessors are still open, and the precedence graph is kept acyclic on every write.
  • sea_apply lays down up to 50 tickets and 100 links in one all-or-nothing write, so an epic with its children and dependency edges lands as a unit or not at all — and its links may point at tickets that already exist. Templates let the model write a 20-ticket chain once (for_each + {i} / {value} / {ref} / {prev}); the server expands it deterministically. The result is a ref → id map, not an echo.
  • Lean on context: serve --core publishes the nine day-to-day tools in ~12 KB of tools/list (the full fifteen take ~32 KB; 0.4.0 took 59 KB), and results are compact JSON. sea_finish ends work on a ticket — an outcome (done / blocked / abandoned), a note, an optional commit sha, claim released — in one call, for one ticket or many.
  • A claim can be bound to a git worktree; removing the worktree (sea-lite release-worktree, a WorktreeRemove hook) releases it.
  • Every change is an event on a hash chain — the one kronicle-lite keeps. The same SQLite file holds both. sea_history shows a ticket's record and whether the chain still verifies; sea-lite rebuild replays the tables from the chain.

One process, one file, no accounts. Speaks MCP 2026-07-28 (per-request metadata, server/discover, cacheable tools/list, outputSchema + structuredContent on every tool, multi round-trip confirmation) and still serves 2025-era clients that open with initialize, over stdio and over HTTP — the same process answers both. Runs over stdio next to Claude Code, Cursor, Codex, Copilot, Claude Desktop or any MCP client, or over Streamable HTTP (serve --http, loopback, bearer tokens, one token per actor if you want attributable claims). sea_stats / sea-lite stats account for who held what for how long; sea-lite doctor checks the install. Several server processes (one per agent, or one shared) can point at the same file; SQLite's write lock and BEGIN IMMEDIATE make claims exclusive across processes.

Install

Requires Node ≥ 20. Data lives in ~/.kronicle-lite/kronicle-lite.db (or --data-dir, or $KRONICLE_LITE_DATA_DIR), shared with kronicle-lite if you run that too. One store serves every repository: tickets are keyed by project. The --actor label is what humans see on the board; you do not need a different label per terminal — each server process is its own session (see Identity).

Claude Code
claude mcp add sea-lite -- npx -y sea-lite serve --core --actor claude

--core serves the tools an agent uses day to day (see Profiles); drop it for all fifteen.

Each Claude Code session's server picks up CLAUDE_CODE_SESSION_ID and CLAUDE_PROJECT_DIR, so two sessions in one repo are two holders and their queue is that repo's. Copy skills/work-queue/ into .claude/skills/work-queue/ so the agent knows the claim → scope → work → release loop, wire the edit hook from hooks/README.md (or install the cc-anchor plugin, which ships it) so an Edit/Write inside someone else's scope is blocked before it happens, and add the git guard:

npx sea-lite precommit --install     # .git/hooks/pre-commit

Heartbeat. sea-lite renews a holder's leases on every sea-lite tool call it makes, which covers an agent that keeps using the queue. A long stretch of plain edits and test runs makes no sea-lite call, so also wire a PostToolUse heartbeat: cc-anchor's heartbeat hook is the recommended one (it renews your claims as you work, rate-limited, in the background), or sea-lite heartbeat --hook from hooks/README.md. Measured (agent-memory-bench S13, lease 5 s, task 12 s): without a hook the lease lapses mid-task and the holder learns it only at its next fenced write; with cc-anchor's heartbeat the claim held 3/3.

Cursor

.cursor/mcp.json in the project (or ~/.cursor/mcp.json for everywhere):

{

"mcpServers": { "sea-lite": { "type": "stdio", "command": "npx", "args": ["-y", "sea-lite", "serve", "--actor", "cursor"], "env": { "KRONICLE_LITE_DATA_DIR": "${userHome}/.kronicle-lite" } } } }

Cursor asks before running MCP tools unless you allowlist them; the read-only ones (sea_get, sea_list, sea_history, sea_scope_check, sea_stats) are safe to allow. Put skills/work-queue/SKILL.md into a project rule so the agent claims its paths before editing.

Codex (CLI, IDE extension, app)

~/.codex/config.toml (or .codex/config.toml in a trusted project):

[mcp_servers.sea_lite]

command = "npx" args = ["-y", "sea-lite", "serve", "--actor", "codex"] env_vars = ["KRONICLE_LITE_DATA_DIR"] startup_timeout_sec = 20 default_tools_approval_mode = "writes" # prompt only on write tools

[mcp_servers.sea_lite.tools.sea_transition] approval_mode = "prompt" # terminal states are irreversible

[mcp_servers.sea_lite.tools.sea_finish] approval_mode = "prompt" # closes tickets (terminal, no exit)

Codex reads the server instructions; the loop is in them.

GitHub Copilot coding agent

Repository Settings → Copilot → MCP servers, "MCP configuration". The coding agent runs in a fresh Actions sandbox, so point it at a store the run can reach, and allowlist tools explicitly: GitHub recommends read-only tools, and Copilot code review only loads tools whose annotations.readOnlyHint is true. Ours that qualify: `sea_get`, `sea_list`, `sea_history`, `sea_scope_check`, `sea_stats`.

{

"mcpServers": { "sea-lite": { "type": "local", "command": "npx", "args": ["-y", "sea-lite", "serve", "--actor", "copilot", "--data-dir", "/tmp/sea-lite"], "env": { "SEA_LITE_ROLE": "agent" }, "tools": ["sea_get", "sea_list", "sea_history", "sea_scope_check", "sea_stats"] } } }

Once a server is configured Copilot calls its tools without asking, so add the write tools (sea_create, sea_apply, sea_claim, sea_next, sea_update, sea_transition, sea_finish, sea_link, sea_refresh, sea_release) only if you want the agent taking and closing tickets on its own. Secrets and variables for the env block must be named COPILOT_MCP_*.

Any other client
{ "mcpServers": { "sea-lite": { "command": "npx", "args": ["-y", "sea-lite", "serve", "--actor", "me"] } } }

A 2026-07-28 client probes with server/discover; a 2025 client sends initialize; both are served.

Over HTTP (serve --http)

For a client that cannot spawn a process, or several agents sharing one queue server:

npx sea-lite serve --http --actor owner          # http://127.0.0.1:7418/mcp

npx sea-lite add-token --actor agent-a # prints a token once; stores its sha256 npx sea-lite add-token --actor agent-b

{ "mcpServers": { "sea-lite": { "type": "http", "url": "http://127.0.0.1:7418/mcp",

"headers": { "Authorization": "Bearer " } } } }

FlagDefault
--port N / --host H7418 / 127.0.0.1kronicle-lite's serve --http is 7417
--bearer T / --bearer-file F /http-bearer.token (created 0600)the shared owner token (same file kronicle-lite uses); a token file group or others can read is refused unless --allow-insecure-token-file
--actors-file F /http-actors.json if presentper-actor tokens from add-token (sha256 only, 0600); re-read when it changes, so add-token works without a restart
--allow-origin H,.. / --allow-host H,..loopback onlyDNS-rebinding defence; add the names clients use
`--legacy stateless\reject`statelessserve 2025-era initialize clients, or refuse them with -32022
`--project KEY\*`* (every project)the project this server's queue belongs to
  • Identity per request. The shared bearer acts as --actor (role --role), and a per-call actor_id is a self-asserted label, as on stdio. An actor token acts as *its* actor (and its entry's role); an actor_id naming anyone else is refused with forbidden. So claims, notes, chain events and sea_stats are attributable per token.
  • Both protocol eras, stateless. POST to one endpoint; no session id; GET/DELETE → 405. 2026-07-28 clients send per-request _meta; 2025-era clients (Cursor today) open with initialize and are served by the SDK's stateless legacy fallback from the same tools and the same per-request identity. --legacy reject makes the endpoint modern-only (initialize → 400 / -32022). Missing or wrong bearer → 401; foreign Origin or Host → 403.
  • Projects. A team server sees every project unless started with --project KEY (scopes are repo-relative, so run one server per repository or name it).
  • One trust domain. Every token reaches the whole store; there are no per-ticket permissions, no read isolation, no TLS. Off-box, put TLS in front. Read docs/THREAT-MODEL.md → "HTTP transport" before exposing it.

Sixty-second tour

No MCP client and no LLM needed: the CLI drives the same queue the agents use. Every line below is run by the test suite against a fresh store.

npm i -g sea-lite                            # or: alias sea-lite='npx -y sea-lite'

export KRONICLE_LITE_DATA_DIR=$(mktemp -d) # a scratch store cd "$(mktemp -d)" && git init -q # any repository: tickets belong to it

sea-lite create "Add rate limiting to login" --triaged

sea-lite

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

PopNx에게 묻기