Arkon

Arkon

Self-hosted enterprise knowledge hub that compiles organizational docs into a structured wiki and serves it to AI clients via MCP with fine-grained access control.

Category
Visit Server

README

Arkon - The Open-Source Enterprise AI Knowledge Hub & MCP Server

<p align="center"> <a href="LICENSE"><img src="https://img.shields.io/badge/License-PolyForm_Internal_Use_1.0.0-blue.svg" alt="License"></a> <a href="https://github.com/nduckmink/arkon/stargazers"><img src="https://img.shields.io/github/stars/nduckmink/arkon.svg" alt="GitHub Stars"></a> <a href="https://www.docker.com/"><img src="https://img.shields.io/badge/Docker-Ready-blue.svg" alt="Docker"></a> </p>

<p align="center"> <img src="docs/assets/arkon.png" alt="Arkon" width="720"> </p>

Arkon is a self-hosted, enterprise-grade knowledge management layer that bridges organizational data and AI clients. It runs as a centralized MCP Server (Model Context Protocol), compiling your SOPs, policies, and internal docs into a structured, traceable knowledge wiki - then serving that wiki to Claude and other LLMs through a single permission-scoped endpoint.

πŸš€ Why Arkon?

In most organizations, AI adoption is fragmented. Employees copy-paste documents into chatbots, producing inconsistent context, security risks, and duplicated work.

Arkon treats AI as a managed organizational resource. Every employee gets the right context, automatically and securely - filtered by their department and role.

<p align="center"> <img src="docs/assets/how-arkon-works.png" alt="How Arkon Works" width="720"> </p>


✨ Key Features

🧠 Intelligent Knowledge Wiki - the MRP Pipeline

Unlike a vector database that just chunks and indexes, Arkon's MRP pipeline (Map β†’ Reduce β†’ Plan-review β†’ Refine β†’ Verify β†’ Commit) actually compiles documents into a coherent wiki of interlinked pages.

  • Plan review before write: every ingestion produces a human-reviewable plan listing which wiki pages will be created or updated. Editors can regenerate the plan with feedback before any page is written.
  • Page merge instead of overwrite: when a new source touches an existing wiki page, content is LLM-merged so prior knowledge is never lost.
  • Traceable claims: every page records the source documents it was compiled from.
  • Image-aware: vision captions are baked into source text before compilation, so wiki pages reference the right images in the right places.
  • Resumable: drafts persist mid-pipeline; a crashed run resumes without re-doing the expensive LLM work.

πŸ“š Wiki Browser & Knowledge Graph

  • Three-panel layout: page tree, content, backlinks & outlinks.
  • Full-text + semantic (pgvector) search.
  • Interactive knowledge graph visualization (per-scope or global).
  • Wikilink-style cross-references between pages.
  • Version history and rollback on every page.
  • Draft proposal β†’ editor review β†’ approval workflow.

<p align="center"> <img src="docs/assets/arkon-wiki-ui.png" alt="Arkon Wiki Browser UI β€” three-panel knowledge base with page tree, content viewer, and knowledge graph" width="720"> </p>

🏒 Department & Global Scopes

Precise context boundaries with their own scoped wiki, document set, and department rosters.

  • Department-level isolation for HR, Legal, Engineering, etc.
  • Global scope for company-wide SOPs, policies, and general knowledge.
  • Hard scope enforcement: members only see knowledge from their assigned departments or the global realm - at the API, MCP, and search layers.

πŸ›‚ Fine-Grained RBAC

Role-based access control at the department and global levels.

  • Built-in roles: Viewer Β· Contributor Β· Editor Β· Admin to control draft, edit, and setting access.
  • Granular permissions (doc:read:own_dept, wiki:edit:all, org:settings:manage, ...).
  • Audit log for every privileged action - settings changes, plan approvals, and role updates.

πŸ”Œ MCP Server for Claude & Other AI Clients

Employees connect Claude Desktop or Claude.ai to Arkon via OAuth 2.1 + PKCE β€” just add the server URL and sign in through the browser. No manual token copying required. The MCP server exposes:

  • Wiki tools - search_wiki, read_wiki_page, list_wiki_pages, read_wiki_index.
  • Source drill-down - get_source, get_source_outline, get_source_pages, list_sources.
  • Edit workflow - propose_wiki_edit, edit_wiki_page, list_pending_drafts, review_draft, approve_draft, reject_draft.
  • Discovery - list_knowledge_types, get_knowledge_type_docs.

All tools enforce per-token scope (department, knowledge type, source list).

🧰 AI Skills Distribution

Upload custom agent packages once and distribute them across the org.

  • Versioned skill packages (.zip with SKILL.md).
  • Department-scoped visibility.
  • Contribution workflow for end-user updates.

πŸ€– Pluggable AI Providers

Catalog-driven selection - admins pick from a curated list with context window, cost, and capability metadata on display.

  • LLM: Anthropic Claude (Opus / Sonnet / Haiku 4.x), Google Gemini (3.x Pro / Flash / Flash-Lite, 2.5), OpenAI (GPT-5.x, GPT-4.x).
  • Embedding: Google gemini-embedding-*, OpenAI text-embedding-3-* - switchable with online re-embed migration (active model atomically flipped on completion, no zero-result search window).
  • Vision: Google Gemini Flash, OpenAI GPT-4o family.

πŸ”’ Privacy & Security First

  • Self-hosted. Deploy on-prem or in your private cloud via Docker.
  • No telemetry. Outbound traffic goes only to the AI provider you choose.
  • Encrypted at rest. API keys stored with Fernet encryption in PostgreSQL.

πŸ› οΈ Tech Stack

