Tool4lm
FreeNot checkedAll-in-one MCP server for local LLMs (web/doc/scholar/calc) no API keys required.
About
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 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
openWorldHintnê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/searchcủ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
☕ Ủng hộ
Nếu bạn thấy dự án hữu ích, có thể ủng hộ mình qua PayPal:
hoặc bấm nút bên dưới:
Installing Tool4lm
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/khanhs-234/tool4lmFAQ
Is Tool4lm MCP free?
Yes, Tool4lm MCP is free — one-click install via Unyly at no cost.
Does Tool4lm need an API key?
No, Tool4lm runs without API keys or environment variables.
Is Tool4lm hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Tool4lm in Claude Desktop, Claude Code or Cursor?
Open Tool4lm on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Unyly Deploy
Deploy sites and MCP servers to Unyly straight from your AI agent
by UnylyAmap Maps Mcp Server
MCP server for using the AMap Maps API
by duxiaohuiPayMCP
Lightweight payments layer for MCP servers: turn tools into paid endpoints with a two-line decorator. [PyPI](https://pypi.org/project/paymcp/) · [npm](https://w
by blustAIServer For Power BI
Enables exploring Microsoft Fabric / Power BI workspaces and semantic models, and executing ad-hoc DAX queries.
by Mitsubishi-FusoTemplate MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectSupabase
Database, auth and storage
by SupabaseEverything
Reference / test server with prompts, resources, and tools.
Compare Tool4lm with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
