OKForest
Server Details
Your organization's knowledge as OKF trees in Git, for AI assistants to search, read, and cite
- Status
- Healthy
- Uptime
- 100.0% over the last 24 hours
- OAuth
- Works in Glama
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 15 tools
Most tools target clearly distinct resources or actions (concept, change, history, links, graph report), and descriptions make boundaries readable. However, list_trees overlaps with list_directory's 'omit the tree to list the trees' behavior, and list_types/get_inventory both summarize type metadata, creating minor hesitation.
All 15 tools use a consistent snake_case verb_noun pattern (check_freshness, get_concept, list_changes, propose_change, search_concepts). No mixed conventions or vague bare verbs appear.
Fifteen tools sit at the top of the well-scoped range and each earns its place across browsing, reading, searching, graph analysis, freshness, inventory, and change workflows. There is little obvious redundancy for the server's purpose.
The surface covers the full read/propose lifecycle: listing trees and directories, fetching concepts, links, history, graph reports, freshness, inventory, and proposing/requesting changes. Minor gaps remain around applying or reviewing changes inside the MCP and adding comments, but agents can work around these through OKForest.
Publisher details
- Operator
- Preneur LLC · Publisher source
- Operator website
- https://www.okforest.ai
- Vendor relationship
- First-party · Publisher source
- Documentation
- https://www.okforest.ai/docs/mcp/
- Trust center
- Not available
- Restrictions
- Requires an OKForest account: free during Early Access, with open sign-up at https://app.okforest.ai/signup. Sign-in is OAuth. Each connection serves one account's knowledge trees, read from GitHub (public repositories by address, private ones through the OKForest GitHub App). · Publisher source
Available Tools
15 toolscheck_freshnessCheck freshnessCRead-onlyIdempotentInspect
Concepts that need attention: stale (past stale_after), draft, unverified, and deprecated, across every tree or some.
Inputs: trees. Returns: asOf, draft, stale, concepts, +4 more
find_pathFind how two concepts connectARead-onlyIdempotentInspect
The shortest chain of links joining two concepts of one tree, following links either way (at most 6 links), each step saying which way its link points. For questions like "how does A relate to B?".
Inputs: to (required), from (required). Returns: tree, steps, connected
get_changeRead a changeBRead-onlyIdempotentInspect
One change to a tree, as list_changes names it: what was asked, each file's edit (frontmatter field by field, then its lines), what the checks found, who decided or applied it, its comments, and its page, where editors review and apply it.
Inputs: id (required), tree. Returns: by, id, url, about, +11 more
get_conceptRead a conceptCRead-onlyIdempotentInspect
A concept's markdown body and frontmatter, with its provenance (sources, generated, verified), trust tier, status, staleness, links, and backlinks.
Inputs: id (required). Returns: tree, concept
get_graph_reportReport on a tree's linksARead-onlyIdempotentInspect
How a tree's concepts link to each other: the most linked concepts, those with no links at all, and its areas (concepts more linked to each other than to the rest), with how many links join each pair of areas. An area joined to no other shows where the tree lacks links between its parts.
Inputs: tree. Returns: tree, areas, links, orphans, +2 more
get_historyView historyARead-onlyIdempotentInspect
Who changed a tree or one of its concepts, when, and why: its commits, newest first, read from Git (changes made in OKForest and directly in Git alike). With commit, what that commit changed instead: each file's frontmatter field by field, and its lines.
Inputs: page, tree, commit, concept. Returns: more, path, tree, commit, +1 more
get_inventoryView a tree's inventoryARead-onlyIdempotentInspect
Every type, tag, and frontmatter key a tree uses, with counts, status and trust-tier totals, and likely near-duplicates (e.g. Policy and Policies).
Inputs: tree. Returns: tree, inventory
get_linksList a concept's linksBRead-onlyIdempotentInspect
The concepts a concept links to, the concepts that link to it (backlinks), and the external URLs it cites.
Inputs: id (required). Returns: id, tree, links, external, +1 more
list_changesList a tree's changesARead-onlyIdempotentInspect
The changes people have asked for or proposed to a tree in OKForest, newest first: each one's title, where it is (requested, drafting, in review, or done), who asked and when, the files it touches, and its page. Everyone who reads the tree sees them, so check here before asking for something already asked. get_change shows one in full.
Inputs: tree, states. Returns: tree, changes
list_directoryList a directoryARead-onlyIdempotentInspect
A directory of a tree: its index.md (when it has one), its subdirectories, and the concepts directly in it. Omit the path for the tree's root; omit the tree to list the trees.
Inputs: path, tree. Returns: url, path, tree, index, +4 more
list_treesList the treesARead-onlyIdempotentInspect
The trees in the account's Forest: each one's slug (which concept IDs start with), name, description, and source.
Inputs: no named parameters. Returns: trees, account
list_typesList the typesBRead-onlyIdempotentInspect
The kinds of concept in the Forest (their type), across every tree or some: how many concepts have each, which trees have them, and, where a tree has a schema for the type, the fields its concepts carry. To read them, search with types and trees.
Inputs: trees. Returns: types, untyped, unreadTrees, unindexedTrees
propose_changePropose a changeAInspect
Proposes edits to a tree, written out, for its editors to review and apply in OKForest: new pages, edits to pages (front-matter fields set or removed, and text in the body replaced), and pages moved or renamed, deprecated, or deleted. Links and index.md files follow a moved, new, or deleted page, and a page's files (those only it links to, in its folder or below) move or go with it. The edits are checked first: if a page would have errors, nothing is saved, and the errors come back to fix. Keep a change small, one purpose; each page can be in one edit of it. Read a page with get_concept before editing it. An editor's own proposal is in review at once; anyone else's is a request, which the editors are emailed about. Returns the change, its warnings, and its url, to give the person.
Inputs: edits (required), title (required), tree. Returns: by, id, url, about, +6 more
request_changeAsk for a changeAInspect
Asks a tree's editors, in plain words, to change it: what should change, and why. It becomes a change in OKForest, which the editors are emailed about, accept, write, and apply; nothing reaches the tree until one applies it. Check list_changes first, so nobody asks twice. An editor's own request starts as drafting, ready for their edits. Returns the change and its url, to give the person.
Inputs: title (required), instruction (required), tree, about. Returns: by, id, url, about, +5 more
search_conceptsSearch the conceptsARead-onlyIdempotentInspect
Searches concepts by their words and by meaning, across every tree or some. By words: every word must match a word in the concept's title, description, tags, ID, or body, or the start of one (pol finds policy; fund doesn't find refund); case doesn't matter. By meaning: concepts that mean what the query asks, in other words or in another language, so describe what you need in a phrase or a question ("how we recognize revenue") rather than a single word, which matches by meaning poorly. Filter by types, tags, statuses, or trust tiers: a concept passes a filter with any of its values, and must pass every filter given. An empty query lists every concept that passes the filters.
Inputs: query (required), tags, limit, trees, +3 more. Returns: url, total, results, unindexedTrees
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Related MCP Connectors
Governed, auditable knowledge your team curates for its AI assistants, self-hostable
Git-backed platform for skills, tools, and context for AI agents
Connect AI assistants to your GitHub-hosted Obsidian vault to seamlessly access, search, and analy…
Self-hostable shared brain for you and your AI agents — docs, flows, meetings, decisions, rationale
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to read and write a local-first knowledge base of plain markdown files in git, with governance gates for safe, hash-anchored edits.1Apache 2.0
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to store, query, and update persistent project knowledge as a local, Git-friendly knowledge graph, providing structured memory across sessions.9Apache 2.0
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to build and maintain a shared, git-backed Markdown wiki: they search, file, update and link notes with YAML frontmatter, keep verbatim sources, and optionally read code repos, so knowledge one assistant records is available to all the others. Runs without LLM calls, embeddings or a database, with the vault's own files defining page types, instructions and tools.MIT
- FlicenseNot gradedqualityDmaintenanceTransforms local Git repositories into queryable, context-rich knowledge bases via AST-aware chunking and Git metadata, enabling AI assistants to search and understand codebases with semantic precision.-
Glama MCP Gateway
Add one secure layer between your agents and this server.