<p align="center"> <img src="docs/assets/arkon-architecture.png" alt="Arkon Architecture" width="720"> </p>

  • Backend: FastAPI Β· PostgreSQL + pgvector Β· Redis (arq workers) Β· MinIO
  • Frontend: Next.js Β· Tailwind CSS
  • AI integration: Model Context Protocol via FastMCP
  • Document parsing: PDF, DOCX, DOC, plain text, URLs, embedded images

πŸ’» Server Requirements

Arkon runs 7 Docker containers (PostgreSQL + pgvector, Redis, MinIO, FastAPI API, 2 ARQ workers, Next.js frontend). The table below provides recommended configurations based on team size:

Starter Team Enterprise
Team size 1 – 20 20 – 100 100+
vCPU 2 cores 4 cores 8+ cores
RAM 4 GB 8 GB 16+ GB
Storage 40 GB SSD 100 GB SSD 250+ GB NVMe SSD
OS Ubuntu 22.04+ / Debian 12+ Ubuntu 22.04+ / Debian 12+ Ubuntu 22.04+ / Debian 12+
Use case Evaluation / small teams Departmental deployment Organization-wide rollout

[!NOTE]

  • RAM is the primary bottleneck β€” the MRP pipeline workers load large LLM context windows into memory during wiki compilation.
  • Storage scales with your document corpus β€” pgvector indexes, MinIO file storage, and PostgreSQL WAL logs are the main consumers.
  • All AI inference happens externally (Anthropic / Google / OpenAI APIs), so GPU is not required.
  • A reverse proxy (Nginx / Caddy) with SSL is recommended for production. See Setup Guide.

🚦 Quick Start (Docker)

[!NOTE] Arkon is built for teams, not individuals. If you're looking for a personal knowledge setup, Obsidian + Claude Skills is a much simpler fit.

Not a tech person? Skip the self-hosting hassle β€” reach out for a free guided demo tailored for your team. No config, no Docker, just a walkthrough of what Arkon can do for your organization.

Prerequisites: Docker & Docker Compose, plus an API key from your preferred AI provider (Anthropic, Google, or OpenAI).

  1. Clone the repository:

    git clone https://github.com/nduckmink/arkon.git
    cd arkon
    
  2. Configure environment:

    cp .env.docker.example .env.docker
    # Edit .env.docker - set SECRET_KEY, admin credentials, and Postgres/MinIO secrets
    
  3. Launch:

    docker compose --env-file .env.docker up -d --build
    
  4. Access the portal at http://localhost:3119, sign in as admin, then go to Settings to pick your embedding / LLM / vision models and paste API keys.

β†’ See Setup Guide for development mode and the full env reference.


πŸ”— Connecting Claude

In Claude Desktop or Claude.ai β†’ Settings β†’ Connectors, add a custom connector:

  • Name: Arkon
  • URL: https://your-arkon-server/mcp

Click Connect β†’ a browser window opens with the Arkon login form β†’ sign in with your Arkon credentials β†’ done. Arkon uses OAuth 2.1 + PKCE so no manual token setup is required.

To make Claude consistently use Arkon, add this to Claude's Custom Instructions (Settings β†’ Custom Instructions):

Whenever answering questions related to the company β€” its processes, products,
people, departments, policies, or projects β€” always search Arkon first using
the search_wiki tool before relying on general knowledge.

For stronger enforcement, create a Project in Claude Desktop, attach Arkon as a connector, and paste the same text as Project Instructions.

<p align="center"> <img src="docs/assets/arkon-in-use-of-claude.png" alt="Arkon in use with Claude Desktop" width="720"> </p>

β†’ See MCP & Claude for the complete tool reference.


πŸ—ΊοΈ Roadmap

  • [x] MRP Pipeline - deterministic compilation with plan review, page merge, and resume-on-crash.
  • [x] MCP Server - scoped wiki + source + draft tools.
  • [x] Department & Global Scopes - department isolation with RBAC.
  • [x] Wiki draft & revision workflow - propose, review, approve, rollback.
  • [x] AI Skills - versioned, department-scoped agent packages.
  • [x] Catalog-driven model selection - LLM, embedding, and vision picked from a curated list with cost/context-window metadata.
  • [x] Online embedding migration - atomic re-embed with no search downtime.
  • [x] Audit log - privileged actions tracked.
  • [ ] Rich media ingestion - bulk folder upload with images, videos, and Excel/spreadsheet parsing baked into the MRP pipeline.
  • [x] Usage analytics dashboard
  • [ ] External data import - connectors for SharePoint, Google Drive, Notion, and other common org data sources.
  • [ ] Arkon CLI - one-command setup for employees.
  • [ ] Notification system - for draft reviews and plan approvals.

⭐ Star History

Star History Chart


πŸ“„ License

Arkon is licensed under the PolyForm Internal Use License 1.0.0. Free for internal business operations; you may not offer Arkon as a service to third parties.

For enterprise support or custom integrations, please contact the maintainers.


Keywords: Enterprise AI, Model Context Protocol, MCP Server, Knowledge Management System, Self-hosted RAG, AI Knowledge Base, Claude MCP, LLM Context Management, Open Source Wiki.


πŸ“¬ Contact

Main Author Minh Nguyen (Nguyα»…n Đức Minh) β€” Vietnam (GMT+7) Β· Fluent English βœ‰οΈ duckmink.bitsness@gmail.com

Company BITSNESS TECHNOLOGY AND SOLUTIONS COMPANY LIMITED βœ‰οΈ bitsness.ad@bitsness.vn

For enterprise inquiries, demo requests, or custom integrations β€” email us directly.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured