Skip to main content
Glama

✨ xtiandOS

Agentic home-lab web OS for Kali Linux with mjane, the copilot manager.

Run it

npm install
npm run db:push        # first time only
cp .env.example .env   # set MASTER_SECRET!
npm run dev:api &      # http://localhost:3101
npm run dev:web        # http://localhost:5174

CLI: node apps/cli/bin/xos.mjs (or npm link -w apps/cli β†’ xos ask "...")

Related MCP server: AnythingLLM MCP Server

MCP

xtiandOS is both an MCP host (client) and an MCP server.

As a client (mjane uses external MCP servers)

Manage servers in 🧩 Skills & MCP:

  • stdio servers β€” local tools like the reference filesystem or sequential-thinking servers: npx -y @modelcontextprotocol/server-filesystem ./

  • Streamable HTTP servers β€” remote tools with optional auth headers

  • Add servers in the UI, or declare them in mcp.json (claude_desktop_config.json-compatible format) and press Sync mcp.json. Reference: mcp.example.json.

  • Each server can be probed to list its tools, resources, and prompts; resources and prompts can be read/fetched from the UI.

Enabled servers are connected at chat time and their tools are exposed to mjane as mcp_<tool>.

As a server (any MCP client connects to xtiandOS)

Packet packages/mcp-server exposes the brain, memory, chat, message bus, shell, docker, and artifact tools plus resources, prompts, roots, and sampling:

# stdio (point any MCP client at this command)
node --import tsx packages/mcp-server/src/index.ts

# Streamable HTTP (http://0.0.0.0:8942)
XTIANDOS_MCP_PORT=8942 node --import tsx packages/mcp-server/src/http-server.ts

Capabilities: tools, resources (subscribe + listChanged), prompts, roots, sampling. Configure from mcp.json:

{
  "mcpServers": {
    "xtiandos": {
      "command": "node",
      "args": ["--import", "tsx", "/abs/path/xtiandOS/packages/mcp-server/src/index.ts"]
    }
  }
}

What mjane can do

Area

Where

Multi-model chat (searchable picker, encrypted API keys)

πŸ’¬ mjane + βš™οΈ Settings

Obsidian vault brain β€” read/write/clean/RAG memory

🧠 Brain

Skills (SKILL.md, install from GitHub) + MCP servers

🧩 Skills & MCP

Projects + kanban workflow tasks (drag & drop)

πŸ“‹ Projects

Artifact generation (code/docs/SVG/images)

🎨 Studio

Sandboxed shell (audit-logged, destructive-blocked) + Docker control

⌨️ Terminal

Architecture

  • apps/api β€” Express + Prisma 7 (SQLite) + agent orchestration

  • apps/web β€” React 19 + Vite, dark theme

  • apps/cli β€” xos terminal companion

  • packages/shared β€” domain types

  • packages/mjane-core β€” providers, planβ†’actβ†’observe loop, tools, hybrid RAG

  • packages/mcp-bridge β€” MCP stdio client (connect any MCP server)

Memory: vault notes are chunked + embedded into MemoryChunk; retrieval = cosine (50%) + keyword overlap (40%) + recency decay (10%). Reindex from the Brain page. Provider embeddings upgrade automatically when a key works.

Rules

  • No unprompted commits. Tests required per feature (npm test).

  • Never commit .env / *.db / installed skills.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Enables MCP-compatible clients to interact with AnythingLLM, providing tools for workspace management, chat and thread operations, document operations, vector search, and system inspection.
    34
    6
    MIT
  • F
    license
    Not graded
    quality
    A
    maintenance
    Enables MCP-compatible AI clients to invoke CLI-driven agent tools over Streamable HTTP, including shell execution, file operations, patching, image viewing, web search, and nested agent tasks, with permission modes and real-time progress streaming.
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI clients to connect to example tools, resources, and prompts over MCP, demonstrating integration with IDEs, chatbots, and agent frameworks.
    -