Airsc is free for everyone. If it helps you, support it with $2–$20.

Support
MCP serverSafeDocs, writing & contentSome setup

zen

sheshbabu · sheshbabu/zen

This self-hosted notes app stores Markdown notes in SQLite with full-text search and offers an experimental MCP interface for AI agents to search, list, and read your notes.

Selfhosted notes app. Single golang binary, notes stored as markdown within SQLite, full-text search, very low resource usage

1.2k stars64License: AGPL-3.0Updated 14 days ago0 opens

Preview

▍

What you can do with it

  • Allow your AI agent to search and retrieve specific Markdown notes from your self-hosted Zen instance.
  • Have an AI agent list all notes tagged with a certain keyword within your personal knowledge base.
  • Integrate your notes with an AI workflow for content summarization or information retrieval by making them accessible via MCP.

Safety check

Safe

No risky patterns found in the files we scanned.

Automated scan of the repo files. Always review code you run.

From the README

Zen

Live Demo •
Features •
Updates

Features

  • Single Go binary or Docker Compose
  • Low resource usage
  • Standard Markdown files, local SQLite database
  • Organize with flexible tags, not rigid folders
  • Markdown features like tables, code blocks, task lists, highlights, and more
  • Full-text search with BM25 ranking
  • Import and export data with full portability
  • Templates
  • Pinned notes
  • Archive and soft delete notes
  • Bulk archive and delete
  • Version history
  • Internal note links with side panel preview
  • Minimal dependency footprint
  • Automated backups (via Zen Backup)
  • Import from other services (via Zen Import)

Experimental Features

  • Canvas for spatial organization of notes and images (stored as JSON Canvas)
  • Semantic search for notes and images (via Zen Intelligence)
  • Similar images (via Zen Intelligence)
  • MCP for searching, listing and reading notes

Installation

Build from source

$ make build

Local Development

Run the application using default configuration

$ make dev

Run the application in watch mode

Install air and esbuild

$ go install github.com/air-verse/air@latest
$ go install github.com/evanw/esbuild/cmd/esbuild@latest
$ make watch

Schema Migrations

  • Create new migration file under ./migrations
  • Use the format <version>_<title>.sql

Image Versioning

$ git tag x.y.z
$ git push origin x.y.z

Contributions

This is a personal project built for my own use. The codebase is available for forking and modifications. Note that I may not actively review pull requests or respond to issues due to time constraints.

Thanks

View source on GitHub