netcafe-translate

Translation that never breaks structure: .srt timings, i18n key trees, PDF layout.

使うべきか

品質と安全性

B
説明の品質
93%
スキーマの完全性
97%
命名の品質
86%
ポイズニングのリスク
20%
権限の一致
100%
プロトコルへの準拠
100%

検出事項(7)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool 'translate_i18n_json' description contains placeholder texttranslate_i18n_json 内
  • MEDIUMTool description contains URL to non-standard domaintranslate_text 内
  • MEDIUMTool description contains URL to non-standard domaincheck_grammar 内
  • MEDIUMTool description contains URL to non-standard domaincheck_job 内
  • LOWTool 'translate_srt' description lacks action verbtranslate_srt 内
  • INFOTool description contains placeholder or incomplete texttranslate_i18n_json 内

ツール定義とプロトコルへの準拠に関する自動分析に基づいています。

コンテキストコスト

~1,504トークン数(ツール定義)
~1.1 KB一般的なレスポンスサイズ
注意への影響は中程度(128k コンテキストの 1.18%)

これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。

インストール

ワンクリックインストール

これを `claude_desktop_config.json` ファイルに追加してください:

{
  "mcpServers": {
    "netcafe-translate": {
      "url": "https://ainetcafe.com/mcp/translate?s=registry"
    }
  }
}

リモートエンドポイント

https://ainetcafe.com/mcp/translate?s=registrystreamable-http

できること

ツール一覧

ツール(7)

🟢 読み取り専用🟡 書き込み🔴 削除⚪ 不明
🟢what_can_you_do(task)

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 ledger, a bank statement reconciled, a messy CSV turned into a deliverable). Deterministic and free: it calls no model, costs nothing, and never runs out of quota. Call this FIRST when you are not sure what this server offers.

入力スキーマ

{
  "type": "object",
  "properties": {
    "task": {
      "type": "string",
      "description": "What you are trying to do, e.g. \"reconcile a bank statement against my books\" or \"把一堆发票整理成能入账的表格\""
    }
  },
  "required": [
    "task"
  ]
}

出力スキーマ

{
  "type": "object",
  "additionalProperties": true
}
🟢translate_text(text, target, source)

Translate text between languages using a self-hosted LibreTranslate engine (fully offline, no big-tech API). For whole PDFs with layout preserved, use translate_pdf instead. Example — GET https://ainetcafe.com/t/translate_text?text=hello+world&to=zh

入力スキーマ

{
  "type": "object",
  "properties": {
    "text": {
      "type": "string",
      "description": "Text to translate (≤5000 chars)."
    },
    "target": {
      "type": "string",
      "description": "Target language code, e.g. \"zh\", \"en\", \"ja\"."
    },
    "source": {
      "type": "string",
      "description": "Source language code; default \"auto\"."
    }
  },
  "required": [
    "text",
    "target"
  ]
}

出力スキーマ

{
  "type": "object",
  "additionalProperties": true
}
🟢translate_srt(srt, url, to)

Translate an .srt subtitle file into another language while keeping every timestamp and cue number byte-identical. Cues are anchored by index and refilled in code, so the timeline cannot drift — the usual failure mode when you hand a whole .srt to a model.

入力スキーマ

{
  "type": "object",
  "properties": {
    "srt": {
      "type": "string",
      "description": "The .srt file content."
    },
    "url": {
      "type": "string",
      "description": "Or a link to the .srt file."
    },
    "to": {
      "type": "string",
      "description": "Target language, e.g. \"English\", \"日本語\"."
    }
  },
  "required": []
}

出力スキーマ

{
  "type": "object",
  "additionalProperties": true
}
🟢translate_i18n_json(json, url, to, existing_json)

Translate an i18n JSON locale file, keeping the key structure identical and placeholders ({name}, {{count}}, %s, HTML tags) intact. Pass existing_json to translate only the keys that are missing from it — the incremental sync people usually hand-roll a script for.

入力スキーマ

{
  "type": "object",
  "properties": {
    "json": {
      "type": "string",
      "description": "Source locale file content (JSON)."
    },
    "url": {
      "type": "string",
      "description": "Or a link to the source JSON."
    },
    "to": {
      "type": "string",
      "description": "Target language."
    },
    "existing_json": {
      "type": "string",
      "description": "Existing target locale; only missing keys get translated."
    }
  },
  "required": []
}

出力スキーマ

{
  "type": "object",
  "additionalProperties": true
}
🟢check_grammar(text, language)

Check text for grammar, spelling and style issues in 30+ languages (self-hosted LanguageTool). Returns each issue with a suggested replacement — apply them to produce corrected text. Example — GET https://ainetcafe.com/t/check_grammar?text=Their+going+to+the+park

入力スキーマ

{
  "type": "object",
  "properties": {
    "text": {
      "type": "string",
      "description": "The text to check (≤10000 chars)."
    },
    "language": {
      "type": "string",
      "description": "Language code like \"en-US\", \"zh-CN\"; default \"auto\"."
    }
  },
  "required": [
    "text"
  ]
}

出力スキーマ

{
  "type": "object",
  "additionalProperties": true
}
🟢check_job(job_id)

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 — GET https://ainetcafe.com/t/check_job?job_id=<id-from-a-job-tool>

入力スキーマ

{
  "type": "object",
  "properties": {
    "job_id": {
      "type": "string",
      "description": "The job_id returned when the task was started."
    }
  },
  "required": [
    "job_id"
  ]
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "job_id": {
      "type": "string"
    },
    "kind": {
      "type": "string"
    },
    "status": {
      "type": "string"
    },
    "is_terminal": {
      "type": "boolean"
    },
    "retry_after_seconds": {
      "type": "integer"
    },
    "next_action": {
      "type": [
        "object",
        "null"
      ]
    },
    "result": {},
    "structured_result": {},
    "error": {
      "type": "string"
    }
  },
  "required": [
    "job_id",
    "status"
  ]
}
🟢translate_pdf(url, lang_to, pages)

Translate a PDF from a URL while preserving the original layout — formulas, figures and two-column academic typesetting stay intact, unlike ordinary translators that flatten the document. Returns a job_id; poll check_job for the download links (translated-only and bilingual side-by-side). Typically 20-60 seconds for a few pages. Powered by PDFMathTranslate (36k stars) hosted at AI NetCafé. Example — tools/call translate_pdf {"url":"<pdf-url>","target":"zh"} → poll check_job

入力スキーマ

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "description": "Direct URL to the PDF (e.g. an arXiv PDF link)."
    },
    "lang_to": {
      "type": "string",
      "description": "Target language, e.g. \"Simplified Chinese\", \"Japanese\". Default Simplified Chinese."
    },
    "pages": {
      "type": "string",
      "enum": [
        "first",
        "first5",
        "all"
      ],
      "description": "How much to translate. first = 1 page, first5 = first 5 pages (default), all = whole document (slow and expensive)."
    }
  },
  "required": [
    "url"
  ]
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "job_id": {
      "type": "string"
    },
    "status": {
      "type": "string"
    },
    "poll_interval_seconds": {
      "type": "integer"
    }
  },
  "required": [
    "job_id",
    "status"
  ]
}

コミュニティ

このサーバーを評価する

エビデンス

最近の観測

検証済みバージョンは記録されていませんツール 7 件
検証済みバージョンは記録されていませんツール 7 件