Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

Tool4lm

БесплатноНе проверен

All-in-one MCP server for local LLMs (web/doc/scholar/calc) no API keys required.

GitHubEmbed

Описание

All-in-one MCP server for local LLMs (web/doc/scholar/calc) no API keys required.

README

Node.js TypeScript License: MIT

All-in-one tools to supercharge your local or remote LLMs.
Search smarter. Calculate faster. Summarize better.

TOOL4LM MCP server

TOOL4LM là một MCP (Model Context Protocol) server viết bằng Node.js/TypeScript giúp bổ sung công cụ cho các mô hình ngôn ngữ chạy cục bộ (LM Studio/Ollama/…): web search, đọc & tóm tắt trang, tìm & đọc tài liệu nội bộ, tra cứu học thuật, và máy tính. Không cần API key mặc định.


✨ Tính năng

  • 🔎 Web Search: tìm nhiều nguồn (SearXNG + DuckDuckGo HTML), khử trùng lặp, trả về tiêu đề + URL + snippet.
  • 🌐 Web Fetch/Read: tải trang có giới hạn kích thước/thời gian (chống SSRF) và trích văn bản “đọc được” để tóm tắt.
  • 📂 Doc Search/Read: tìm & đọc tài liệu trong thư mục sandbox (txt/md/html/pdf). PDF dùng pdf-parse (lazy-load).
  • 📚 Scholar Search/Get: tra cứu học thuật (arXiv + Crossref + Wikipedia) và lấy metadata theo DOI/arXivId.
  • 🧮 Calculator: đánh giá biểu thức với mathjs, hỗ trợ precision (làm tròn).

🧰 Tool & tham số (tên chính ⇄ alias gạch dưới)

Tool Khi nào dùng Tham số (shape)
calc.eval ⇄ calc_eval Tính toán cục bộ { expr: string, precision?: number }
web.search ⇄ web_search Tìm web đa engine { q: string, max?: number, lang?: string, site?: string, engines?: string[], k?: number, limit?: number }
web.fetch ⇄ web_fetch Tải 1 URL (HTML/binary) { url: string, timeout?: number, max_bytes?: number, headers?: Record<string,string> }
web.read ⇄ web_read Trích văn bản “đọc được” { url: string, html?: string }
doc.find ⇄ doc_find Tìm trong thư mục sandbox { q: string, top?: number, limit?: number }
doc.read ⇄ doc_read Đọc 1 file trong sandbox { path: string }
index.build ⇄ index_build Build chỉ mục tài liệu { root?: string }
sch.search ⇄ sch_search Tìm bài/paper/DOI { q: string, top?: number, limit?: number }
sch.get ⇄ sch_get Lấy metadata paper { doi?: string, arxivId?: string, url?: string }
wiki.search ⇄ wiki_search Tìm tiêu đề Wikipedia { q: string, lang?: string }
wiki.get ⇄ wiki_get Lấy summary Wikipedia { title: string, lang?: string }

Đã bật openWorldHint nên nếu model lỡ thêm field lạ host vẫn chấp nhận; nhưng khuyến nghị dùng đúng tham số như bảng để ổn định.


🔧 Cài đặt & chạy

npm install
npm run build
npm start

Khi chạy thành công sẽ in:
[TOOL4LM] started. Sandbox: <đường_dẫn_sandbox>


⚙️ Cấu hình MCP (LM Studio)

Thêm vào mcp.json của LM Studio:

{
  "mcpServers": {
    "TOOL4LM": {
      "command": "node",
      "args": ["--enable-source-maps", "C:/path/to/tool4lm/dist/server.js"],
      "type": "mcp",
      "env": {
        "SANDBOX_DIR": "C:/path/to/your_docs",
        "SEARXNG_ENDPOINTS": "https://searx.be/search,https://searx.tiekoetter.com/search",
        "ENGINE_ORDER": "searxng,duckduckgo",
        "LANG_DEFAULT": "vi",
        "REGION_DEFAULT": "vn",
        "MAX_FETCH_BYTES": "1048576",
        "FETCH_TIMEOUT_MS": "8000"
      }
    }
  }
}

Trên Windows, nên dùng / trong JSON để tránh escape \.


📝 Ví dụ luồng sử dụng

Tra cứu web có trích dẫn → web.search → web.fetch → web.read → tóm tắt + đính kèm URL.
Tài liệu nội bộ → doc.find → doc.read → tóm tắt + trích đoạn (ghi kèm path).
Học thuật → sch.search → sch.get theo DOI/arXivId.
Tính toán → calc.eval với ^/pow(a,b) (hoặc đã normalize **).


🌍 Biến môi trường

  • SANDBOX_DIR — thư mục tài liệu (mặc định: ./sandbox).
  • SEARXNG_ENDPOINTS — danh sách endpoint /search của SearXNG, cách nhau dấu phẩy.
  • ENGINE_ORDER — ví dụ searxng,duckduckgo.
  • LANG_DEFAULT, REGION_DEFAULT — gợi ý ngôn ngữ/khu vực khi tìm web.
  • MAX_FETCH_BYTES — giới hạn dung lượng tải trang.
  • FETCH_TIMEOUT_MS — timeout tải trang (ms).

🤝 Đóng góp

Issues/PRs rất hoan nghênh! Nếu thấy bug/đề xuất, mở issue giúp mình nhé.


📜 Giấy phép

MIT


☕ Ủng hộ

Nếu bạn thấy dự án hữu ích, có thể ủng hộ mình qua PayPal:

Donate with PayPal

hoặc bấm nút bên dưới:

Donate via PayPal

from github.com/khanhs-234/tool4lm

Установка Tool4lm

У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.

▸ github.com/khanhs-234/tool4lm

FAQ

Tool4lm MCP бесплатный?

Да, Tool4lm MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для Tool4lm?

Нет, Tool4lm работает без API-ключей и переменных окружения.

Tool4lm — hosted или self-hosted?

Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.

Как установить Tool4lm в Claude Desktop, Claude Code или Cursor?

Открой Tool4lm на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

Compare Tool4lm with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории development