LibrAIum

LibrAIum

MCP server for searching, retrieving details, suggesting, and adding curated GitHub repositories from a personal library.

Category
Visit Server

README

LibrAIum 📚

Your personal library of best-practice GitHub repositories — curated by you, grown with AI.

LibrAIum(ライブラリアム)は、厳選した GitHub リポジトリをローカル Git リポジトリで管理し、MCP サーバー経由で Claude Code から直接活用できる個人専用デスクトップアプリです。

LibrAIum is a local-first desktop app for curating the best-practice public GitHub repositories you actually trust — across AI agents, web apps, games, DevOps, and any genre you define. Its differentiator: the library doubles as an MCP server, so Claude Code can search it, read your firsthand Personal Notes, and recommend the right repos for your next project.

"Suggest the 3 best repos from my library for a RAG agent combining a vector DB and knowledge management — with setup commands."

Features (v1.0)

  • Git-native storage — one Markdown file per repo (YAML frontmatter + body) in a local git repository. Diff, merge, and back up your knowledge like code.
  • Personal Notes — every entry pairs structured metadata (stars, language, freshness) with your hands-on experience, gotchas, and pairings.
  • Desktop GUI (Tauri v2 + Svelte 5) — dashboard, instant fuzzy search with filters, entry editing, category master management, and a Git panel (status / commit / push).
  • GitHub metadata refresh — single or bulk refresh via the GitHub API; entries automatically flagged stale when a repo stops moving, with fresher alternatives suggested from your own shelves.
  • MCP server for Claude Code — four tools: search_repos, get_repo_details, suggest_for_new_project, add_repo.
  • Awesome-list export — publish your curation as a standard awesome-list Markdown document.
  • Private by design — everything stays on your machine; the GitHub token lives in the OS keychain.

Quick start

Prerequisites: Rust, Node.js ≥ 20, git. (macOS/Linux/Windows; on Linux install the Tauri v2 system deps.)

npm install                 # frontend deps
npm run tauri dev           # launch the app (compiles Rust on first run)

Package a release build:

npm run tauri build

On first launch the app uses the repository's data/ directory when present (dev mode), otherwise it bootstraps ~/LibrAIum/data as a fresh git repository with the default category master. Point it anywhere via Settings → Data directory.

The MCP server

Register LibrAIum with Claude Code (adjust paths):

cd mcp-server && npm install    # once
claude mcp add libraium -e LIBRAIUM_DATA_DIR="$PWD/../data" -- node "$PWD/index.js"
Tool Purpose
search_repos Filtered search: query, category, tags, min stars, status
get_repo_details Full entry incl. your Personal Notes, by id / name / URL
suggest_for_new_project Rank the library against a project description, with reasons + adoption steps
add_repo Register a repo (fetches GitHub metadata; duplicate-safe)

The server resolves its data directory from --data-dir, $LIBRAIUM_DATA_DIR, ./data, the repo checkout, or ~/LibrAIum/data — in that order.

Data model

data/
├── entries/<category>/<owner-repo>.md    # one repo = one file
└── master/categories.yaml                # category master (GUI-editable)
---
github_url: https://github.com/qdrant/qdrant
full_name: qdrant/qdrant
category: ai-agent
tags: [vector-db, rag, similarity-search, rust]
stars: 21400
language: Rust
last_github_push: 2026-07-05
last_checked: 2026-07-08
status: active        # active | stale | archived
source: manual        # manual | mcp | x-collection
added_date: 2026-06-20
---

# qdrant

High-performance vector database…

## Personal Notes
- My default vector DB for RAG prototypes…

Development

npm install && (cd mcp-server && npm install)   # once, after cloning
bash scripts/verify-all.sh      # the full suite: data validation → cargo test →
                                # vite build + frontend unit tests → MCP unit+smoke
                                # tests → Rust⇔Node conformance → app binary build
                                # (CI runs this too)

Or piecewise — note that npm run build must come before the first cargo test on a fresh clone (Tauri's generate_context! embeds dist/ at compile time; verify-all.sh reorders this automatically):

npm run build                   # frontend production build
npm test                        # frontend unit tests (markdown-renderer hardening)
cd src-tauri && cargo test      # Rust unit tests (data/git/search/github layers)
cd mcp-server && npm test       # store/suggest unit tests + MCP stdio smoke test
bash scripts/make-icons.sh      # regenerate app icons (macOS)

UI work is governed by DESIGN.md — the Flexoki paper-and-ink design contract (tokens live in src/styles.css). For UI preview without compiling the Rust backend, plain npm run dev in a browser auto-installs a Tauri IPC mock (src/lib/dev/mock.js) with seeded sample data; the mock is dev-only and never reaches production builds.

Architecture (see LibrAIum_完全設計書_v1.0.md for the full Japanese design document):

Tauri v2 desktop app
├── src/                  Svelte 5 GUI (dashboard, library, detail, categories, settings/git)
├── src-tauri/src/        Rust core
│   ├── store.rs            entry CRUD, frontmatter, dedup, awesome export
│   ├── categories.rs       category master
│   ├── search.rs           fuzzy search + filters, alternative suggestions
│   ├── github.rs           metadata refresh + stale detection
│   ├── gitops.rs           git status/commit/push (wraps the git CLI)
│   └── settings.rs         config + data-dir resolution + keychain-backed token
└── mcp-server/           Node stdio MCP server (mirrors the Rust data layer)

Roadmap (v1.5+)

  • X (Twitter) auto-collection pipeline with approval queue
  • Semantic search over entries via local embeddings (ONNX)
  • Project bootstrap generation from suggestions
  • Richer multi-repo composition tools over MCP

License

MIT

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