Context7
Up-to-date docs for AI agents
作者による説明(英語の原文)
Hierarchical markdown memory palace for AI agents — structured palace navigation via MCP tools.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"locus": {
"command": "uvx",
"args": [
"locus-mcp"
]
}
}
}ターミナルでこれを実行します
claude mcp add locus -- uvx locus-mcpプロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"locus": {
"command": "uvx",
"args": [
"locus-mcp"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"locus": {
"type": "stdio",
"command": "uvx",
"args": [
"locus-mcp"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月6日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント EDKarlsson で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.6.2)がレジストリに届いたのは8 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにPython (uv)も必要です。
同じカテゴリには:Context7, Codebase Memory, Exa
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Up-to-date docs for AI agents
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
Hierarchical markdown-based memory system for autonomous AI agents. Each directory is a room (locus) in the palace, containing specific knowledge navigated on demand. Named for the atomic unit of the Method of Loci.
Core idea: Keep context windows small. Load only the room you need, not the whole palace.
palace/
INDEX.md ← always read first (~50 lines max) global/ toolchain/ toolchain.md ← canonical facts about tools projects/ my-project/ my-project.md ← room overview + key files technical-gotchas.md ← specialty: issues & resolutions sessions/ 2026-03-02.md ← append-only session log
An agent reads INDEX.md, navigates to the relevant room, and reads only that room. Session logs accumulate until consolidation merges them into canonical files.
See the wiki for full documentation.
# Install
pip install locus-mcp
locus init ~/.locus
locus-mcp --palace ~/.locus
pip install locus-mcp
Or run without installing using uvx:
uvx locus-mcp --palace ~/.locus
The skill files are the one part of Locus written for a specific runtime. The palace convention, the MCP server, and the recall / lint / index CLIs are runtime-neutral and work from anything that can read a file or speak MCP. The skills in skills/claude/ are written and maintained for Claude Code, and that is the only set shipped here. They are plain markdown with YAML frontmatter, so another runtime is welcome to adapt them. Per-runtime copies used to live in skills/codex/ and skills/gemini/; they were removed because keeping three variants honest cost more than it returned.
Install them from a clone:
git clone https://github.com/Nano-Nimbus/locus.git
cd locus make install-skills # copies skills/claude/* to ~/.claude/skills/ make install-skills-dry # print what would be copied, write nothing
CLAUDE_SKILLS_DIR overrides the destination.
| Skill | Command | Description |
|---|---|---|
locus | /locus | Recall, navigate the palace, write rooms and session logs, regenerate indexes |
locus-consolidate | /locus-consolidate | Merge session logs into canonical files |
locus-audit | /locus-audit | Audit palace health |
locus-feedback | /locus-feedback | Record explicit feedback on a palace recall |
locus-release | /locus-release | Post-release verification workflow (contributors) |
locus-security | /locus-security | Trust tags, nonce discipline, and the locus-security CLI |
locus-palace-init | /locus-palace-init | Bootstrap a palace from existing memory files |
pip install locus-mcp
locus --palace ~/.locus --task "What toolchain conventions are set?"
The locus-mcp command exposes five tools over the Model Context Protocol.
Use stdio for all local integrations (Claude Desktop, Claude Code, Codex, Gemini — default, no extra flags needed). SSE transport is available for network deployments (--transport sse) and requires FASTMCP_HOST=0.0.0.0 to be set explicitly — the server binds to loopback by default.
| Tool | Description |
|---|---|
memory_list | Returns INDEX.md (no args) or lists a room's files |
memory_read | Reads any file in the palace |
memory_write | Atomically writes a file (guarded — cannot write to _metrics/, sessions/, .sig/, .security/) |
memory_search | Ranked full-text search over the shared FTS5 index (see Recall); ripgrep only without FTS5 |
memory_batch | Reads up to 20 palace files in a single call — use for multi-room loads |
Add --security to enable Ed25519 signature verification on reads and automatic signing on writes. See Security below.
claude_desktop_config.json){
"mcpServers": { "locus": { "command": "locus-mcp", "args": ["--palace", "/path/to/palace"] } } }
Or using uvx (no install required):
{
"mcpServers": { "locus": { "command": "uvx", "args": ["locus-mcp", "--palace", "/path/to/palace"] } } }
{
"mcp": { "servers": { "locus": { "command": "locus-mcp", "args": ["--palace", "/path/to/palace"] } } } }
All clients support LOCUS_PALACE as an alternative to --palace:
export LOCUS_PALACE=~/.locus
locus-mcp
See MCP Server Configuration for the full client setup guide and spec/mcp-server.md for architecture details.
locus recall answers "what do I already know about this?" in one call, fast enough to run on every prompt from a hook. It keeps a SQLite FTS5 index (standard library only, no PyYAML) over any number of markdown roots: a palace, an OKF bundle, a Claude Code memory directory, or all of them at once.
locus recall --root ~/memory --root ./docs "why does the flux kustomization stall"
Recalled memory:
| Flag | Default | Meaning |
|---|---|---|
--root DIR | .locus.toml, then LOCUS_PALACE | Directory to index; repeatable |
-k N | 3 | Number of hits |
--budget BYTES | 4096 | Hard cap on text output |
--include journal | off | Include type: Journal files |
--type TYPE | all | Only this frontmatter type; repeatable |
--json | off | Print a JSON list instead of text |
--refresh | off | Rebuild the index from scratch |
Frontmatter drives the result: title (or name, or the first heading), description, tags, type (or metadata.type), modified (else generated.at, else file mtime), status, stale_after, and verified. Ranking is bm25 with title and description weighted above the body; exact ties go to human-reviewed files, then to the newest modified. A hit is flagged STALE when its stale_after has passed or its status is deprecated. Trust tiers follow OKF: unverified, machine-confirmed (only non-human verified entries), human-reviewed (any verified entry whose by starts with human:).
Roots can live in a .locus.toml in the project or any parent directory:
[recall]
roots = ["docs", "~/memory/shared"]
The index is stored at ${XDG_CACHE_HOME:-~/.cache}/locus/ .sqlite, never inside a root, and is refreshed incrementally (mtime, then content hash) on every call. With no hits the text output is empty and the exit status is still 0, so a prompt hook can call it unconditionally:
#!/bin/sh
prompt=$(jq -r .prompt) exec locus recall -k 3 --budget 4096 "$prompt"
The MCP server's memory_search uses the same index, so MCP results are ranked the same way. Full rules in spec/recall.md.
locus lint checks markdown roots for Open Knowledge Format v0.2 conformance and the Locus palace conventions. locus index generates the index files those conventions define. Both read the same frontmatter recall indexes, and neither imports the Agent SDK, so a CI job that only checks conformance does not install it.
locus lint --root docs --check # CI gate: exit 1 on any error
locus lint --root docs --fix # add inferable fields, rewrite nothing locus index --root docs --check # exit 1 when a generated index drifted
docs/runbooks/valve-chatter.md: error [okf.type-missing] frontmatter has no non-empty type (fix: add type: Runbook) docs/log.md: error [okf.log-order] entries run oldest first: 2026-05-09 follows 2026-05-01 docs/reference/platform.md: warning [locus.size-limit] 214 lines exceeds the 200-line soft limit for a specialty file 2 error(s), 1 warning(s), 1 fixable
| Flag | Default | Meaning |
|---|---|---|
--root DIR | .locus.toml, then LOCUS_PALACE | Directory to check; repeatable |
--check | off | Exit non-zero on any error. For CI |
--strict | off | Treat warnings as errors under --check |
--fix | off | Add inferable fields. Never rewrites an existing key |
--type-map DIR=TYPE | none | Infer this OKF type under DIR; repeatable |
--archive-glob GLOB | none | Paths that should carry status: deprecated; repeatable |
--json | off | Print a JSON report instead of text |
Rules split in two. okf.* checks what the specification requires: a parseable frontmatter block with a non-empty type on every non-reserved document, an index.md with no frontmatter beyond a bundle-root okf_version, a log.md that is date-headed and newest first, and ISO 8601 timestamps. Unknown keys and unknown type values are never reported: the spec requires consumers to tolerate both. locus.* checks the palace conventions: the size limits from spec/size-limits.md and the room main-file rule from spec/room-conventions.md.
Errors fail --check; warnings are advisory. A palace legitimately carries no frontmatter at all, so on a palace root the missing type rules are warnings rather than a CI failure on a layout the palace spec itself describes.
--fix adds three fields and only three: type from --type-map or [lint.types], generated.at from the file's first git commit, and status: deprecated for archive paths. It never rewrites or deletes a key, it never invents a generated block (nothing in a file says who produced it), and running it twice produces identical bytes.
| Flag | Default | Meaning |
|---|---|---|
--root DIR | .locus.toml, then LOCUS_PALACE | Directory to index; repeatable |
--check | off | Write nothing; exit non-zero on drift. For CI |
--kind | auto | Force okf, palace, or memory classification |
--json | off | Print a JSON report instead of text |
What gets generated depends on the root: an OKF bundle gets an index.md per directory in section 8 form (* [Title](path) - description, with okf_version: "0.2" frontmatter at the bundle root only), a palace gets the 50-line routing table INDEX.md, and a Claude Code memory directory gets a MEMORY.md of one - [Title](file.md) - description line per topic file. Output is deterministic, so --check is a byte comparison, and only index files are ever written.
Configure both from one .locus.toml:
[lint]
roots = ["docs"] archive_globs = ["archive/*"]
[lint.types] "." = "Reference" runbooks = "Runbook"
Full rules in [`spec/lint-and-index
冒頭だけを表示しています。続きはリポジトリで読めます