Skip to content
Agentmart
Submit a tool

Akb

Git-backed org memory for AI agents — hybrid search, tables, files & a URI graph.

Connector by dnotitia · GitHub account verified by the MCP Registry

IndexedLicense unknownLocal (stdio)★ 163
Write a review

Install

Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.

npx agentmarket install connector/dnotitia-akb

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Git-backed org memory for AI agents — hybrid search, tables, files & a URI graph over MCP.

Use cases: knowledge-base, note-taking

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this server can do and what it asks for, from its tool list and install config. Checked Oct 25, 2026.

Tools
20 read · 17 write · 9 delete · 4 not yet classified
Secrets
1 (API keys, tokens or passwords)
Install scripts
None found
Runs as
Node.js package

Tools by what they do 50

Read from the source code; the running server may list different tools.

Read 20 · Look things up without changing anything.

  • akb_activity
  • akb_browse
  • akb_diff
  • akb_drill_down
  • akb_explain_access
  • akb_get
  • akb_graph
  • akb_grep
  • akb_help
  • akb_history
  • akb_list_vaults
  • akb_provenance
Show 8 more tools
  • akb_publication_snapshot
  • akb_publications
  • akb_relations
  • akb_search
  • akb_search_users
  • akb_vault_info
  • akb_vault_members
  • akb_whoami

Write 17 · Create, change, send or run things.

  • akb_archive_vault
  • akb_create_collection
  • akb_create_table
  • akb_create_vault
  • akb_edit
  • akb_grant
  • akb_import
  • akb_move
  • akb_publish
  • akb_put
  • akb_put_file
  • akb_put_image
Show 5 more tools
  • akb_set_public
  • akb_sql
  • akb_transfer_ownership
  • akb_update
  • akb_update_file

Delete 9 · Delete, drop, revoke or wipe things.

  • akb_alter_table
  • akb_delete
  • akb_delete_collection
  • akb_delete_file
  • akb_delete_vault
  • akb_drop_table
  • akb_revoke
  • akb_unlink
  • akb_unpublish

Not yet classified 4 · We could not tell from the name and description.

  • akb_discard_image
  • akb_export
  • akb_get_file
  • akb_link

Secrets and settings it asks for

Secrets: values you paste in that let it act as you.

  • AKB_PAT

Other settings (environment variables or headers).

  • AKB_MCP_URL

Files it touches

  • Any path the agent passes to its tools

Tools (50)

Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].

  • akb_activity

    Get activity history for a vault — who changed what, when, and why. Returns Git commit history with changed file list. Use akb_diff to see the actual content changes for a specific commit.

  • akb_alter_table

    Modify a table's schema — add, remove, or rename columns via ALTER TABLE DDL. Requires admin role.

  • akb_archive_vault

    Archive a vault (makes it read-only). Only the owner can do this.

  • akb_browse

    Browse ALL vault content — documents, tables, and files — under a browse root. The browse root can be addressed two ways: pass a canonical `uri` (`akb://V` for vault root or `akb://V/coll/X` for a collection), or the legacy `vault` + optional `collection` pair. Use the URI form when drilling down from a previous response — every item carries a `uri` that can be pasted straight back in. `depth` is tree-depth from the browse root, mirroring `tree -L N`: 0 = direct children only (no descent), N = descend N collection levels, -1 = entire subtree. Collection rows are always emitted as navigation a…

  • akb_create_collection

    Create an empty collection (folder) inside a vault. Idempotent — returns {created: false} if the collection already exists. Writer or higher role.

  • akb_create_table

    Create a structured data table in a vault. The response carries the canonical `uri` — `akb://{vault}/coll/{collection}/table/{name}` when stored under a collection, or `akb://{vault}/table/{name}` at the vault root. Tables live alongside documents inside collections and follow the same permissions. Define columns with name and type (text, number, boolean, date, json). Optional `collection` (e.g. 'sessions/learnings') groups the table under that collection so it appears beside the documents and files there in akb_browse; omit for vault root.

  • akb_create_vault

    Create a new knowledge base vault (a separate, access-controlled repository for documents). Its name is unique across the AKB installation and becomes part of the canonical akb:// URI. Pass `external_git` to instead create a read-only mirror of an upstream git repo — the vault tracks the remote on a polling schedule and rejects user writes.

  • akb_delete

    Delete a document. Removes from Git, search index, and knowledge graph.

  • akb_delete_collection

    Delete a collection. If empty, removes the metadata row. If non-empty, requires recursive=true to cascade delete every document, file, and table under the path. Cascade emits one git commit for the document batch. Writer or higher role; admin or higher when any table is included.

  • akb_delete_file

    Delete a file from vault storage by its URI.

  • akb_delete_vault

    Permanently delete a vault and ALL its data — documents, chunks, tables, files, edges, Git repo. This cannot be undone. Owner or admin only.

  • akb_diff

    Get the content diff for a document at a specific commit. Shows what was added/removed/modified. Use akb_history or akb_activity to find commit hashes first.

  • akb_discard_image

    Discard a document image upload that was never committed in an AKB document. Use this only to clean up after a failed or abandoned akb_put/akb_update. Images already claimed by a document or retained Git revision cannot be discarded through this tool.

  • akb_drill_down

    Read section-level (L3) content of a document, or list its section headings. Two modes: - `mode='sections'` (default): return body content of matched sections. Filter with `section` (heading substring) and/or `pattern` (substring grep on body). On empty match the response carries an `outline` so you can retry. - `mode='outline'`: return heading paths only (no bodies). Use this to discover the document's structure cheaply before deciding which section to read. Returns {uri, sections|outline, returned, total?, truncated?, hint?}.

  • akb_drop_table

    Permanently delete a table and all its rows. Cannot be undone. Requires admin role on the vault.

