| searchA | Search the knowledge base for relevant document chunks. ``top_k`` defaults to the ``top_k`` config field so ``settings_set``
governs the candidate count for agents that don't pass it explicitly.
``scope`` picks the pool: ``"raw"`` (source chunks), ``"wiki"`` (wiki
page bodies), or ``"both"`` (default, unfiltered). Returns chunks
sorted by relevance. No LLM call -- uses pre-computed embeddings.
|
| statusA | Show indexed documents, configuration, and chunk counts. |
| syncA | Sync documents directory with the vector store. Args:
force_rebuild: Drop every table and re-ingest from scratch (equivalent
to ``lilbee rebuild``). Also clears the failed-file skip markers.
retry_skipped: Clear the failed-file skip markers so files that were
skipped on a previous sync get another attempt, without dropping
the store.
|
| addA | Add files, directories, or URLs to the knowledge base and sync.
Copies the given paths into the documents directory, then ingests them.
URLs (http:// or https://) are fetched as markdown and saved to _web/.
Paths must be absolute and accessible from this machine. Args:
paths: Absolute file/directory paths or URLs to add.
force: Overwrite files that already exist in the knowledge base.
enable_ocr: Force vision OCR on (True), off (False), or auto-detect
from chat model capabilities (None/omit).
ocr_timeout: Per-page timeout in seconds for vision OCR. Overrides
the configured default for this invocation only.
|
| crawlA | Crawl a web page and add it to the knowledge base (non-blocking).
Launches the crawl as a background task and returns immediately with a
task_id. Use crawl_status(task_id) to poll progress. Args:
url: The URL to crawl (must start with http:// or https://).
depth: None (default) crawls the whole site; 0 fetches only this URL;
positive int caps link-follow depth.
max_pages: None (default) means no page limit. Positive int caps total
pages fetched.
|
| crawl_statusA | Check the status of a running crawl task.
Returns the current state including status, pages crawled, and any error.
Use this to poll after crawl returns a task_id. Args:
task_id: The task ID returned by crawl.
|
| initA | Initialize a local .lilbee/ knowledge base in a directory.
Creates .lilbee/ with documents/, data/, and .gitignore.
If path is empty, uses the current working directory.
Also switches the MCP session to use this knowledge base for
subsequent tool calls. |
| removeA | Remove documents from the knowledge base by source name.
Args:
names: Source filenames to remove (as shown by status).
delete_files: Also delete the physical files from the documents directory.
|
| list_documentsA | List all indexed documents with their chunk counts. |
| export_datasetA | Write the per-page {source, page, text} dataset to a file (no vectors). ``fmt`` is "parquet" or "jsonl"; empty infers from the output suffix.
``source`` limits the export to one source filename. No embedding.
|
| import_datasetA | Import a per-page text dataset file, re-embedding it under the current model. Replaces existing copies of each source; imported sources are detached, so
sync won't delete them. Streams progress notifications. ``fmt`` empty
infers from the dataset suffix (parquet or jsonl).
|
| resetA | Delete all documents and data (full factory reset).
WARNING: This permanently removes all indexed documents and vector data.
Pass confirm=true to proceed.
|
| settings_listA | List every writable lilbee setting with its current value and metadata. Returns one row per setting with ``key``, ``value``, ``default``,
``type`` (``int``, ``float``, ``bool``, ``str``, ``list``, or a
``foo|null`` union), ``nullable``, ``group`` (Retrieval, Generation,
Models, Ingest, Wiki, Crawling, API-Keys, System, Display),
``help`` text, ``choices`` (for enum-typed fields), and
``reindex_required`` (whether changing the value invalidates the
persisted vector store).
Args:
group: Filter by group name (case-insensitive). Empty = all.
|
| settings_getA | Get the current value and metadata for a single lilbee setting. The ``nullable`` field on the returned setting means the writer
accepts ``None`` to delete the persisted entry; ``vision_model`` /
``reranker_model`` report ``nullable=false`` even though an empty
string clears them.
Args:
key: Setting name (e.g. ``"top_k"``, ``"chunk_size"``,
``"chat_model"``). Use ``settings_list`` to discover keys.
|
| settings_setA | Update one or more writable lilbee settings atomically. Validates every key and value upfront; if any value fails validation
the entire batch rolls back and nothing is persisted. Successful
writes flush to ``config.toml`` and invalidate the in-process model
architecture, provider load, and API-key caches so the next call
observes the new configuration.
Args:
updates: Map of setting key to new value. Pass ``null`` to clear
a nullable field (falls back to the pydantic default on next
process start). Numeric strings are coerced to int / float by
pydantic; booleans accept ``true`` / ``false`` / ``1`` / ``0``.
Returns ``updated`` (the keys persisted) and ``reindex_required``
(true when one of ``chunk_size`` / ``chunk_overlap`` changed; the
caller should run ``sync(force_rebuild=true)`` to refresh the index).
|
| settings_resetA | Reset writable settings to their built-in defaults. Nullable fields are cleared (the next process start falls back to
the pydantic default); non-nullable fields are written to disk with
their default value. Invalidates the same caches as ``settings_set``.
Args:
keys: Setting keys to reset. Use ``settings_list`` to discover
available keys.
|
| model_listA | List installed models across native and SDK-backend sources. Args:
source: Filter by source: "native", "remote", or "" for all.
task: Filter by task: "chat", "embedding", "vision", "rerank", or "" for all.
|
| catalog_browseA | Browse the lilbee model catalog (featured entries + Hugging Face). Lets an agent discover candidates for any model role before pulling.
The catalog is the same one the TUI browses: a curated featured list
augmented with live Hugging Face results when ``featured=false``.
Args:
task: ``"chat"``, ``"embedding"``, ``"vision"``, ``"rerank"``, or
``""`` for all.
search: Substring filter on name / repo / description.
size: ``"small"`` (<3 GB), ``"medium"`` (3-10 GB), or ``"large"``
(>10 GB). Empty = no size filter.
installed: ``true`` shows only installed repos, ``false`` only
uninstalled, ``null`` shows both.
featured: ``true`` restricts to the curated featured list,
``false`` skips it (HF results only), ``null`` includes both.
sort: ``"featured"``, ``"downloads"``, ``"name"``,
``"size_asc"``, or ``"size_desc"``.
limit: Page size (default 20).
offset: Page offset for pagination.
Returns ``{total, limit, offset, has_more, models}`` where each model
is ``{ref, display_name, task, size_gb, min_ram_gb, downloads,
featured, description}``.
|
| model_showC | Show catalog and installed metadata for a model ref. |
| model_pullA | Download a model, streaming progress via MCP notifications. Args:
model: Model ref to pull (e.g. "Qwen/Qwen3-0.6B-GGUF" or
"Qwen/Qwen3-0.6B-GGUF/Qwen3-0.6B-Q8_0.gguf").
source: "native" (HuggingFace GGUF) or "remote" (SDK-managed).
allow_unsupported: Set true to pull even when the model's architecture
isn't supported by this lilbee build. Default refuses with a
structured error and the list of supported architectures.
|
| model_rmA | Remove an installed model. Args:
model: Model ref to remove. lilbee removes only native models it
downloaded; Ollama and LM Studio models are read-only.
source: Restrict to a known source; empty = resolve from the ref.
|