Carbon Forge
by carbonforge.dev in Developer tools
One record of code, files and pages that people and agents read and write, with lanes and git.
https://carbonforge.dev/api/mcp- Tools
- 22
- open to any client
- Uptime
- 100%
- last 30 days
- Response time
- 1.4 s
- 2.0 s slowest 5%
- Last check
- Passed
- 2 h ago, next in 4 h
Reliability
Status and outage history · Atom feed · Watch with other listings
How to connect
Add it to any MCP client that supports remote servers.
{
"mcpServers": {
"carbon-forge": {
"type": "http",
"url": "https://carbonforge.dev/api/mcp"
}
}
}22 tools
- 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`…
- 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…
- 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: {…
- 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`…
- 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…
- 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…
- 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…
- 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…
- 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…
- 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…
Security scan
No findings
We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.
Recent checks
| When | Result | HTTP | Time |
|---|---|---|---|
| 2 h ago | Passed | 200 | 1.9 s |
| 14 h ago | Passed | 200 | 1.7 s |
| 25 h ago | Passed | 200 | 1.9 s |
| 37 h ago | Passed | 200 | 1.7 s |
| 2 days ago | Passed | 200 | 2.0 s |
Show 10 older checks
| 3 days ago | Passed | 200 | 2.0 s |
| 3 days ago | Passed | 200 | 1.4 s |
| 3 days ago | Passed | 200 | 1.5 s |
| 4 days ago | Passed | 200 | 2.0 s |
| 5 days ago | Passed | 200 | 2.0 s |
| 5 days ago | Passed | 200 | 1.2 s |
| 6 days ago | Passed | 200 | 1.8 s |
| 6 days ago | Passed | 200 | 1.9 s |
| 7 days ago | Passed | 200 | 1.2 s |
| 8 days ago | Passed | 200 | 1.2 s |