Show 35 more tools
  • akb_edit

    Edit a single document by replacing exact text. Scope is one document. old_string must be unique within the document (or use replace_all). If old_string is not found or appears multiple times, the call fails with a clear error. Use this for inserting, replacing, or removing an inline image without resending the complete document body. For find-and-replace across many documents, use akb_grep with replace instead.

  • akb_explain_access

    Explain why a user holds the role they hold on a vault: every independent basis, and the effective role derived from them. A member list shows the result, never the reasons.

  • akb_export

    Export an entire vault as a portable knowledge bundle. Returns the bundle inline as a {path: content} map. The `format` parameter selects the on-disk format — currently 'okf' (Open Knowledge Format: markdown + YAML frontmatter, the only required field being `type`). Documents export 1:1; tables and files become OKF concept documents (schema / metadata + a `resource` pointer — the rows/bytes stay in AKB). Reader role required. For a downloadable zip, use the REST endpoint GET /api/v1/vaults/{vault}/export.

  • akb_get

    Retrieve a document by its URI. Returns full content with metadata. Use akb_browse or akb_search first to obtain the URI. Optionally pass a commit hash (from akb_history) to read a previous version.

  • akb_get_file

    Download a file from vault storage to a local path. Pass the file URI — `akb://{vault}[/coll/{coll_path}]/file/{uuid}` — from akb_browse or akb_put_file.

  • akb_grant

    Grant vault access to a user. You must be owner or admin of the vault. A rule-driven grantor should name its own source_key so it can later withdraw its own reason without deleting anybody else's.

  • akb_graph

    Get a same-vault knowledge graph — nodes (documents, tables, files) and edges (relations). Provide `uri` to get a subgraph centered on any resource with BFS traversal. Provide `vault` (without uri) to get the full vault graph.

  • akb_grep

    Search for exact text or regex patterns across document content. On a native Document backend, optionally include admitted searchable text Files with `include_text_files=true`; binary Files remain excluded. Unlike akb_search (semantic/meaning-based), this finds exact string matches — use it for specific terms, URLs, code snippets, version numbers, etc. Native matching and replacement use per-line Python regex semantics; case-insensitive literals use the same Unicode rules as replacement. Native results include body-relative line numbers and searched revision identity. Returns matching document…

  • akb_help

    Get help on AKB tools and workflows. Call with no arguments for an overview. Drill down into categories or specific tools for details and examples. START HERE if you're new to AKB.

  • akb_history

    Get version history of a document — who changed it, when, and why. Each entry is a Git commit. Use the commit hash with akb_get to read a previous version.

  • akb_import

    Import a knowledge bundle into a vault. Pass `files` as a {path: content} map (the shape akb_export returns). `format` selects the bundle format — currently 'okf'. Concept documents are imported as AKB documents; a `type: table`/`file` concept doc (which carries only schema/metadata, not rows/bytes) imports as a regular document describing that asset. Existing paths are skipped, not overwritten. Records targeting the reserved 'overview' collection or carrying type='skill' are skipped per-record and reported in the response's 'reserved' list. Writer role required.

  • akb_link

    Description is built at runtime.

  • akb_list_vaults

    List accessible vaults as {name, description} pairs. Response is slim — no metadata (id/role/created_at) — to fit large tenants in agent context. Returns {vaults, total, returned, truncated?, hint?}. Optional args: - filter: substring match on name+description (case-insensitive). Use to narrow to a domain (e.g. filter='finance'). - limit / offset: pagination when there are many matches. - include_archived: include archived vaults (default false).

  • akb_move

    Move or rename a document — change its collection and/or slug while keeping its identity and full git history. The old akb:// URI keeps resolving (a redirect is recorded), and graph links/publications are rewritten. Provide collection and/or slug (at least one must change). The title is unchanged; use akb_update to change the displayed title.

  • akb_provenance

    Get provenance for a document — who created it, when, which entities were extracted, and its visible same-vault relations.

  • akb_publication_snapshot

    Freeze a table_query publication's current result to S3 and flip its mode to 'snapshot' (subsequent visits return the cached result). Identified by `slug` alone — the vault is resolved from the publication. Returns the updated publication dict.

  • akb_publications

    List every publication in a vault. Each item is the canonical publication dict (same shape as `akb_publish` returns).

  • akb_publish

    Create a public, no-auth share URL for a document, file, or table query. Document/file: pass the resource `uri`. Table query: pass `query_sql` plus `vault` (and `query_vault_names` if the query touches more than one). Returns the canonical publication dict — `slug` is the only identifier you need; `share_url` is always an absolute URL ready to paste.

  • akb_put

    Store a new document. The response carries the canonical `uri` — `akb://{vault}/coll/{collection}/doc/{filename}` when stored under a collection, or `akb://{vault}/doc/{filename}` at the vault root. Use that URI to address the document from every other tool. Automatically chunked and indexed for semantic search.

  • akb_put_file

    Upload a local file to a vault's file storage (S3-backed). Use for PDFs, images, datasets, or any binary content too large for akb_put. Response includes the canonical `uri` — `akb://{vault}/coll/{collection}/file/{uuid}` when stored under a collection, or `akb://{vault}/file/{uuid}` at the vault root — pass that to akb_get_file / akb_update_file / akb_delete_file. MIME type is auto-detected from the filename extension unless overridden.

  • akb_put_image

    Upload a local PNG, JPEG, GIF, or WebP (maximum 10 MiB) for inline use in an AKB Markdown document. Returns a stable `/api/assets/{uuid}` URL and a ready-to-paste `markdown` image expression. For a new document, place it with akb_put. For an existing document, prefer a targeted akb_edit; akb_update(content=...) replaces the entire body and must never receive only an image fragment. Images are immutable: upload a replacement and edit the Markdown reference. This creates a hidden document attachment, not a standalone File; use akb_put_file when the binary should appear in browse/search. If the d…

  • akb_relations

    Get relations for any resource (document, table, or file). Shows same-vault cross-type connections: doc→table, doc→file, table→file, etc. Each row identifies whether it is an explicit link or implicit document-derived edge.

  • akb_revoke

    Revoke a user's vault access. You must be owner or admin. Omit source_key and the person is out of the vault entirely; name one and only that basis is withdrawn, which may downgrade rather than remove.

  • akb_search

    Search documents with hybrid retrieval — dense vector (semantic) fused with BM25 sparse (keyword) via Reciprocal Rank Fusion. Handles both natural-language questions and short keyword queries well. For exact string / regex matches (code, URLs, version numbers) prefer akb_grep. Returns each hit's `uri`; `collection_summary` and `vault_description` describe the hit's parent context but do not affect matching or ranking. Use akb_drill_down or akb_get with that URI for full content. Response reports `returned` (in `results`) and `total_matches` (size of the deduped prefetch pool — NOT a corpus-wid…

  • akb_search_users

    Search for users by username, display name, or email. Use this to find users before granting vault access.

  • akb_set_public

    Set vault public access level. Owner only. 'none'=private, 'reader'=public read, 'writer'=public read+write.

  • akb_sql

    Execute SQL on vault tables. Tables are real PostgreSQL tables. Use table names directly (e.g. 'pipeline', 'partners') — they are auto-resolved to the vault's tables. For cross-vault queries, list all vaults in the vaults parameter. Prefix table names with vault name for cross-vault: sales__pipeline, external_projects__partners. SELECT requires reader role. INSERT/UPDATE/DELETE requires writer role. Add a LIMIT to SELECTs unless you truly need every row — the full result set is returned (nothing is silently truncated), so an unbounded SELECT on a large table can send back a very large response…

  • akb_transfer_ownership

    Transfer vault ownership to another user. The current owner or a system admin can do this.

  • akb_unlink

    Remove an explicit same-vault relation between two resources. Implicit relations are removed by editing their source document. If relation type is omitted, removes all explicit relations between the two resources.

  • akb_unpublish

    Remove publication(s). Pass `slug` to remove one specific publication, OR `uri` to remove every publication of that document/file resource (handy when re-publishing). table_query publications have no resource URI, so remove them by slug. Returns {deleted: N}.

  • akb_update

    Update an existing document. Only provide fields you want to change. The `content` field replaces the complete Markdown body; never pass a partial fragment such as a newly uploaded image. Use a targeted akb_edit for inline insertion or replacement.

  • akb_update_file

    Replace the bytes of an existing vault file while preserving its URI. The local file is hashed before transfer; identical content is skipped. Pass expected_content_hash and/or expected_version from akb_get_file to reject stale writes with HTTP 409 instead of overwriting a concurrent change.

  • akb_vault_info

    Get detailed vault information: owner, member count, document/table/file/edge counts, last activity.

  • akb_vault_members

    List all members of a vault with their roles (owner, admin, writer, reader).

  • akb_whoami

    Get your current profile — username, email, display name, role. Use this to check who you are authenticated as.

Signals

Stars
163
Forks
11
Open issues
10
Last commit
Oct 22, 2026 (6 days ago)
Last release
Oct 19, 2026 (10 days ago)

From GitHub (fetched Oct 24, 2026).

Details

Registry name
io.github.dnotitia/akb
Version
2.0.4
Auth
API key
Packages
npm akb-mcp
License
License unknown
First seen
Oct 24, 2026
Last checked
Oct 25, 2026
Cite this page

Akb MCP server. Agent Mart. https://agentmart.dev/connectors/dnotitia-akb (last updated 2026-10-25)