ต้นแบบ · รุ่นทดลอง: มีทุก server ในทะเบียนทางการ อัปเดตทุก 30 นาที รีวิวและบัญชีผู้ใช้จะมาในขั้นถัดไป
PopNx MCPที่รวม MCP สำหรับคนใช้ AI · อธิบายเป็นภาษาคน

briefd

โดย ismailperimรุ่น 0.6.1i★ –iรันบนเครื่อง
ชื่อใน registryio.github.ismailperim/briefd

ติดตั้ง

ภาพรวม

คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)

Git-backed team knowledge compiled into token-budgeted context bundles for coding agents

สามเสาของ PopNx MCP

สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน

ใช้ทำอะไรได้

ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry

  • การเชื่อมต่อ: รันบนเครื่อง
  • ช่องทาง (transport): Streamable HTTP
  • หมวด: ค้นข้อมูลและความจำของ AI
  • ต้องใส่ค่าเหล่านี้: BRIEFD_SOURCE, BRIEFD_API_TOKEN, BRIEFD_GIT_TOKEN

ติดตั้ง

เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง

ก่อนติดตั้ง

ค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต

ต้องเตรียมก่อน

  • Dockerติดตั้ง Docker ในเครื่อง

คุณใช้แอปไหน

เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”

เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json

{
  "mcpServers": {
    "briefd": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "BRIEFD_SOURCE",
        "-e",
        "BRIEFD_API_TOKEN",
        "-e",
        "BRIEFD_GIT_TOKEN",
        "ghcr.io/ismailperim/briefd:0.6.1"
      ],
      "env": {
        "BRIEFD_SOURCE": "ใส่ค่าของคุณ",
        "BRIEFD_API_TOKEN": "ใส่ค่าของคุณ",
        "BRIEFD_GIT_TOKEN": "ใส่ค่าของคุณ"
      }
    }
  }
}

พิมพ์คำสั่งนี้ใน Terminal

claude mcp add briefd --env BRIEFD_SOURCE='ใส่ค่าของคุณ' --env BRIEFD_API_TOKEN='ใส่ค่าของคุณ' --env BRIEFD_GIT_TOKEN='ใส่ค่าของคุณ' -- docker run -i --rm -e BRIEFD_SOURCE -e BRIEFD_API_TOKEN -e BRIEFD_GIT_TOKEN ghcr.io/ismailperim/briefd:0.6.1

เติมค่าที่เว้นว่างไว้ก่อนรัน

เปิดใน Cursor

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json

{
  "mcpServers": {
    "briefd": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "BRIEFD_SOURCE",
        "-e",
        "BRIEFD_API_TOKEN",
        "-e",
        "BRIEFD_GIT_TOKEN",
        "ghcr.io/ismailperim/briefd:0.6.1"
      ],
      "env": {
        "BRIEFD_SOURCE": "ใส่ค่าของคุณ",
        "BRIEFD_API_TOKEN": "ใส่ค่าของคุณ",
        "BRIEFD_GIT_TOKEN": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

เปิดใน VS Code

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .vscode/mcp.json ของโปรเจกต์

{
  "servers": {
    "briefd": {
      "type": "stdio",
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "BRIEFD_SOURCE",
        "-e",
        "BRIEFD_API_TOKEN",
        "-e",
        "BRIEFD_GIT_TOKEN",
        "ghcr.io/ismailperim/briefd:0.6.1"
      ],
      "env": {
        "BRIEFD_SOURCE": "ใส่ค่าของคุณ",
        "BRIEFD_API_TOKEN": "ใส่ค่าของคุณ",
        "BRIEFD_GIT_TOKEN": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น

ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี

ค่าที่ต้องใส่เอง

  • BRIEFD_SOURCE จำเป็น env
    Knowledge repository: a git URL (https://…, git@…) or a mounted directory with domain/, conventions/, projects/ /
  • BRIEFD_API_TOKEN ความลับ จำเป็น env
    Bearer token clients must send to /mcp and /api
  • BRIEFD_GIT_TOKEN ความลับ env
    Token for private HTTPS git remotes

ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README

ทำอะไรได้บ้าง

รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง

ผลตรวจเบื้องต้นi

เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569

  • ✓ ผ่าน

    ตัวตนผู้ทำตรงกับ repo

    ชื่อใน registry ยืนยันด้วยบัญชี GitHub ismailperim ซึ่งเป็นเจ้าของ repo

  • … ยังไม่ตรวจ

    ยังมีคนดูแล

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • … ยังไม่ตรวจ

    มีสัญญาอนุญาต (license)

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • – ไม่เกี่ยว

    endpoint ตอบ

    ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

    ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน

  • … ยังไม่ตรวจ

    คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง

    รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต

เทียบกับตัวอื่นในหมวด ค้นข้อมูลและความจำของ AIi

  • ดาวมากกว่า 0% ของอีก 7249 ตัวในหมวดนี้
  • ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 51% ของอีก 7249 ตัวในหมวดนี้
  • ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 7249 ตัวในหมวดนี้

เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo

คำถามที่พบบ่อย

briefd ปลอดภัยไหม?

จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น

ต้องใช้กุญแจหรือรหัสอะไรบ้าง?

ต้องใส่ค่าเหล่านี้: BRIEFD_SOURCE, BRIEFD_API_TOKEN, BRIEFD_GIT_TOKEN

ตัวนี้รันบนเครื่องหรือบนคลาวด์?

รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)

ยังมีคนดูแลอยู่ไหม?

repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.6.1) เข้า registry 36 วันที่ผ่านมา

ใช้กับโปรแกรมไหนได้บ้าง?

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Docker ในเครื่องด้วย

มีตัวไหนใช้แทนได้บ้าง?

ในหมวดเดียวกันมี Context7, Codebase Memory, Exa

ตัวที่ใช้แทนได้

server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว

อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi

Context7

โดย upstash

ส่งคู่มือการใช้ไลบรารีและเฟรมเวิร์กรุ่นล่าสุดให้ AI อ่านก่อนตอบ ช่วยให้โค้ดที่ AI เขียนไม่ใช้คำสั่งเก่าที่เลิกใช้แล้ว

บนเครื่องหรือคลาวด์★ 64,224MITอัปเดต วันนี้
ติดตั้ง

Codebase Memory

โดย DeusData

Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.

รันบนเครื่อง★ 48,148MITอัปเดต 20 วันที่ผ่านมา
ติดตั้ง

Exa

โดย exa-labs

Connect AI agents to Exa for web search, content fetching, and multi-step research.

รันบนคลาวด์★ 5,213MITอัปเดต เดือนที่แล้ว
ติดตั้ง

README จากผู้ทำ

เปิดอ่าน README

ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

briefd

Your agents, briefed. Not flooded.

A self-hosted context compiler for AI coding teams: git-backed knowledge, served to coding agents

as token-budgeted context bundles over MCP.


▶ Watch the 90-second explainer · How it works · Quickstart

Teams that build many projects in one domain keep the same knowledge in their heads and in scattered CLAUDE.md / AGENTS.md files: terminology, business rules, architecture decisions, conventions. Loading all of it into every session burns thousands of tokens on every turn, and whatever doesn't fit gets left out.

briefd inverts the model: context on demand, not up front. Your knowledge lives as Markdown in a git repository. briefd indexes it and answers one question from your coding agent — *"what do I need to know for this task?"* — with a compiled, deduplicated bundle that never exceeds the token budget you set.

Why

On the sample knowledge repo in this repository (44 documents, 47 realistic developer tasks), compile_bundle spends 86% fewer tokens per task than pasting everything into `CLAUDE.md` while still containing the section that answers the task 96% of the time (98% with the English-only all-MiniLM-L6-v2 model, the figure the explainer video quotes). The realistic middle ground — a hand-curated CLAUDE.md with just conventions and the glossary — costs 2.8× more than a bundle and has the answer less than half the time.

Reproduce it with make bench; the method is in internal/eval/bench.go.

That is what the tokenizer says. Inside real Claude Code sessions (eval/session/, Sonnet, 10 tasks, same prompts) briefd cut the context carried per turn by 35% and the cost per task by 40% with identical answers — at the price of 3–4 extra tool-call round trips per task. The saving grows with the size of your knowledge repo; a static CLAUDE.md cannot.

Not another agent memory

Memory tools (agentmemory, Mem0, claude-mem) record what *an agent* observed in its sessions, automatically, per user. briefd serves what *the team* decided, written by people and reviewed like code. They answer different questions and run side by side.

Agent memorybriefd
Source of truthA database the agent writes toMarkdown in a git repository
Who writesThe agent, automaticallyPeople; agents open pull requests
ScopeOne agent / one userThe whole team, every project in the domain
ReviewNoneEvery change has a diff, a reviewer and a name
StalenessUnknownDates on every section; drift against the code it governs
What it can't answerSilently absentListed on the dashboard as a backlog
FootprintRuntime + engine + several portsOne static binary, one SQLite file, one port (or stdio)
Tool surfaceDozens of tools, thousands of tokens per session7 tools, ~2.8k tokens per session

Use a memory tool so your agent remembers what it tried last week. Use briefd so every agent on the team applies the same rules — and so someone notices when a rule falls behind the code.

How it works

  • Git is the source of truth. The index is a disposable cache rebuilt from a clone.
  • Agents never write to the index. propose_update opens a reviewable branch/PR; what briefd serves changes only when a human merges.
  • Hybrid retrieval, no external services. SQLite FTS5 (BM25) + multilingual embeddings (multilingual-e5-small, 100+ languages) computed by a pure-Go encoder, fused with reciprocal rank fusion. No Postgres, no vector database, no ONNX runtime, no CGO.
  • Hard token budgets. Every API that returns context takes max_tokens and never exceeds it.

Quickstart

Try it in 30 seconds — no repository needed:

briefd demo      # serves the built-in sample knowledge base on http://127.0.0.1:7788

Then open the dashboard, or point an agent at it: claude mcp add --transport http briefd http://127.0.0.1:7788/mcp. The first run downloads the embedding model (about 470 MB); briefd demo --embeddings none skips it.

With your own knowledge:

# 1. build (Go >= 1.26) or grab a binary from the releases page

git clone https://github.com/ismailperim/briefd && cd briefd && make build

2. serve the sample knowledge repo (downloads the 470 MB multilingual embedding model once)

./bin/briefd serve --source testdata/knowledge --db /tmp/briefd.db --token dev-token

3. connect Claude Code

claude mcp add --transport http briefd http://localhost:7788/mcp \ --header "Authorization: Bearer dev-token"

Open http://localhost:7788/ for the dashboard, then ask Claude Code something the sample corpus knows — *"what's our retry policy for acquirer calls?"* or *"ters ibraz nedir?"* — and watch search_context / compile_bundle show up in the request log.

Any MCP client that speaks streamable HTTP works. For a project-level .mcp.json:

{

"mcpServers": { "briefd": { "type": "http", "url": "http://localhost:7788/mcp", "headers": { "Authorization": "Bearer dev-token" } } } }

Let the agent install it. Hand your coding agent one instruction:

Retrieve and follow the instructions at: https://raw.githubusercontent.com/ismailperim/briefd/main/INSTALL_FOR_AGENTS.md

Teach the agent when to ask. Tools an agent does not call save nothing. The skills/briefd skill tells Claude Code (and any agent that reads SKILL.md) when to compile a bundle, how to treat a stale section and when to propose an update; the same guidance as a CLAUDE.md paragraph is in deploy/local/CLAUDE.md.

npx skills add ismailperim/briefd

Single-user, no server? briefd mcp speaks MCP over stdio — the same tools, the same index, no port and no token. Claude Desktop, Cursor's stdio config and MCP directory inspectors launch it directly:

{

"mcpServers": { "briefd": { "command": "briefd", "args": ["mcp", "--source", "/path/to/knowledge", "--db", "~/.briefd/knowledge.db"] } } }

Use serve when a team shares one instance (dashboard, metrics, webhook, REST); use mcp when the agent runs on the machine that holds the checkout.

Tools

ToolWhat it does
compile_bundle(task_description, max_tokens?, scopes?, paths?)One deduplicated context block within the budget, ordered domain → conventions → project, with a source line per section and a bundle_id. Deterministic and cached.
search_context(query, max_tokens?, scopes?, top_k?, paths?)Ranked sections that fit the budget, for inspection. paths (code paths being edited) pull the documents whose refs cover them to the top.
get_document(doc_path, scopes?)One document in full.
list_scopes()Scopes with document/section counts.
propose_update(doc_path, change_description, new_content)Creates branch briefd/proposal- (+ pull request when configured). Never touches the index.
report_usage(bundle_id, useful_chunk_ids)Optional feedback: which sections helped. An empty list marks the question as a knowledge gap.
suggest_links(doc_path?, limit?)Links the knowledge base is missing (a document names another without linking it) and broken links — for an agent tidying the knowledge base via propose_update.

The same operations are available over REST (/api/search, POST /api/bundle, /api/docs/{path}, /api/scopes, POST /api/proposals, POST /api/usage, /api/gaps, /api/health, /api/stats) behind the same bearer token.

Your knowledge repo

briefd expects a git repository (or directory) of Markdown with three kinds of folders (briefd init scaffolds it with example documents):

knowledge-repo/

├── domain/ # shared: terminology, business rules, ADRs ├── conventions/ # shared: coding standards, infra patterns └── projects/ ├── ledger-service/ # visible only when scope "projects/ledger-service" is requested └── merchant-portal/

Documents are split on ##/### headings into sections of roughly 200–800 tokens with stable ids, so a section can be quoted on its own. Optional front matter adds metadata:

---

title: Retry policy # defaults to the first H1 tags: [payments, resilience] refs: ["services/payment/**"] # code paths this doc governs


testdata/knowledge/ is a complete example (a fictional payments platform) and doubles as the evaluation corpus.

Obsidian vaults and links

A knowledge repository can be an Obsidian vault. briefd reads [[wikilinks]] in the text and in front-matter properties such as related: (including [[note|alias]] and [[note#heading]]) and relative Markdown links, resolves them the way Obsidian does (by path, or by file name anywhere in the repository), and builds a link graph: the dashboard draws it, get_document returns each document's links and backlinks so an agent can follow them, and orphans (nothing links here) and broken links (the target does not exist) are listed as maintenance signals next to gaps and coverage. Folder scopes still apply — domain/, conventions/, projects/ / — so keep the vault's top level in that shape.

Running it for real

ตัดมาแค่ช่วงต้น อ่านต่อใน repo

ถาม PopNx