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

Thread Mind

제작자: mahmoud-nb버전 0.5.0i★ –i내 컴퓨터에서 실행
레지스트리 이름io.github.mahmoud-nb/thread-mind

설치

개요

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

Git-friendly memory for AI coding: a tree of thread summaries with inherited context

PopNx MCP의 세 기둥

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

할 수 있는 일

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

  • 연결 방식: 내 컴퓨터에서 실행
  • 전송 방식: stdio
  • 카테고리: 검색 및 AI 기억

설치

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

설치하기 전에

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

필요한 것

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

어떤 앱을 쓰세요?

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

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

{
  "mcpServers": {
    "thread-mind": {
      "command": "npx",
      "args": [
        "-y",
        "thread-mind-mcp"
      ],
      "env": {
        "THREADMIND_ROOT": "your-value",
        "THREADMIND_AUTHOR": "your-value"
      }
    }
  }
}

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

claude mcp add thread-mind --env THREADMIND_ROOT=your-value --env THREADMIND_AUTHOR=your-value -- npx -y thread-mind-mcp

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

Cursor에서 열기

또는 설정을 직접 복사하기

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

{
  "mcpServers": {
    "thread-mind": {
      "command": "npx",
      "args": [
        "-y",
        "thread-mind-mcp"
      ],
      "env": {
        "THREADMIND_ROOT": "your-value",
        "THREADMIND_AUTHOR": "your-value"
      }
    }
  }
}

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

VS Code에서 열기

또는 설정을 직접 복사하기

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

{
  "servers": {
    "thread-mind": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "thread-mind-mcp"
      ],
      "env": {
        "THREADMIND_ROOT": "your-value",
        "THREADMIND_AUTHOR": "your-value"
      }
    }
  }
}

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

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

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

직접 입력할 값

  • THREADMIND_ROOT env
    Project directory holding .threadmind/, for clients that start servers outside your project
  • THREADMIND_AUTHOR env
    Author ID used for team-mode ownership (defaults to one derived from your git identity)

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

할 수 있는 일

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

기본 점검i

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

  • ✓ 통과

    제작자와 저장소 일치

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

  • … 아직 점검 안 함

    계속 관리되고 있음

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

  • … 아직 점검 안 함

    라이선스 있음

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

  • – 해당 없음

    엔드포인트 응답

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

  • – 해당 없음

    OAuth로 로그인

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

  • … 아직 점검 안 함

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

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

검색 및 AI 기억 카테고리의 다른 서버와 비교i

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

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

자주 묻는 질문

Thread Mind, 안전한가요?

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

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

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

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

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

아직 관리되고 있나요?

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

어떤 앱에서 쓸 수 있나요?

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

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

같은 카테고리에는: Context7, Codebase Memory, Exa

대안

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

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

Context7

제작자: upstash

Up-to-date docs for AI agents

컴퓨터 또는 클라우드★ 64,224MIT3일 전 업데이트
설치

Codebase Memory

제작자: DeusData

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

내 컴퓨터에서 실행★ 48,148MIT20일 전 업데이트
설치

Exa

제작자: exa-labs

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

클라우드에서 실행★ 5,213MIT44일 전 업데이트
설치

제작자의 README

README 열기

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

ThreadMind MCP

Branches for your AI's memory: a git-friendly tree of thread summaries.

ThreadMind is a Model Context Protocol (MCP) server that gives AI coding sessions a memory: a tree of threads, each holding a short summary of what was decided about one topic, stored as Markdown in your repository. Start a fresh session and the active thread's context — its decisions and those of its ancestors — replaces a history that had grown to tens of thousands of tokens.

