Repository navigation
AnythingMCP 0.52: your AI can now search your files and write code
The biggest release since the project started. Two new capabilities change what an AI client can do through AnythingMCP:
- File Search gives Claude, ChatGPT, Gemini, Microsoft Copilot, Cursor and Muse a searchable index of your company folders on SFTP, FTP/FTPS, WebDAV (Nextcloud, ownCloud, NAS), S3 or a mounted network share.
- Code Mode lets an AI client run one short program that calls several tools, so a five-step lookup becomes one call. It runs in an isolated sandbox that has no secrets and no network access.
Plus German and Italian across the whole app, an IMAP/SMTP e-mail connector, inbound webhooks, per-user sign-in for OAuth connectors, and 130 new catalog connectors (561 → 691).
📂 File Search: ask your AI about the documents on your file server
Point AnythingMCP at a folder. It reads every PDF page, every Excel row with its column names, Word, PowerPoint, Outlook .msg and .eml files with their attachments, and keeps that index in sync. Your AI client then gets nine tools for each folder:
| Tool | What it does |
|---|---|
search |
Full-text search, best page per file, other matching pages, snippet, date filters, newest first on request |
find |
Files by name (tolerates typos) or by glob pattern |
grep |
Exact codes and numbers with context; spreadsheet rows come back with their column names |
read |
The text of a file, by pages ("1-3,7") |
list, status, guide |
Folder contents, sync state, how to search this folder |
get_file |
The file itself: attached up to 4 MB, otherwise as a temporary link |
share_file |
A temporary download link (off by default) |
So a question like "what does article NT-601 cost in the current price list?" takes seconds, with the file name, page and date in the answer.
A setup that guides you. Connectors → New → File Search opens a five-step wizard:
- Source: pick the protocol and enter the server.
- Test: AnythingMCP connects before anything is saved and shows a checklist. SFTP host keys and self-signed certificates are pinned by fingerprint.
- Scan: a dry run lists the folder: files per subfolder, file types, years. Archive folders start unticked, and a budget bar compares your selection with the plan.
- Describe: a draft of the connector's description that every AI client reads. AI writes it if you enable that; otherwise it comes from rules.
- Activate: the first sync starts right away.
Built so it never gets in the way:
- Syncs run in a separate
files-workerprocess, never in the server that answers your AI clients. - Big first syncs go in slices, so other workspaces keep their turn.
- Only new and changed files are downloaded (size and modification time, ETag, SHA-256).
- When a folder outgrows the plan, the sync pauses before downloading anything. The index stays searchable, and the Files panel shows what to do.
Secure by design:
- Every query is filtered by workspace, and the database enforces it again with Row-Level Security.
- Credentials are decrypted only in the worker.
- The text extractor runs on an internal network with no route out, read-only and without capabilities.
- On Cloud, the SSRF policy checks every address, redirect and passive FTP data connection.
- Enterprise adds folder permissions per role and a workspace policy: public links, AI drafting, plain FTP.
File Share:
- Temporary download links for files from your folders, or for files an AI client writes (a CSV export, a report), through the File Share connector.
- Internal links work only for members of the workspace; public links work for anyone who has the link.
- Each link has an expiry; only a hash of its token is stored.
- Downloads go through 60-second signed URLs and are always served as attachments.
- Settings → File Share lists every link, with search, filters and revoke.
In the marketplace: SFTP, FTP/FTPS, WebDAV, S3 bucket, Nextcloud, ownCloud, Synology NAS, QNAP NAS, Fritz!Box storage, Hetzner Storage Box and Network folder (self-hosted). Each opens the wizard with the right settings already filled in.
Plans:
| Cloud Trial / Starter | Team | Enterprise | |
|---|---|---|---|
| Connectors | 1 | 3 | by contract |
| Files | 500 | 2,000 | by contract |
| Sync | daily | daily | down to every 15 minutes |
| File Share | Starter: links up to 24 h | links up to 7 days | links up to 90 days |
Self-hosted needs a paid licence or the 30-day trial. The sync engine and the extractor are under the AnythingMCP Commercial License (ee/).
Self-hosted setup: add FILES_WORKER_URL, FILES_WORKER_TOKEN and FILE_EXTRACTOR_TOKEN, then start the files Compose profile. Details are in docs/connectors/file-search.md. (#1379–#1389, #1395, #1397)
🧩 Code Mode: one program instead of ten tool calls
An AI client can now write a short JavaScript program that calls several MCP tools and combines the results. It replaces a long chain of separate tool calls.
- Isolated runner. A separate
code-runnercontainer starts one Deno subprocess per run. The subprocess has no network, no files and no environment variables, and never sees a secret. The only way out isamcp.search,amcp.describeandamcp.run, and each of those calls goes through the caller's roles and permissions, like a direct MCP call. There are wall-clock and output limits, and a containment test ships with the runner. - Saved code tools. An admin can save a program as a tool (
endpointMapping.method: "code") with its inputs, the connectors it may use, and invoker or definer rights. It is then available like any other tool: audited, governed by roles, exportable. - Inline
code_execute. A per-server switch (off/tools/inline) and a per-role capability decide who may run ad-hoc programs. - Agents can propose code tools.
code_propose_toolfiles a proposal, which an admin reviews and approves in the UI. Nothing runs until it is approved. - Code tools are never served on the shared
/mcpendpoint.
Run it with the code-runner Compose profile and CODE_RUNNER_URL. See docs/code-mode.md. (#1366, #1369, #1370, #1377)
🌍 The app in German and Italian
The app is translated into German (formal Sie) and Italian: dashboard, connectors, marketplace, MCP servers, settings, audit log, analytics, knowledge graph, skills and memory. Untranslated text falls back to English, never to a raw key. (#1272, #1274, #1283, #1303, #1318, #1325, #1326, #1332, #1333, #1340, #1360)
More new features
- E-mail connector (IMAP/SMTP). Read, search, file and send mail with any mailbox: IONOS, Strato, GMX, web.de, T-Online, Gmail with an app password, or your own server. (#1348)
- Inbound webhooks. Connectors can receive webhook events; Stripe is the first. A built-in tool lets the AI read recent events. (#1372)
- Per-user sign-in for OAuth2 connectors (Enterprise). Each user connects their own account, so the AI acts with that user's rights. (#1302)
- Per-tool timeout and response size for REST tools, for slow or huge upstream APIs such as image generation. (#1378)
- Setup links with prefilled fields (
prefill.<NAME>), so a partner integration can send users to a half-filled setup. (#1334) - Payment connectors serve their read tools on the shared endpoint. (#1345)
- AliExpress Affiliate and Dropshipping with IOP request signing. (#1346)
130 new connectors
561 → 691 catalog adapters, including n8n, Hostinger, GoDaddy, Strapi 5, Gitea, Home Assistant, SonarQube, Immich, deed.page, DHL Parcel DE shipping, Billbee write tools and the File Search entries above, plus five blocks of AI, scraping, research data, CMS, HR, field service, POS, hotel, office, BI, developer tools, operations and secrets connectors. (#1304, #1342, #1343, #1350–#1353, #1356, #1275, #1285, #1307, #1317, #1327, #1329)
Fixes and hardening
- MIME display names are parsed without a polynomial regex. (#1357)
- E-mail addresses are masked in every backend log. (#1359, #1375)
- Each outbound connect attempt gets one second instead of 250 ms. (#1376)
- OpenAPI imports parse only OpenAPI documents and resolve only internal refs. (#1291)
- The tool response size is capped, and the rendered result is capped too. (#1279, #1298)
- The tool response cache is keyed by tool id and nested params. (#1308)
- Same-named tools of every connector are listed on a server. (#1309)
- PostgreSQL queries are retried without
statement_timeoutbehind PgBouncer. (#1323) - Etsy, Telegram, Odoo, Printify and weclapp tool fixes. (#1311, #1324)
Upgrading
- Migrations:
code_mode(roles, MCP servers, code runs), webhook ingestion andfile_search(sevenfile_*tables with Row-Level Security and the roleamcp_files). They run automatically on start. The database user must be allowed to create a role: the default Compose setup is. - New optional services, each behind its own Compose profile:
code-runner(profilecode-runner), andfiles-workerplusfile-extractor(profilefiles). Nothing new starts unless you enable a profile. - Node.js ≥ 22.15 when running from source. The Docker image is unaffected.
Full changelog: v0.51.7...v0.52.0