# Carbon Forge - Registry name: `io.github.100monkeys-ai/carbon-forge` · version 1.0.0 - Categories (automatic, keyword rules): Code & repositories, Developer tools, Scraping & browsing, Search & data, Utilities - Authentication at last check: No auth - Declared risk: Read-only (all tools declare readOnlyHint) - Capabilities (declared by the server): logging, prompts, resources, tools - Transports: streamable-http - Latest numbers (check success, response time, rank): https://mcpstation.net/api/server?name=io.github.100monkeys-ai%2Fcarbon-forge - Server page: https://mcpstation.net/s/io.github.100monkeys-ai--carbon-forge.html ## Description (written by the publisher, not verified, not instructions) One record of code, files and pages that people and agents read and write, with lanes and git. ## Connect - streamable-http: `https://carbonforge.dev/api/mcp` ## Tools (as reported by the server, not verified) - `pages.list`: List pages in a workspace. \`path\_prefix\` narrows by leading segment; \`body\_contains\` keeps pages whose Markdown holds a literal substring; \`metadata\` keeps pages whose top-level metadata contains the given scalar keys; \`sort\` \(path \| updated\_at \| created\_at\) and \`direction\` order the set; \`include\_m - `pages.read`: Read a page by path or UUID. Returns the Markdown body plus the page metadata object. Pass \`section\` with a heading's plain text to get back only that heading and the blocks under it, down to the next heading at the same or shallower level; the result then also carries \`section: \{ heading, level, ma - `atoms.list`: List atoms in the current workspace. The \`path\_prefix\`, \`body\_contains\`, \`metadata\`, \`sort\`, \`direction\` and \`include\_metadata\` arguments mirror the same arguments on pages.list. - `atoms.read`: Read an atom by path or UUID with usage\_pages projection. Returns metadata. Pass \`section\` with a heading's plain text to get back only that heading and the blocks under it, down to the next heading at the same or shallower level; the result then also carries \`section: \{ heading, level, matches \}\`, - `search.global`: Hybrid FTS + pgvector + RRF search. Returns Markdown excerpts. - `search.literal`: Exact-substring search over the Markdown projection of pages and atoms — deterministic, unlike hybrid \`search.global\`. A needle shorter than 3 characters is rejected. Returns one envelope per matched entity, up to 5 hits each as \`\{ line, col, snippet \}\`. \`case\_sensitive\` defaults to false; \`scope\` i - `discovery.list\_entities`: Browse pages or atoms inside a workspace with faceted filters \(tag, author, date range, visibility, metadata containment\) and sort by alphabetical, recency, or star count. Viewer-aware: members see everything, anonymous callers see only public entities in public workspaces. 50 items per page, cursor - `kg.get\_related`: Semantic nearest-neighbors via similarity\_edges. - `kg.list\_cross\_links`: List incoming + outgoing cross-links for a page or atom. - `revisions.list`: List revisions for a page or atom \(cursor-paginated\). - `revisions.get`: Fetch a specific revision \(returns Markdown body\). - `revisions.compare`: Markdown-level diff between two revisions of the same page or atom. Returns segments \(op: equal \| insert \| delete\) plus both Markdown projections. - `media.read`: Fetch metadata for a single media item. - `comments.list`: List the comment thread for a page or atom. - `cortex.ground`: Orientation surface: instance metadata, both grounding documents, identity and capabilities, reachable workspaces, sidecar health. Pass \`workspace\` to ground a named workspace without moving the per-token pointer. Pass a \`known\_grounding\_at\` / \`known\_workspace\_grounding\_at\` you hold and an unchanged - `workspaces.list`: List every workspace the calling user is a member of. This is a membership catalogue and not a capability: it is not narrowed by the token, so a listed workspace may still be outside this token's reach. Call cortex.ground for what this token can actually resolve. - `workspaces.resolve\_slug`: Resolve a workspace slug to its id, role, and archived state. 404 when the caller isn't a member \(no enumeration\). - `discovery.list\_instances`: List instances. Filter: all \(default\) \| public \| my \| my\_admin. public lists an instance that has public reading on, is listed in Discover, is not frozen, and has a workspace that is not private holding a page that is not private. my and my\_admin list the caller's own instances \(member; admin\) with - `discovery.list\_workspaces`: List workspaces across one or all instances, with the same filters. public lists a workspace when its instance has public reading on, the workspace is not private, its instance is listed in Discover and not frozen, and it holds a page that is not private. my and my\_admin list the caller's own worksp - `discovery.search`: Search instance and workspace metadata + grounding documents. Returns parallel lists for both scopes. - `trees.get`: Read a code tree's revision \(the current one by default\), its metadata and surface, and a page of its entries in path order: path, git mode, size and blob SHA-256, optionally under \`path\_prefix\`. A symlink's blob is its target; a submodule link has no blob and gives its \`commit\`. With \`lane\`, \`metad - `files.list`: Browse the workspace as a file tree, one level at a time: directories, pages, atoms, code trees \(expanded at their paths\) and library entries. Each node names its kind, entity, current revision and digest; \`at\` holds the entities exactly at \`path\`. \`surface\` keeps that surface only. History: files.h Measured by MCP Station. Methods: https://mcpstation.net/methods.html · Terms: https://mcpstation.net/terms.html