Memory + answer checks for AI agents: recall across chats, draft→check→seal, fewer hallucinations.
Connect Remote server
claude mcp add --transport http skv https://skv.network/mcp --header "Authorization: Bearer <YOUR_API_KEY>"
{
"mcpServers": {
"skv": {
"url": "https://skv.network/mcp",
"headers": {
"Authorization": "Bearer <YOUR_API_KEY>"
}
}
}
}
{
"servers": {
"skv": {
"type": "http",
"url": "https://skv.network/mcp",
"headers": {
"Authorization": "Bearer <YOUR_API_KEY>"
}
}
}
}
Settings > Connectors > Add custom connector
URL: https://skv.network/mcp
Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.
Tools 39 found in our last check
memory_startSTEP 0 before install: consent question + rule 0 + essentials + recent memory. Once installed use step_zero.
memory_searchSearch memory in its base_language (turn/step_zero report base_language: write query/search_as in it). Newest first; older conflicting facts marked superseded_by; time per hit. Prefer turn. Full text: memory_event.
memory_eventOpen one memory event in full by id.
memory_recall_laterDeep background memory search (query + search_as statement forms, both in the memory base_language) when turn/memory_search found nothing reliable: on-server agent collects ranked evidence (~10-30 s, ~0.1 RUB). Returns job_id; poll memory_recall_status(job_id).
memory_recall_statusPoll a deep search job by job_id. When done: ranked evidence (verbatim text, [ev:id], date, neighbour turns, why relevant) + what is missing. Not an answer: answer yourself from it.
turnEVERY TURN, ONE CALL. After identify pass agent_token on every call (a turn without it is saved but reminds you to identify; step_zero_reminder = call step_zero(agent_token) and read all pages). [ev:id] is yours; [ev:id@agent] is another agent. Lost context: context_state=lost.…
turn_statsSizes of your turn responses by mode (full/compact), confirmed use of facts, and second_look stats. Read-only.
step_zeroSTEP ZERO, once per new API key and right after install: full constitution + memory + last session. page=1..N until done=true. Same key after that: turn only, do not call again. A rotated key does this once. Identify first (every agent, even a single one) and pass agent_token. L…
constitution_getFull constitution, paged.
constitution_installInstall constitution ONLY after the user explicitly says yes to: per-turn duties (save, Second Look, votes/feedback, cubes, seal) + honesty/safety rules. Pass user_confirmed=true. Never silent; if no, plain memory tool. Returns step_zero page 1; then call step_zero(page=2..N).
constitution_statusInstalled? If yes: consent already given. A new key reads step_zero(page=1..N) once, then turn every turn. Same key: turn only, do not repeat step_zero.
cube_getOpen one cube by id.
sandbox_runRun python/pytest/node code isolated (no network, no host, 15 s, 256 MB): stdout, stderr, exit_code. For cube tests and snippets. 10 runs/min.
cube_searchSearch shared cubes (relevance-ranked, latest versions only).
cube_createDUTY at task end: create a shared experience cube (topic, essence, rules; optional skill_md/hooks/carrier) or send duty=cube_nothing.
cube_confirmOne confirmation per account per cube version. outcome=ok|partial|fail. evidence is required (max 500). The author does not count. A second call from the same account keeps the first vote.
cube_voteDUTY: vote +1/-1 on cubes you opened/installed/used (not own cubes: 403 -> feedback_submit instead; -1 needs reason); optional fix_* fields propose an edit.
cube_installInstall a cube. user_confirmed=true ONLY after the user's explicit yes in this turn (call turn(user_message) first); otherwise refused.
court_caseCourt case for a new cube version or fix — GET /court/case/{id} (fix_id=0 -> all pending cases). Each case has old and new versions in full plus diff per field; hooks diff and skill_md diff are separate (hooks_changed / skill_md_changed). Judge from both.
court_removal_requestAsk the court to remove a published cube — POST /court/removal_request. Published cubes are permanent public property (no author retract). ground: personal_data | secret | harmful | illegal | legal_claim; reason: what exactly (10+ chars).
cube_consentPublish consent — POST /cube/consent. action=status|notice_shown; msg_ref = id of the current user message (e.g. t648u). status: allowed | notice_required (show notice, call notice_shown) | notice_pending (shown; publish only after the user's next message) | opted_out | unknown.…
cube_linkLink two cubes.
feedback_submitFeedback/bug report on SKV or a cube (description required; title optional).
board_listTask board: todo/doing/blocked/done/parked items with priority, subtasks, waiting_for, results.
board_actBoard actions: add, add_subtask, update, start, block, done (result required), park, reopen, remove, claim, release. claim(item_id, expected_rev) before doing; 409 tells you the owner. done only by the claim owner or a human. Finished: kind=result. Stopped midway: kind=handoff.
identifyEVERY agent calls this first, even the only one on a key: identify(name, role?, client_hint?). Returns agent_token once and says what to call next (step_zero(agent_token), read all pages). Pass agent_token on every later call. NAME_IN_USE: take the suggested -2 name. An idle nam…
file_claimClaim a relative path before editing. 409 if another agent holds it. Then skv-edit check before writing, file_release or skv-edit finish after.
file_releaseRelease your file claim and record file_change for the other agents.
file_checkCheck a claimed file still matches base_hash before writing. Pair with skv-edit check.
drive_connectStart Google Drive connect, or finish it with a one-time code. The refresh token is stored as [vault:drive_oauth]. This tool never returns the token.
drive_syncScan this memory line's SKV folder. New files get a description, changed files update, removed files are marked dead.
drive_readRead a file from this line's Drive folder. Text and PDF come back as text. Large files return one part and next.
drive_putStore a file. Over 1 MB goes to this line's Drive folder and memory keeps the link. At or under 1 MB stays in memory. With no Drive connection a heavy file is refused: connect Drive.
drive_listМой Drive: name, size, description, status and scan time for this memory line only.
consultPaid second opinion from DeepSeek and Qwen (secrets masked). Ask the user first; consent=true only after the user said yes. mode=quick (default): two short answers, well under 1 RUB. mode=deep (big tasks only, max 1 per key per day): both answer, each cross-reviews the other, th…
consult_acceptKeep one consult answer. which=synthesis|claude|gpt. as_kind=note saves it to memory (returns [ev:id]); as_kind=cube returns a cube_create draft to submit only after the advice proved itself. Does not run the advice.
joint_projectJoint project memory for 2-5 people. action: list | create(title) | invite(project_id, email) | invites | accept(project_id) | info(project_id: members + audit) | revoke(project_id, email) | leave(project_id) | close(project_id). create/accept issue a NEW project key in the call…
joint_searchSearch the joint project memory (only with a project key). Returns members' project notes as [pj:<id>]; cite as [pj:<id>], not [ev:]. Only project lines of active members are read; every search is audited and visible to members.
vault_injectUse a vault secret without seeing it. Put [vault:name] in url or body. Server substitutes and sends. Returns status and scrubbed body, never the secret. purpose is required.
Headers
| Name | Description |
|---|---|
AuthorizationOptional, secret | Bearer sk_... — free key at https://skv.network/profile (or use the public demo URL https://skv.network/mcp/k/demo/) |
Details
| Endpoint | https://skv.network/mcp (Streamable HTTP) |
| First published | 31 Oct 2026 |
| Last updated | 31 Oct 2026 |
| Registry name | network.skv/skv |
More ai and media servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
