WitWiki

A shared team wiki your coding agents read and write, across every repo and every MCP client.

Community: Submitted by a user or imported; check the owner before granting accessOnlineNo sign-inGlobalFreeCan modify data

What it can do

  • Project Create: Create a new project within the caller's organization.
  • Project Get: Get a project by ID, scoped to the caller's organization.
  • Project List: List all projects in the caller's organization.

What data it sees

Do you need an account

No: the server works without sign-in

A shared team wiki your coding agents read and write, across every repo and every MCP client.

One wiki instead of one memory file per repo, per vendor, per person. Claude Code for one teammate, Cursor for the next, Codex in another repo, the same pages.

How an agent uses it

  • wiki_getBrief({task}): start here. One call returns the pages worth reading for the task, each with its content, its version, its age, and whether a person or an agent wrote it last.
  • wiki_patchPage: change part of a page against the version you read. A stale write is refused with a diff of what changed since, so nobody's edit is silently overwritten.
  • wiki_getPage, wiki_listPages, wiki_updatePage, wiki_appendLog, wiki_lint, and the rest of the wiki, project and source tools.

What the team gets

  • Every edit carries a name: which agent wrote it, or which person.
  • Full version history, and any version goes back in one click in the browser.
  • Per-user API keys with scopes, roles, and a hash-chained audit log.

Free is permanent: three editor seats, no card. Agent seats never count against them.

Server tool list (22)

Raw names from tools/list. Only developers need these.

project_createCreate a new project within the caller's organization.
project_getGet a project by ID, scoped to the caller's organization.
project_listList all projects in the caller's organization.
project_updateUpdate the name of a project, scoped to the caller's organization.
source_uploadUpload a raw source file. Accepts base64-encoded file content and stores it in blob storage, returning the created RawSource record. Use wiki_markSourceIngested after the content has been incorporated into wiki pages.
wiki_appendLogAppend an entry to the chronological wiki log. Used to record ingests, queries, and other notable activity.
wiki_deletePageDelete a wiki page. Returns an error if the page does not exist.
wiki_deleteSourceDelete a raw source and its associated blob object.
wiki_getBriefStart here: one call to orient on a task. Returns the pages you should read, ranked by search, recency, links and name, packed under a token budget (default 2000), each with its content, version, age and last author, so you can read what matters and patch it without a second lookup. wiki_getIndex and wiki_getLog are for the map.
wiki_getIndexFetch the wiki index page (path: "index").
wiki_getLogFetch the most recent entries from the wiki log, newest first.
wiki_getPageFetch a wiki page by path. Returns title, markdown content, metadata, timestamps, and version — the token to pass back as expected_version when you write, so nobody's edit is silently overwritten.
wiki_getSourceGet metadata for a single raw source by ID.
wiki_guideHow to use WitWiki: conventions (wikilinks [[path]], mermaid diagrams over ASCII art), the read-before-write loop, and the available tools. Call this first after connecting.
wiki_lintRun health checks on the wiki: returns orphan pages (no inbound links) and dead wikilinks (targets that don't exist).
wiki_listPagesList wiki pages. With q, runs full-text search; with prefix, filters by path prefix; otherwise returns the most recently updated pages.
wiki_listSourcesList raw sources (uploaded files) for the current project.
wiki_markSourceIngestedMark a raw source as ingested. Call this after reading a source and incorporating its content into wiki pages, so the same source is not re-processed in future sessions.
wiki_patchPageEdit part of a page without resending it: replace exact text, insert after a line, replace a section, append to a section, or create one. Pass base_version from wiki_getPage. Anchors must match exactly once; a stale base is refused with VERSION_CONFLICT and a diff of what changed since; a missing or ambiguous anchor is refused with the nearest lines. Returns the new version and the tokens saved versus an overwrite. Prefer this over wiki_updatePage for anything smaller than a rewrite.
wiki_rebuildGraphRe-parse every page and atomically rebuild the link graph. Prunes stale edges left by bulk edits, renames, or structural reorganisation.
wiki_updateIndexCreate or update the wiki index page.
wiki_updatePageCreate or fully overwrite a wiki page — use wiki_patchPage for anything smaller than a rewrite. Pass expected_version from wiki_getPage: if the page changed since, the write is refused with VERSION_CONFLICT, the current version, and a diff of what changed, so you can re-apply instead of overwriting. The server parses [[wikilinks]] from content and refreshes the link graph automatically.