Litebase

io.github.CloudCorpRecords由 GitHub 帳號 CloudCorpRecords 發布v0.1.0更新於 Oct 29, 2026

SQLite database access for agents: query, write, create and describe tables, record insights.

已驗證STDIO僅桌面資料庫資料與分析

概覽

AI 產生的概覽

Litebase 讓助理操作本機 SQLite 資料庫檔案:查詢、寫入、建立資料表、檢視結構,並記錄分析筆記。

可以做什麼
  • 執行單一 SELECT 或 WITH 查詢,回傳欄位名稱與物件形式的資料列
  • 執行 INSERT、UPDATE、DELETE,並回報受影響列數與最後插入的 rowid
  • 建立資料表,列出並描述資料庫中的使用者資料表
  • 將編號筆記附加到記憶體備忘錄,並回傳目前全部內容
  • 每個工具只接受對應類型的語句,且一次僅一條
適用情境
適合需要在本機使用小型、自足的 SQL 資料庫進行分析或原型驗證的情境,不必佈署伺服器或編譯原生擴充。當檔案路徑或記憶體資料庫就足夠時最合適。
執行需求
以本機 stdio 程序執行,可透過 npx 或 Docker 映像啟動。需要 Node 22.5 或更新版本,因為依賴內建的 node:sqlite 模組,建議使用 Node 24。資料庫路徑依序取 mcp 後的參數、LITEBASE_DB 環境變數、目前目錄下的 ./litebase.db。不需帳號、金鑰或網路存取。
安裝前請注意
寫入類工具會直接修改目標資料庫檔案,create_table 會新增資料表;雖無刪表工具,但 INSERT、UPDATE、DELETE 會立即執行。請指向可丟棄或已備份的資料庫檔案,不要用於重要資料。備忘錄僅存於記憶體,伺服器重新啟動後即遺失。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Litebase,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

litebase

litebase gives you a SQLite database you can drive from a terminal or hand to an agent as an MCP server. It covers the everyday loop of working with a small database: create tables, put rows in, change them, read them back, check what a table looks like, and keep a running memo of what you learned from the data along the way.

There is nothing to provision and no native addon to compile: the storage engine is the SQLite library built into Node itself (node:sqlite), so a "database" is just a file path — or :memory: when you want a throwaway one.

Install

bash
npx @reneturcios/litebase tables ./data.db

Or run the container image:

bash
docker run -i ghcr.io/cloudcorprecords/litebase

The container defaults to the MCP server (see below). Pass CLI arguments to use it as a CLI instead.

Node version requirement

litebase's engine is Node's built-in node:sqlite module, which only exists in Node 22.5 and newer. The package's engines field says >=20 because that is the fleet standard, but that is an honest gap: on Node 20 the CLI and server start, and then fail the moment a database is opened, with an error that names the Node >= 22.5 requirement. Use Node 22.5+ (Node 24 recommended) to actually read or write data.

CLI

bash
# List the user tables in a database filelitebase tables ./data.db
# Run a read query; rows print as JSON objectslitebase query ./data.db "SELECT id, name FROM users ORDER BY id"
litebase --version

Which database the MCP server opens is resolved in this order: the path argument after mcp, then the LITEBASE_DB environment variable, then ./litebase.db in the current directory.

Exit codes: 0 on success, 1 when a query or the database itself errors (the message says why), 2 for usage errors.

MCP server

One bin serves both faces. The mcp subcommand starts a stdio MCP server:

bash
npx -y @reneturcios/litebase mcp ./data.db

MCP client configuration:

json
{  "mcpServers": {    "litebase": {      "command": "npx",      "args": ["-y", "@reneturcios/litebase", "mcp", "./data.db"]    }  }}

The database is opened lazily on the first tool call, so starting the server never creates a file by itself.

Tools

ToolInputWhat it does
read_queryquery (string, required)Runs one SELECT (or WITH ... SELECT) statement and returns the column names plus the rows as objects.
write_queryquery (string, required)Runs one INSERT, UPDATE, or DELETE statement and reports how many rows were affected and the last insert rowid.
create_tablequery (string, required)Runs one CREATE TABLE statement.
list_tables—Lists the database's user tables (SQLite's internal sqlite_% tables are hidden).
describe_tabletable_name (string, required)Returns a table's columns with their declared types, nullability, defaults, and primary-key flags.
append_insightinsight (string, required)Adds a note to the in-memory insights memo and returns the full memo text so far.

Statement guards

Each tool only accepts the kind of statement it is for, and only one statement at a time:

  • read_query rejects anything that does not start with SELECT or WITH.
  • write_query rejects SELECT, CREATE, DROP, and everything else that is not INSERT, UPDATE, or DELETE.
  • create_table rejects anything that is not CREATE TABLE.
  • A second statement smuggled in after a ; is rejected before anything executes.
  • describe_table only accepts a plain table name (letters, digits, underscores) — the name goes into a PRAGMA, so it is validated rather than parameterised.

Guard rejections and SQL errors come back as tool errors with a message naming the problem; nothing is executed on a rejected call.

Insights memo

append_insight keeps a numbered memo on the server instance: every call appends one insight and returns the whole memo, so an agent can build up findings during an analysis session and read them back as a single text. The memo lives in memory only — it is not written to the database file and does not survive a server restart.

Development

bash
npm installnpm run build   # tsc -> dist/npm test        # node test runner over test/*.test.ts, no networknpm run dev     # run the CLI from source via tsx

Tests run against in-memory and temporary-file databases; no network access is needed.

License

MIT — see LICENSE.

來源:README.md,提交 64d2fce

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.1.0最新Oct 29, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分