[Documentation](https://mahmoud-nb.github.io/thread-mind-mcp/) | [npm](https://www.npmjs.com/package/thread-mind-mcp) | [GitHub](https://github.com/mahmoud-nb/thread-mind-mcp)


Why ThreadMind?

With AI coding assistants, conversations grow long: every request carries the whole history, until the client compacts it or you start over — and starting over loses what was decided. ThreadMind keeps what matters:

  • Summaries in sections — Decisions, Constraints, State, Open questions, Next steps
  • Inheritance through the tree — a thread's context is its summary plus its ancestors' decisions and constraints; sibling branches stay out
  • Branching exploration — try approaches in separate threads, merge the winner's conclusions into the parent, keep the reason an approach was abandoned
  • Git-aware — a thread created on a feature branch becomes active whenever that branch is checked out, and summaries warn when the code they describe has changed
  • Team collaboration — thread files are committed with the code and reviewed in pull requests
Where the savings come from

ThreadMind can't shrink a conversation in progress: your client decides what it sends. The savings come when you start over:

Before /clear:   the conversation carries ~48,000 tokens of history

After /clear: the session starts with the thread's context, ~1,100 tokens

main ├── auth │ └── auth-ui ← active context = main + auth (decisions, constraints) + auth-ui └── dashboard dashboard stays out

With the Claude Code plugin, the context reloads automatically after /clear and after compaction, and stats_show measures both sizes on your own sessions.


Quick Start

Claude Code plugin (recommended)
/plugin marketplace add mahmoud-nb/thread-mind-mcp

/plugin install thread-mind@thread-mind

The plugin installs the server and adds hooks that:

  • load the active thread's context at startup, after /clear and after compaction (nothing happens in repositories without a ThreadMind project)
  • remind Claude to save the summary as the conversation grows, and once more when the context window is nearly full
  • recover the summary after a compaction that happened before it was saved, and tell you when /clear dropped unsaved work
  • follow git branch changes, giving Claude the new active thread's context
  • record the files Claude edits with the next summary, so it gets flagged when they change
  • answer `tm:tree` and `tm:stats` instantly, without using tokens
  • measure how large conversations grow, read from their transcripts, for stats_show

It also brings commands (/thread-mind:context, /thread-mind:tree, /thread-mind:create, /thread-mind:switch, /thread-mind:summary, /thread-mind:merge, /thread-mind:stats) and options in /config. A status line (thread-mind-mcp status-line) keeps the active thread and its unsaved work in view. See the plugin guide.

If you configured ThreadMind manually before, remove that configuration so Claude Code doesn't run two servers.

Installation

No installation required — run directly with npx:

npx thread-mind-mcp

Or install globally:

npm install -g thread-mind-mcp
Configure with Claude Code (without the plugin)

Run from your project root. To share the server with your team, add it at project scope: Claude Code writes .mcp.json at the project root, which you commit.

# macOS / Linux

claude mcp add --scope project thread-mind -- npx -y thread-mind-mcp

Windows: npx is a .cmd script, wrap it in cmd /c

claude mcp add --scope project thread-mind -- cmd /c npx -y thread-mind-mcp

The resulting .mcp.json (you can also write it by hand):

{

"mcpServers": { "thread-mind": { "command": "npx", "args": ["-y", "thread-mind-mcp"] } } }

On Windows, use "command": "cmd" and "args": ["/c", "npx", "-y", "thread-mind-mcp"]. Each teammate approves the server the first time Claude Code starts it in the repository.

For yourself only, drop --scope project (default local scope: you, in this project) or use --scope user (you, in every project). Both are stored in ~/.claude.json, which Claude Code manages.

ScopeStored inApplies to
local (default)~/.claude.json, under the current projectYou, in this project
project.mcp.json at the project rootEveryone who clones the repository
user~/.claude.jsonYou, in every project

Claude Code doesn't read MCP servers from ~/.claude/settings.json or .claude/settings.json. Check the configuration with claude mcp list, or /mcp inside a session.

Windows + Volta: if Claude Code can't resolve Volta's npx shim, delegate to volta run:

claude mcp add --scope project thread-mind -- cmd /c volta run npx -y thread-mind-mcp
Configure with other MCP clients

ThreadMind uses the stdio transport, compatible with any MCP client. The command is always npx -y thread-mind-mcp; what changes is where each client declares it, and whether it reads the usage instructions the server sends:

ClientServer configurationUsage instructions
Cursor.cursor/mcp.json or ~/.cursor/mcp.jsonAGENTS.md
VS Code (GitHub Copilot).vscode/mcp.json (servers key) or .mcp.jsonSent by the server
GitHub Copilot CLI.mcp.json or copilot mcp add thread-mind -- npx -y thread-mind-mcpAGENTS.md
Codexcodex mcp add thread-mind -- npx -y thread-mind-mcp (~/.codex/config.toml)Sent by the server
Gemini CLI.gemini/settings.json or ~/.gemini/settings.jsonSent by the server
Windsurf (Devin Desktop)mcp_config.jsonAGENTS.md
Claude Desktop (chat)claude_desktop_config.json, with THREADMIND_ROOT set to the projectClaude Project instructions, if needed

Claude Code, VS Code and Copilot CLI share the .mcp.json file at the repository root. See Other AI Clients for each client's configuration.

Workspace location

ThreadMind stores its data in .threadmind/ at the root of your workspace, found in this order:

  1. The THREADMIND_ROOT environment variable, if set
  2. The workspace roots advertised by the MCP client (a root that already contains .threadmind/ wins). Claude Code advertises the directory you started it in, plus those added with --add-dir: start it from the project root
  3. The directory the server was started from

A client that starts servers outside your project without advertising roots (for example a desktop chat app with no project folder) needs THREADMIND_ROOT:

{

"mcpServers": { "thread-mind": { "command": "npx", "args": ["-y", "thread-mind-mcp"], "env": { "THREADMIND_ROOT": "/path/to/your/project" } } } }

Teach your AI client to use ThreadMind

The server sends its usage instructions when the client connects (MCP server instructions): Claude Code, VS Code (GitHub Copilot), Codex and Gemini CLI need no setup file. For agents that don't read them, such as Cursor, Copilot CLI or Windsurf, run threadmind_init to generate an AGENTS.md file.


How It Works

Core Concepts
ConceptDescription
ProjectA workspace containing a thread tree. Has a title, system context, and mode (solo/team).
ThreadA node in the tree representing a discussion topic. Stores a markdown summary, and may be linked to a git branch, done or abandoned.
SummaryWhat was decided in a thread, in sections: Decisions, Constraints, State, Open questions, Next steps.
ContextThe active thread's summary plus its ancestors' decisions and constraints — what the AI loads.
SessionEach client session has its own active thread; new sessions start from the checked-out git branch.
Storage

ThreadMind stores everything in a .threadmind/ directory at your project root:

.threadmind/

config.json # Local state: where sessions start, author ID, session measurements .gitignore # Excludes config.json from git projects/ my-app.json # Project configuration threads/ my-app/ main.md # Root thread (markdown + YAML frontmatter) auth-system.md # Child thread auth-api.md # Grandchild thread

Thread files use YAML frontmatter. Each one records its parent: the tree is rebuilt from the files, with no index to keep in sync or to conflict in git.

---

id: auth-system title: Authentication System parentId: main author: mahmoud-a3f9 createdAt: 2026-04-15T10:00:00.000Z updatedAt: 2026-04-15T12:30:00.000Z branch: feature/auth commit: 3f2a9c1e5b7d4a8f0c6e2b1d9a7f5c3e1b0d8a6f paths: ["src/auth"]


Decisions

  • JWT with refresh tokens, stored in httpOnly cookies
  • Passport.js over custom middleware, for maintainability

State

  • Login and refresh done, logout pending

status, branch, commit, paths and mergedInto only appear when set.

Context Assembly

When you request context, ThreadMind walks up from the active thread to the root. It keeps the whole summary of the active thread, and only the Decisions and Constraints of its ancestors:

## System Context

You are building a Next.js e-commerce application...


Thread: My App

Decisions

  • Next.js 15, PostgreSQL, Stripe

Thread: Authentication System

Decisions

  • JWT with refresh tokens, bcrypt, Passport.js

Thread: Auth API Endpoints (active)

_⚠ 2 commits changed src/api since this summary was written: check it is still accurate._

Decisions

  • POST /auth/login, POST /auth/register, POST /auth/refresh

Next steps

  • Rate limiting on /auth/login

_ThreadMind context: ~160 tokens | depth: 3 threads_

  • Only the direct ancestor chain is included — sibling branches are excluded
  • Summaries written before code changes are flagged, using the commit and paths recorded with them
  • maxTokens leaves out the farthest ancestors first when the context would be too large

Available Tools

Each tool declares a title and MCP annotations (read-only, destructive, idempotent), which clients can use to decide when to ask for confirmation.

Project Management
ToolDescription
project_createCreate a new project with a root "main" thread
project_listList all projects (shows the session's project)
project_switchSwitch the session to a different project (a single project is selected automatically)
project_create
ParameterTypeRequiredDescription
titlestringYesProject title (used to generate ID)
systemContextstringNoSystem prompt or global instructions

| mode | "solo" \| "team" | No | Project mode (default: `"solo"

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

PopNx에게 묻기