MCP Server Builder
anthropics/skills
Guides the design and implementation of Model Context Protocol servers in TypeScript or Python, from tool naming and error messages to evaluation.
Manage SuperLocalMemory session lifecycle — call sessioninit once at the start of every fresh session to load relevant project context and get a sessionid; call closesession when work is…
$ npx skills add qualixar/superlocalmemory --skill slm-session -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install qualixar/superlocalmemory slm-session --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/qualixar/superlocalmemory.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugin/skills/slm-session .claude/skills/slm-session && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "slm-session" agent skill from https://github.com/qualixar/superlocalmemory/tree/main/plugin/skills/slm-session into .claude/skills/slm-session/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "slm-session", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/qualixar/superlocalmemory/tree/main/plugin/skills/slm-sessionType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add qualixar/superlocalmemory --skill slm-session -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install qualixar/superlocalmemory slm-session --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/qualixar/superlocalmemory.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugin/skills/slm-session .agents/skills/slm-session && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "slm-session" agent skill from https://github.com/qualixar/superlocalmemory/tree/main/plugin/skills/slm-session into .agents/skills/slm-session/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "slm-session", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add qualixar/superlocalmemory --skill slm-session -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install qualixar/superlocalmemory slm-session --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/qualixar/superlocalmemory.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugin/skills/slm-session .cursor/skills/slm-session && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "slm-session" agent skill from https://github.com/qualixar/superlocalmemory/tree/main/plugin/skills/slm-session into .cursor/skills/slm-session/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "slm-session", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/qualixar/superlocalmemory.git --path plugin/skills/slm-session--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add qualixar/superlocalmemory --skill slm-session -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install qualixar/superlocalmemory slm-session --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/qualixar/superlocalmemory.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugin/skills/slm-session .gemini/skills/slm-session && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "slm-session" agent skill from https://github.com/qualixar/superlocalmemory/tree/main/plugin/skills/slm-session into .gemini/skills/slm-session/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "slm-session", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install qualixar/superlocalmemory slm-sessionInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add qualixar/superlocalmemory --skill slm-session -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/qualixar/superlocalmemory.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugin/skills/slm-session .github/skills/slm-session && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "slm-session" agent skill from https://github.com/qualixar/superlocalmemory/tree/main/plugin/skills/slm-session into .github/skills/slm-session/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "slm-session", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add qualixar/superlocalmemory --skill slm-session -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install qualixar/superlocalmemory slm-session --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/qualixar/superlocalmemory.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugin/skills/slm-session .opencode/skills/slm-session && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "slm-session" agent skill from https://github.com/qualixar/superlocalmemory/tree/main/plugin/skills/slm-session into .opencode/skills/slm-session/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "slm-session", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
slm-sessionManage SuperLocalMemory session lifecycle — call sessioninit once at the start of every fresh session to load relevant project context and get a sessionid; call closesession when work is…
Slm Session is an agent skill from qualixar/superlocalmemory. Manage SuperLocalMemory session lifecycle — call sessioninit once at the start of every fresh session to load relevant project context and get a sessionid; call closesession when work is meaningfully complete to commit temporal summaries. Correct lifecycle hygiene is what makes SLM's learning loop work.
Its SKILL.md is about 2.5k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Agent Workflows. It works with Model Context Protocol. The repository describes itself as: Open-source governed, local-first memory control plane for AI agents and teams. arXiv:2608.08253. The licence is AGPL-3.0.
6 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit ce2d7a9. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
session_initclose_sessionBashFrom allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are json and bash).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Slm Session loads about 2.5k tokens when it runs. Until then it costs about 80 tokens; SKILL.md has 1,028 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
allowed-tools: session_init, close_session, BashAutomated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from qualixar/superlocalmemory at commit ce2d7a9, republished under its AGPL-3.0 licence (© qualixar). 1,028 words, ~2,502 tokens.
.claude/skills/slm-session/SKILL.md (or your agent's skills folder).Session lifecycle is the mechanism that makes SuperLocalMemory's learning loop work. Without it, recall signals are not attributed and temporal summaries are not written. This is not optional housekeeping — it is load-bearing.
Session starts
|
v
session_init(project_path, query)
|--- returns session_id, context, memories
|
v
Use session_id in every recall() and remember() call
|
v
Work completes
|
v
close_session(session_id)
|--- writes temporal summaries to DBCall session_init exactly once at the start of every fresh session, before
any recall or remember. Never call it twice in a session — the second call
would generate a new session_id and break signal attribution for any prior
recalls or remembers in that session.
session_init(
project_path: str = "", # working directory path, e.g. "~/projects/foo"
query: str = "", # topic override; if omitted, derived from project_path
max_results: int = 10, # max memories to return (default: 10)
max_age_days: int = 30, # suppress memories older than N days unless score >= 0.7
# set to 0 to disable the age gate entirely
)project_path (or uses your explicit query).max_age_days are suppressed
unless their relevance score is 0.70 or above (architectural decisions that
remain permanently relevant still surface).context block and a structured memories array
for your session.session_id (slm-YYYYMMDD-<8hex>) and returns it.{
"success": true,
"session_id": "slm-20260616-a3f8c1d2",
"context": "# Relevant Memory Context\n\n- JWT tokens use 1h expiry ...",
"memories": [
{
"fact_id": "f8a2bc91",
"content": "JWT tokens use 1h expiry for API auth (2026-06-10)",
"score": 0.87,
"is_core": false
}
],
"memory_count": 3,
"core_memory": [],
"degraded_mode": false,
"retrieval_mode": "full_6_channel",
"calibration_status": "uncalibrated",
"calibration_id": null,
"answer_confidence": null,
"abstained": false,
"abstention_reason": null,
"learning": {
"feedback_signals": 37,
"phase": 1,
"status": "collecting"
}
}Check degraded_mode. When true, the daemon was unreachable and only
FTS5 BM25 was used — semantic, graph, temporal, and structural channels were
unavailable. The context is still usable; note the degradation if relevant.
Check abstained. If true, the memories returned in context and
memories do not answer the query that seeded this session — say so, or
ask, rather than presenting them as settled fact. This is most relevant
when you passed an explicit query; the default project-context query
rarely has a single "right answer" for a judge to evaluate.
answer_confidence is a measurement, not a guarantee. calibration_status: "uncalibrated" means no judge is configured, and abstained then only
reflects the older "nothing found" signal. See slm-recall for the full
rule, which applies identically here.
Check learning.phase:
Store it and thread it into every recall and remember call in this session:
session_id = "<value from session_init>"
recall(query="auth strategy", session_id=session_id, limit=10)
remember(content="...", session_id=session_id, tags="auth,decision", project="myapp")This attribution is what allows the ranker to learn which recalls led to useful outcomes for this project. It also gives the session a small working set, so successive recalls in one conversation build on what the earlier ones surfaced instead of each starting cold.
Do not synthesise a session id. An id beginning http:, mcp:, cli: or
probe: is read as a synthetic per-request label rather than a conversation and
is deliberately excluded from that working set. Use the one session_init
returned, unchanged, for the whole session.
Call close_session when a meaningful unit of work is done — end of a coding
session, after shipping a feature, after a design review. You do not need to
call it after every small interaction. The signal is "this session's work is
committed and should be summarised."
Do not call it at the start of a new session as a cleanup step — session_init
is the correct opener and it does not require a prior close.
close_session(
session_id: str = "", # the session_id from session_init; if omitted,
# the system queries the DB for the most recent session
)Aggregates facts written during the session into per-entity temporal summary events. These summaries enable future queries like "what happened during session X?" and contribute to the temporal channel in retrieval.
{
"success": true,
"session_id": "slm-20260616-a3f8c1d2",
"summary_events_created": 4
}summary_events_created: 0 is normal for short sessions where no new facts
were written. It is not an error.
Every recall call with a session_id enqueues engagement signals — which
results were shown, which were acted on. The learning ranker processes these
signals to gradually up-weight channels and facts that prove useful for your
project. Without session_id, signals land on a fallback identifier and are
never attributed to a project or agent. Over many sessions this compounds:
projects where lifecycle is respected have measurably better retrieval quality
than projects where session_init is skipped.
Within a single session it compounds faster. The session's working set holds the memories its recalls have already surfaced, and later recalls rank those higher, so a long conversation converges on the material it is actually about.
Engagement signals say a memory was shown. report_outcome says it was
right:
report_outcome(memory_ids="<ids you actually used>", outcome="success")Send it when a recalled memory changed what you did, and send failure when a
confidently-returned memory turned out to be wrong — that is the only signal
that stops a stale memory from being promoted. See the slm-recall skill.
There are no direct session_init or close_session CLI subcommands.
When MCP is unavailable, use slm status to check system health and
slm recall / slm remember directly. Session attribution will not be
available in degraded CLI-only mode.
slm status [--json] # check mode, profile, DB size, fact count
slm doctor [--json] # preflight check including daemon and embedding worker| Mistake | Consequence | Fix |
|---|---|---|
Calling session_init twice in one session | Two session IDs; signals split across them | Call once; store the returned ID |
Omitting session_id from recall / remember | No learning attribution, and every turn starts cold | Always pass the stored session_id |
Inventing a session_id such as mcp:agent or http:1234 | Read as synthetic, excluded from the working set | Use the id session_init returned |
| Never reporting an outcome | Ranking cannot tell a useful memory from a merely returned one | report_outcome after a recall that changed what you did |
Never calling close_session | Temporal summaries not written | Call at end of each meaningful work unit |
Calling close_session without a session_id when no prior writes exist | Returns error "No session_id found" | Pass the explicit session_id from session_init |
session_init operates on the currently active profile. If you need to start
a session on a different workspace, call switch_profile (requires code,
full, or power MCP profile) before session_init, then call session_init
for that workspace. See slm-profile for workspace switching.
The returned memories array reflects facts stored in the active profile only.
To also surface shared or global facts in the initial context, pass the query
explicitly and call recall with include_global/include_shared after
session_init. See slm-scope for the sharing model.
slm-recall — multi-channel retrieval during the sessionslm-remember — store durable facts during the sessionslm-profile — workspace isolation and profile switchingslm-scope — multi-scope sharing modelSuperLocalMemory v4.1.21 · Qualixar · AGPL-3.0-or-later
© qualixar, AGPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in plugin/skills/slm-session of qualixar/superlocalmemory.
Open the folder on GitHubat commit ce2d7a9
Slm Session next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Slm Session this skillqualixar/superlocalmemory | 227 | — | ~2.5k | Automated safety check: Notes | AGPL-3.0 | |
| MCP Server Builderanthropics/skills | 180k | 64 repos | ~2.3k | Automated safety check: Pass | Apache-2.0 | |
| MCP Server BuildershareAI-lab/learn-claude-code | 78k | 5 repos | ~1.2k | Automated safety check: Pass | MIT | |
| MCP Integration for Pluginsanthropics/claude-plugins-official | 38k | 11 repos | ~3.1k | Automated safety check: Pass | Apache-2.0 | |
| Fastmcp Client CLIPrefectHQ/fastmcp | 28k | 1 repos | ~823 | Automated safety check: Pass | Apache-2.0 | |
| MemPalace Memory SearchMemPalace/mempalace | 59k | — | ~1.4k | Automated safety check: Pass | MIT |
anthropics/skills
Guides the design and implementation of Model Context Protocol servers in TypeScript or Python, from tool naming and error messages to evaluation.
shareAI-lab/learn-claude-code
Walks through building MCP servers in Python or TypeScript that expose tools, resources and prompts to Claude, with templates, registration and testing.
anthropics/claude-plugins-official
Explains how to bundle Model Context Protocol servers in a Claude Code plugin, covering config files, stdio, SSE, HTTP and WebSocket server types, and authentication.
PrefectHQ/fastmcp
Query and invoke tools on MCP servers using fastmcp list and fastmcp call.
MemPalace/mempalace
Mines project files and conversation exports into a local, searchable memory palace and recalls past work by semantic search through the mempalace CLI.
charmbracelet/crush
Explains how to configure the Crush coding agent with crushrc or crush.json, covering providers, models, LSPs, MCP servers, hooks, permissions and config precedence.
qualixar/superlocalmemory
AI agent memory with mathematical foundations. An agent skill from qualixar/superlocalmemory.
qualixar/superlocalmemory
Index and query a codebase as a structural graph — build the code graph, trace blast radius of a change, find callers/callees/inheritors, semantic code search by meaning, assemble PR review context…
qualixar/superlocalmemory
Run gate-verified bounded loops with SuperLocalMemory as the durable ledger.
qualixar/superlocalmemory
Search and retrieve facts, decisions, and past context from SuperLocalMemory.
qualixar/superlocalmemory
Capture durable facts, decisions, constraints, and gotchas into SuperLocalMemory.
qualixar/superlocalmemory
Controls memory visibility across profiles — personal (private, default), shared (selected profiles), or global (all profiles on this machine).
Works with
Categories
Manage SuperLocalMemory session lifecycle — call sessioninit once at the start of every fresh session to load relevant project context and get a sessionid; call closesession when work is…. Slm Session is an agent skill from qualixar/superlocalmemory. Manage SuperLocalMemory session lifecycle — call sessioninit once at the start of every fresh session to load relevant project context and get a sessionid; call closesession when work is meaningfully complete to commit temporal summaries.
Slm Session fits situations like: agent Workflows work in your project.
Run `npx skills add qualixar/superlocalmemory --skill slm-session -a claude-code`. Or copy the skill folder (plugin/skills/slm-session in qualixar/superlocalmemory) into .claude/skills/slm-session in your project. Claude Code loads it when a task matches its description.
Run `npx skills add qualixar/superlocalmemory --skill slm-session -a codex`. Or copy the skill folder (plugin/skills/slm-session in qualixar/superlocalmemory) into .agents/skills/slm-session in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add qualixar/superlocalmemory --skill slm-session -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/slm-session, .gemini/skills/slm-session, .github/skills/slm-session and .opencode/skills/slm-session in your project.
SKILL.md names no scripts, command-line tools or credentials: Slm Session is instructions for the agent only. Its frontmatter pre-approves these tools: session_init, close_session, Bash.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Slm Session is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.5k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Slm Session: MCP Server Builder (anthropics/skills, 180k stars), MCP Server Builder (shareAI-lab/learn-claude-code, 78k stars), MCP Integration for Plugins (anthropics/claude-plugins-official, 38k stars) and Fastmcp Client CLI (PrefectHQ/fastmcp, 28k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
qualixar (a GitHub organization) maintains it in qualixar/superlocalmemory, which has 227 GitHub stars. The repository holds 13 skills in this directory. The repository was last updated on October 8, 2026.
Source: qualixar/superlocalmemory on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.