Ai Netcafe
by ainetcafe.com in AI models & inference
Tables and ledgers checked by arithmetic, not by a model. 24 tools. MCP 2026-07-28 ready.
https://ainetcafe.com/mcp?s=registry
Last 30 days
- Uptime
- 100%
- Response time
- 776 ms typical, 776 ms slowest 5%
- Last check
- 8 h ago
- Next check
- any minute now
How to call it
Add it to any MCP client that supports remote servers.
{
"mcpServers": {
"ai-netcafe": {
"type": "http",
"url": "https://ainetcafe.com/mcp?s=registry"
}
}
}34 tools
- what_can_you_do
Describe a task in plain language (any language) and get back exactly which tools on this server do it, with ready-to-run example calls — instead of reading the whole catalogue and guessing. Also returns multi-step recipes when a task needs several tools chained (invoices to a le
- list_apps
List the open-source AI applications hosted and ready to run at AI NetCafé (ainetcafe.com). Each one normally requires local setup (Docker/Python + your own model API key); here they run pre-configured. Use this to find a tool for a task like translating a PDF with formulas intac
- get_app
Full details of one hosted application: what it does, how to use it, measured benchmark scores, source repository, and the URL a human can open to run it. Example — GET https://ainetcafe.com/t/get_app?slug=<slug-from-list_apps>
- ask_model
Send a prompt to one specific large language model and get the answer plus measured platform cost metadata. The beta platform covers the user charge ($0.00); capacity limits still apply. Example — GET https://ainetcafe.com/t/ask_model?prompt=Say+hi&model=deepseek-v4-flash
- compare_models
Run one prompt across multiple LLMs in parallel and return every answer side by side with measured platform cost metadata and latency. The beta platform covers the user charge ($0.00). This answers "which model should I actually use for this kind of task?" with data instead of gu
- list_models
List every model currently available in the free beta with reference input/output rates and health metadata. Those rates are platform cost metadata only; every user charge is $0.00 during the beta. Example — GET https://ainetcafe.com/t/list_models
- remember
Persist a durable memory: an architecture decision, a stable user preference, a verified bug fix, or an important discovery. The free beta provides a bounded per-caller/workspace memory pool; no personal API key is required. Do not store secrets or raw logs. Example — tools/call
- recall
Retrieve previously stored memories, optionally filtered by search query and/or project. Call at the start of work on a known project to restore context: why decisions were made, known fixes, preferences. Example — GET https://ainetcafe.com/t/recall?query=<what+to+remember> (nee
- web_search
Search the live web through a self-hosted SearXNG meta-search (aggregates dozens of engines, no tracking). Returns titles, URLs and snippets. Use when you need current information or sources. Example — GET https://ainetcafe.com/t/web_search?query=latest+MCP+spec
- fetch_page
Fetch a public URL and return clean LLM-ready Markdown from the server-rendered response. This tool does not execute browser JavaScript; for SPA or empty-text pages, use web_search, a browser, or the site's API. Use it after web_search to read a reachable public source, or to ing
- model_costs
Measured platform cost metadata for one call on each model; your charge is $0.00 during the free beta. Vendors publish per-million-token list prices, but a call's cost depends on how many tokens the model chooses to emit — models differ by an order of magnitude on the same prompt
- ai_visibility
Audit a URL for AI visibility: which AI crawlers robots.txt actually allows (parsed per user-agent group, not keyword-matched), whether llms.txt / sitemap / JSON-LD / canonical exist, and how much real text an agent gets without running JavaScript. Returns a score plus the specif
- pdf_to_markdown
Convert a PDF (or a scanned page image) into clean Markdown that keeps headings, lists and tables, and puts multi-column pages in the right reading order. Text-layer PDFs are read exactly and cost far less; images go through a vision model.
- extract_tables
Extract tables from a PDF into structured rows (JSON + CSV). Pass fields to force a fixed set of columns — that aligns a pile of documents that each name their headers differently into one consistent table. Rows the model was unsure about are flagged rather than guessed. Text-lay
- extract_statement
Turn a bank statement or transaction PDF into a clean transaction table (JSON + CSV), then cross-check it: opening + credits - debits must equal the stated closing balance. If it does not balance you get the exact difference and which row the running balance first breaks at — so
- json_yaml
Converts JSON to YAML or YAML to JSON. It works out which one you gave it, so you do not have to say. A parse failure comes back with the parser message instead of silently producing something that looks fine and is not. Use when a config, a CI file, or a Kubernetes manifest need
- validate_json
Checks that text parses as JSON, and optionally that required keys are present with the right top-level types. Returns the specific violations, not just true/false. Checks required + types only — not full JSON Schema, and it says so rather than pretending. Use before feeding gene
- diff_text
Returns which lines were added and which were removed, with line numbers — computed with a longest-common-subsequence, not guessed by a model. Use to compare two versions of a config, a document, or any command output, instead of asking an LLM to eyeball two blobs and hoping it n
- jwt_decode
Decodes the header and payload of a JWT and reports issued-at / expiry as readable timestamps plus seconds remaining. The signature is NOT verified and the response says so — decoding is fine for debugging a token you already hold, but never treat these values as proof of anythin
- regex_test
Runs a regular expression against sample text and returns every match with its position and capture groups (named groups included). Use before wiring a pattern into code, instead of guessing whether the escaping survived the trip through JSON and the shell.
- diff_tables
Matches rows across two CSVs on a key column and reports three things: keys only in A, keys only in B, and keys in both whose other columns disagree — naming the exact column and both values. Unlike reconcile_ledger this needs no amount column, so it also fits name lists, invento
- clean_table
Tidies a spreadsheet export: removes duplicate rows, trims whitespace (half-width and full-width — Chinese exports are full of ), unifies the half-dozen ways a cell can say "empty" (NA / null / - / 无), drops empty rows and columns, and can split one column into several. Returns
- merge_tables
Combines up to 20 CSVs into a single table. Headers do not have to match: columns are unioned and a file missing a column contributes blanks for it, so rows never shift silently — the failure mode that makes hand-merged spreadsheets untrustworthy. Reports each source file row cou
- reconcile_ledger
Reconciles two sets of records — your books against a bank, platform, or supplier statement. Matches rows on a key column, compares an amount column, and returns three lists: only in A, only in B, and same key but different amount. Amounts are compared in integer cents, so 0.1 +
- extract_invoices
Give it up to 20 invoice URLs (PDF or page images) and get back one table ready to post: number, date, seller, buyer, net / tax / gross, currency. Every row is checked in code — net + tax must equal gross — and the batch total is re-added independently, so a row the model misread
- create_task
Create a task that runs on a schedule in our cloud — you do not keep anything running. It only notifies you when the result actually changes. Kinds: watch_page (Watch a web page and report when its content changes); daily_answer (Re-run a web-researched question on a schedule and
- list_tasks
Show scheduled tasks, next run times, run counts, and measured platform cost metadata. User charge is $0.00 during the beta.
- get_task_runs
Recent runs of one scheduled task: what it returned, whether the result changed, and measured platform cost metadata. User charge is $0.00.
- delete_task
Stop and remove a scheduled task and its run history.
- transpile_sql
Convert a SQL statement from one dialect to another — mysql, postgres, sqlite, tsql, oracle, snowflake, bigquery, redshift, spark, hive, presto, trino, duckdb, clickhouse, databricks, doris, starrocks and more. Deterministic parser (sqlglot), not an LLM: the same input always pro
- china_reachability
Fetch a URL from a real mainland-China network egress and report HTTP status, latency and China DNS resolution. Answers "is my site/API usable from China?" with a measurement instead of a guess — you cannot get this from a VPS abroad.
- render_diagram
Turn diagram-as-code into an image: Mermaid, PlantUML, Graphviz/DOT, C4, Excalidraw and 20+ more (self-hosted Kroki). Returns a hosted SVG/PNG URL you can embed directly in Markdown or HTML. Example — GET "https://ainetcafe.com/t/render_diagram?source=graph TD;A--%3EB&format=png"
- check_job
Get the status or result of a job started by deep_research, translate_pdf, or make_slides. Poll every 15-30 seconds until status is "done" or "error". While work is pending, follow retry_after_seconds and next_action; when complete, prefer structured_result when present. Example
- build_app
Turn one plain-language description into a LIVE single-page web tool: code is generated, deployed to managed hosting with HTTPS, and listed — you get the public URL in ~1-2 minutes. Best for tool-style apps: calculators, converters, checklists, timers, generators, small games. As
Security scan
- No findings. We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.
Recent checks
| When | Result | HTTP | Time |
|---|---|---|---|
| 8 h ago | Passed | 200 | 1.1 s |
| 16 h ago | Passed | 200 | 776 ms |