← Discover MCPs and Agents
K
MCPAI & MLMCP Registry

Knowtis

Create, search and manage Knowtis collaborative notes from AI assistants.

Links

README

From the repo.

Knowtis

Knowtis

Collaborative notes with an AI that reads, edits, and studies alongside you.

CI MIT license knowtis.app


Knowtis is a local-first, real-time notes workspace where AI is a collaborator rather than a chat window. It edits with you inside the document, proposes changes you approve, and turns what you write into material you can study.

Features

Write. A Tiptap editor with slash commands, ghost-text suggestions, and inline AI actions to rewrite, summarize, translate, or expand a selection. Voice notes are recorded and transcribed in place.

Collaborate. Yjs CRDT sync with live presence and remote cursors. Notes persist to IndexedDB, so editing works offline and reconciles when you reconnect.

Study. Flashcards, quizzes, summaries, and mind maps generated from your notes, with SM-2 spaced repetition to schedule reviews.

Extend. A conversational copilot that reads and edits notes with human-in-the-loop approval, per-turn reasoning effort, and bring-your-own-key billing across Anthropic, OpenAI, and Google. An MCP server exposes your notes to Claude Desktop, Cursor, and VS Code.

Quick start

Requires Node.js 22, pnpm 10, and Docker.

git clone git@github.com:jovandyaz/knowtis-app.git
cd knowtis-app
pnpm run setup  # deps, .env files, Postgres + Redis, migrations
pnpm dev:all    # API :3333, Notes :4200, Backoffice :4400

run is required: bare pnpm setup is a pnpm built-in. AI features need OPENROUTER_API_KEY in apps/api/.env (Anthropic, OpenAI and Google keys are optional per-provider) and the ai_enabled feature flag. The full walkthrough, including how email verification works locally and how to connect an MCP client, is in docs/LOCAL_SETUP.md.

Stack

LayerTechnology
FrontendReact 19, Vite, TanStack Router and Query, Tailwind CSS
BackendNestJS 11, Drizzle ORM, Socket.io
DataPostgreSQL 16, Redis 7
Real-timeYjs (CRDT), Hocuspocus, IndexedDB
AIVercel AI SDK, OpenRouter, Anthropic, OpenAI, Google, MCP
ToolingNx 22, TypeScript 5.9, Vitest, pnpm

Repository layout

apps/
  api/            NestJS backend: auth, notes, collaboration, AI, copilot agent, MCP keys
  notes/          React frontend: editor, collaboration, study tools
  backoffice/     Admin surface: users, feature flags, AI config and metrics
  mcp/            Standalone MCP server (Hono)
libs/
  api-client/     Typed HTTP and WebSocket client
  data-access/    React Query hooks and Zod schemas, per domain
  authorization/  CASL permission definitions shared by frontend and backend
packages/
  ai-gateway/     Framework-free AI core: provider fallback, injection guard, token costing
  crdt/           Yjs helpers
  editor/         Tiptap editor and schema
  design-system/  UI components and design tokens
  auth/ permissions/   Core packages with React and NestJS adapters
  email/          React Email templates and NestJS adapter
  shared/         Hooks, i18n, types, utilities

Dependency direction is enforced with Nx module boundaries: app → ui / data-access → util. See docs/ARCHITECTURE.md.

Documentation

Contributing

Issues and pull requests are welcome. Read CONTRIBUTING.md before you start, and see SECURITY.md to report a vulnerability privately. This project follows the Contributor Covenant.

License

MIT

Config for your environment

Use the endpoint URL below in your config. No API key — you connect directly.

Tool

OS

Config file: ~/.cursor/mcp.json

{
  "mcpServers": {
    "mcp-server": {
      "url": "https://mcp.knowtis.app/mcp"
    }
  }
}

Paste into mcpServers in the config file. Restart Cursor after saving.

If this MCP is also published on mcpchannel.ai, you can subscribe from Browse and use the gateway config there instead.