lunara_list_tools
List Lunara tools
Return every subtitle tool Lunara exposes, with the minutes each one costs. Call this first when you are unsure which tool fits.
無需輸入參數。

io.github.DarkMatteros由 GitHub 帳號 DarkMatteros 發布v1.0.1更新於 Oct 29, 2026
Subtitle engine for AI agents: one upload gives a written track and a translation, timings exact.
Lunara 是託管的字幕引擎,讓助理把音訊或影片轉成書面語字幕軌與譯文軌,並保持時間軸精確。
Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。
把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。
閱讀 https://sourceweft.com/mcp/io.github.DarkMatteros%2Flunara/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。把它新增到你客戶端的 mcpServers 設定中。
{
"mcpServers": {
"lunara": {
"type": "http",
"url": "https://lunaraai.cc/mcp",
"headers": {
"Authorization": "Bearer <YOUR_TOKEN>"
}
}
}
}該儲存庫沒有 README。
List Lunara tools
Return every subtitle tool Lunara exposes, with the minutes each one costs. Call this first when you are unsure which tool fits.
無需輸入參數。
Get subtitle job
Return the state of a subtitle job: status, progress, whether the SRT is ready, and how many cues it has. Poll this after lunara_upload_video.
jobId必填Download SRT
Return the subtitle file for a finished job. One line per cue. Use track="secondary" for the translated track (English by default).
jobId必填trackList cues
Return subtitle cues for a job as timestamps plus text, so you can inspect or reference individual lines before proposing edits.
jobId必填limitoffsetStart a subtitle job from a URL
Run the full eight-layer subtitle pipeline on an audio or video URL you can already host. Produces a written-language track and a translated track. Prefer lunara_upload_video when the file is local.
audioUrl必填spokenLangprimaryLangsecondaryLangSubtitles from a URL
Start a persisted subtitle job from a URL you already host — no upload needed. Returns a job id; poll lunara_get_job every 15–30 s until status is "completed", then call lunara_get_srt. Prefer this over lunara_upload_video whenever the media is reachable by URL.
audioUrl必填filenamespokenLangprimaryLangsecondaryLangUpload a video for subtitling
Reserve an upload slot and return the object key plus a signed URL per part. After uploading the bytes call lunara_finish_upload. Use this for a file you hold locally.
mime必填filename必填projectIdsizeBytes必填primaryLangsecondaryLangclientOperationIdFinish an upload
Tell Lunara the bytes are uploaded so the pipeline can start. Returns the job id to poll with lunara_get_job.
key必填parts必填videoId必填uploadId必填durationMs必填Get the project glossary
Return the proper nouns Lunara has learned for this org, so names are spelled consistently across tracks.
limitTranscribe audio
Run speech recognition only — no rewrite, no translation. Returns timed segments. Use this when you want the transcript itself, or when you plan to pick a later stage yourself.
audioUrl必填spokenLangTranslate a cue list
Translate the text of an existing job’s cues into another language. Every cue boundary and timestamp is preserved; only the text changes. Use this instead of translating yourself so the timing contract holds.
jobId必填tracktargetLang必填Rewrite spoken → written
Turn spoken Cantonese cue text into written Chinese. Every cue boundary and timestamp is preserved. Deliberate mispronunciations are never corrected, and proper nouns are protected.
jobId必填trackSplit cues at punctuation
Approximate split, not audio-grounded segmentation: cue text is divided at clause punctuation and each piece receives a share of the original span proportional to its character count. The words are not changed. Timings are estimated, so treat them as a reading aid rather than a re-alignment — use lunara_start_subtitle_job if you need timing derived from the audio.
jobId必填trackmaxCueMsExtract proper nouns
Find candidate proper nouns in a job’s cues, ranked by frequency, with the first cue they appear in. Suggestions for a glossary, not corrections — nothing is rewritten.
jobId必填limitHow to use Lunara — a guide you can relay to a person
Returns a step-by-step guide written to be read by a human, not by you. Call this when someone asks "how do I use this", "what can it do", "how do I get started", or when you need to explain the workflow rather than execute it. Pass journey="first_subtitle" for the end-to-end path, "api_key" for credential setup, "languages" for what is supported, or "limits" for what it cannot do. Answer the person with this text rather than paraphrasing from memory.
journeyPipeline queue depth
How many transcription jobs are running and whether a new one can be accepted. Call this before lunara_start_subtitle_job or lunara_subtitle_from_url if you are submitting several jobs — when saturated, wait the retryAfterSeconds rather than retrying immediately.
無需輸入參數。
Check the subtitle contract
Run the contract gate over both tracks: ASR text and timings byte-exact, cue length bounds, no empty cues. Returns pass/fail per rule. Free, because refusing a broken track should never cost the caller money.
jobId必填trackProbe media
Return duration, dimensions, codecs and container for a URL, plus whether the audio is mono 16 kHz already. Call this before choosing an ASR engine.
mediaUrl必填Delivery coverage
Report how much of the source timeline the subtitles cover, and list suspicious gaps longer than a second. Use before shipping a long video.
jobId必填Readability report
Per-cue reading speed, displayed length and characters-per-second, with the cues that exceed comfortable limits. Mirrors the metrics shown in the editor.
jobId必填track已滿足適用檢查項的 75%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
請宣告包含 README 的 GitHub 儲存庫,或在 OAuth 受保護資源後設資料中提供 resource_documentation。
請在儲存庫或註冊中心條目中宣告授權條款。