timeverse-omni-converter-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@timeverse-omni-converter-mcpconvert this PDF to a Word document"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Format Converter MCP
Universal format conversion MCP Server
A Model Context Protocol (MCP) server covering full-format conversion across audio, video, images, Office, data, ebooks, PDF, subtitles, and more. It can be called by any MCP client such as TimeVerse Studio, Claude Desktop, Cursor, VS Code, etc.
โจ Features
Feature | Description |
๐ฏ Wide format coverage | 9 format domains, 71 deduplicated formats, plus special capabilities such as subtitles and PDF operations |
๐งฉ 14 tools | 10 core conversion tools + 4 auxiliary tools, precisely categorized by format domain, easy for LLMs to select |
๐ง Smart routing | Automatically selects the optimal conversion path (direct / multi-step chain), auto-degrades when dependencies are unavailable |
๐ง 6 engines | Unified wrapper for FFmpeg / ImageMagick / LibreOffice / Pandoc / Python / PDF |
โก Zero configuration | Auto-detects system dependencies at startup, prompts or degrades when missing |
๐ก๏ธ Production-ready | Tiered error handling, resource limit protection, temp file TTL cleanup |
Related MCP server: Document Convert MCP
๐ฆ Supported Formats
Format Domain | Tool | Engine | Format Count | Examples |
Audio |
| FFmpeg | 12 | MP3, WAV, FLAC, AAC, OGG, M4A, WMA, AIFF, OPUS, AC3, AMR, MKA |
Video |
| FFmpeg | 14 | MP4, AVI, MKV, MOV, WebM, FLV, WMV, M4V, MPEG, 3GP, TS, GIF, VOB, RMVB |
Image |
| ImageMagick / Pillow | 16 | JPEG, PNG, GIF, BMP, TIFF, WebP, SVG, HEIC, ICO, PSD, RAW, AVIF, EXR |
Document |
| LibreOffice / Pandoc / pdf2docx | 10 | DOCX, DOC, PDF, RTF, ODT, TXT, PAGES*, WPS*, HTML, MD |
Presentation |
| LibreOffice | 6 | PPTX, PPT, ODP, PDF, KEY*, HTML |
Spreadsheet |
| openpyxl / pandas / LibreOffice | 8 | XLSX, XLS, ODS, CSV, TSV, NUMBERS*, FODS, HTML |
Markup |
| Pandoc | 12 | Markdown, HTML, RST, AsciiDoc, LaTeX, Org, MediaWiki, EPUB, Typst, TXT, IPYNB |
Data |
| Python (PyYAML/tomlkit/pandas/lxml) | 8 | JSON, YAML, XML, TOML, CSV, TSV, Parquet, Protobuf |
Ebook |
| Pandoc / Calibre | 5 | EPUB, MOBI, AZW3, FB2, PDF |
Subtitle |
| pysubs2 | 3 | SRT, ASS/SSA, VTT |
PDF Operations |
| PyMuPDF / pypdf | 9 operations | merge, split, compress, extract, watermark, rotate, to_images |
*marks restricted formats (PAGES / WPS / NUMBERS / KEY), requiring macOS native apps or iCloud export.
Total of approximately 71 formats after deduplication, covering 95%+ of common industry conversion needs.
โ ๏ธ Known Limitations
Restricted formats:
PAGES/WPS/NUMBERS/KEYrequire macOS native apps or iCloud export; they usually cannot be converted directly on other platforms.HEIC/HEIF decoding: Depends on ImageMagick's libheif support; Apple's high-efficiency images cannot be decoded when it is missing.
Engine fallback: If LaTeX is not installed, MarkdownโPDF degrades to weasyprint; if Calibre is not installed, MOBI/AZW3 ebooks are unavailable; if ImageMagick is not installed, image conversion falls back to Python Pillow (with more limited capabilities).
Protocol Buffers: Converting to PB requires an additional
.protodefinition file.Parquet / Protobuf: The corresponding Python dependencies (
pyarrow,protobuf) are optional and must be installed manually.
๐งฐ Tool List
Core Conversion Tools (10)
Tool | Description |
| Audio/video interconversion, audio extraction, clip trimming, subtitle embedding |
| Image interconversion, resizing, optimization, vectorโraster, DPI control |
| High-fidelity Word/PDF/RTF/TXT/HTML/MD conversion, OCR, table extraction |
| PPT/ODP/PDF/HTML/PNG (slide images) conversion |
| Excel/CSV/TSV/JSON/HTML conversion, preserves formulas and multiple worksheets |
| Markdown/HTML/LaTeX/EPUB and other markup text conversion, TOC/highlight/formulas |
| JSON/YAML/XML/TOML/CSV/Parquet/Protobuf data conversion |
| EPUB/MOBI/AZW3/FB2/PDF ebook conversion, cover/metadata |
| PDF merge/split/compress/extract/watermark/rotate/to images |
| SRT/ASS/VTT subtitle interconversion, time offset, encoding conversion |
Auxiliary Tools (4)
Tool | Description |
| Query supported formats, conversion paths, and available engines |
| Probe file metadata (format, encoding, resolution, duration, page count, etc.) |
| Batch conversion, supports Glob matching and parallel execution |
| Check availability and versions of all engines and system dependencies |
All conversion tools uniformly follow the input_path + output_format + options parameter paradigm.
๐๏ธ Architecture
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ MCP Client (LLM) โ
โ Claude / Cursor / VS Code / ... โ
โโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ JSON-RPC (stdio)
โโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ MCP Protocol Layer โ
โ tool list ยท tool call ยท notifications โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ Tool Router Layer โ
โ ่ฏทๆฑ่งฃๆ โ ๆ ผๅผ่ฏๅซ โ ่ทฏ็ฑๅๅ โ ็ปๆๅฐ่ฃ
โ
โโโโโโโโโโโโโฌโโโโโโโโโโโโฌโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโค
โ Format โ Conversionโ File โ Dependency โ
โ Registry โ Planner โ Manager โ Checker โ
โโโโโโโโโโโโโดโโโโโโโโโโโโดโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโค
โ Conversion Engine Layer โ
โ FFmpeg ยท ImageMagick ยท LibreOffice ยท Pandoc โ
โ Python ยท PDF โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโSmart path planning examples:
Source โ Target | Path |
PDF โ XLSX | PDF โ CSV (pdfplumber) โ XLSX (openpyxl) |
PDF โ DOCX | PDF โ DOCX (pdf2docx) |
XLSX โ JSON | XLSX โ DataFrame (pandas) โ JSON |
PPTX โ MD | PPTX โ HTML (LibreOffice) โ MD (Pandoc) |
DOCX โ EPUB | DOCX โ HTML (Pandoc) โ EPUB (Pandoc) |
โ๏ธ Tech Stack
Primary language: TypeScript (Node.js โฅ 18)
Protocol:
@modelcontextprotocol/sdkConversion engines: FFmpeg / ImageMagick / LibreOffice / Pandoc / Python (venv isolated) / PyMuPDF
System Dependencies
Dependency | Version | Purpose | Installation |
Node.js | โฅ 18 | Run MCP Server | |
FFmpeg | โฅ 6.0 | Audio/video/subtitle conversion |
|
ImageMagick | โฅ 7.0 | Image conversion |
|
LibreOffice | โฅ 7.5 | High-fidelity Office document conversion | |
Pandoc | โฅ 3.0 | Markup/document/ebook conversion |
|
Python | โฅ 3.10 | Data/PDF/spreadsheet/subtitle |
LaTeX (optional, high-quality MarkdownโPDF) and Calibre (optional, MOBI/AZW3) can be omitted; the system will automatically degrade.
Python Dependencies
pip install -r python/requirements.txtCore dependencies: openpyxl, pandas, PyYAML, tomlkit, xmltodict, PyMuPDF, pypdf, pdf2docx, pysubs2, Pillow (pyarrow, protobuf are optional).
๐ Installation
First install the system dependencies (FFmpeg / ImageMagick / LibreOffice / Pandoc):
Windows:
npm run prepare-deps(one-click download of portable versions)macOS:
brew install ffmpeg imagemagick pandoc && brew install --cask libreofficeLinux:
apt install ffmpeg imagemagick libreoffice pandoc
Then build and install the Python dependencies:
# 1. ๅฎ่ฃ
Node ไพ่ต
npm install
# 2. ๆๅปบ๏ผ็ๆ dist/๏ผ
npm run build
# 3. ๅฎ่ฃ
Python ไพ่ต๏ผๅปบ่ฎฎไฝฟ็จ่ๆ็ฏๅข๏ผ
python3 -m venv .venv # macOS/Linux๏ผWindows ไฝฟ็จ python
source .venv/bin/activate # macOS/Linux๏ผWindows ไฝฟ็จ .venv\Scripts\activate
pip install -r python/requirements.txt๐ MCP Configuration
Add the following server to the mcpServers configuration of your MCP client.
TimeVerse Studio (Recommended ยท npm hosted)
TimeVerse Studio uses the standard mcpServers JSON integration. After publishing to npm, run it directly via npx with one command โ no local build required:
{
"mcpServers": {
"timeverse-omni-converter-mcp": {
"command": "npx",
"args": ["-y", "timeverse-omni-converter-mcp"],
"env": {
"FC_PYTHON_PATH": "python",
"FC_TEMP_DIR": "C:/temp/format-converter",
"FC_MAX_FILE_SIZE": "524288000",
"FC_TIMEOUT": "300000"
}
}
}
}Claude Desktop / Cursor (local build)
After building locally, run directly via node:
{
"mcpServers": {
"timeverse-omni-converter-mcp": {
"command": "node",
"args": ["C:/path/to/timeverse-omni-converter-mcp/dist/index.js"],
"env": {
"FC_PYTHON_PATH": "python",
"FC_TEMP_DIR": "C:/temp/format-converter",
"FC_MAX_FILE_SIZE": "524288000",
"FC_TIMEOUT": "300000"
}
}
}
}macOS: change
argsto/Users/<you>/timeverse-omni-converter-mcp/dist/index.js, and changeFC_PYTHON_PATHtopython3(or remove the entry to let it auto-detect.venv/python3).
๐ง Environment Variables
Variable | Default | Description |
|
| Python interpreter path |
|
| FFmpeg executable path |
|
| ffprobe executable path |
|
| ImageMagick executable path |
|
| LibreOffice executable path |
|
| Pandoc executable path |
|
| Calibre ebook converter path |
| System temp directory | Temporary file directory |
|
| Maximum input file size |
|
| Total extracted size limit (anti zip bomb) |
|
| Maximum compression ratio |
|
| Image decompression pixel limit (anti decompression bomb) |
|
| Single conversion timeout |
|
| Default parallelism |
|
| Log level |
๐ฌ Usage Examples
Give natural language instructions to the LLM in your MCP client, for example:
"Convert
a.movtoa.mp4, resolution 1920x1080" โconvert_media"Convert
photo.heictophoto.png" โconvert_image"Convert
report.docxtoreport.pdf" โconvert_document"Convert
data.jsontodata.csv" โconvert_data"Export every page of
slides.pptxas PNG" โconvert_presentation"Convert
book.epubtobook.mobi" โconvert_ebook"Merge
a.pdfandb.pdf" โconvert_pdf(operation: "merge")"Convert
subs.asstosubs.srt" โconvert_subtitle
Tool call example:
{
"name": "convert_media",
"arguments": {
"input_path": "C:/media/input.mov",
"output_format": "mp4",
"options": {
"video_codec": "libx264",
"video_resolution": "1920x1080",
"crf": 23
}
}
}Returned result:
{
"success": true,
"outputPath": "C:/media/input.mp4",
"outputSize": 10485760,
"duration": 3215,
"warnings": []
}โ FAQ
Q: What should I do if conversion reports missing dependencies or fails?
A: Call the check_dependencies tool to view the availability status and versions of each engine (FFmpeg / ImageMagick / LibreOffice / Pandoc / Python), install the missing dependencies, and retry.
Q: Python-related conversions (data / PDF / spreadsheet / subtitle) report errors?
A: Make sure the dependencies have been installed via pip install -r python/requirements.txt, and point FC_PYTHON_PATH to the correct Python interpreter (or an activated virtual environment).
Q: What happens if the target file already exists?
A: By default it is automatically renamed to filename_1.extension; for batch conversion, the on_conflict parameter can control overwrite / skip / rename.
Q: Why can't certain formats (such as PAGES / NUMBERS) be converted? A: These are Apple proprietary formats that require macOS native apps or iCloud export. They are restricted formats โ see "Known Limitations" for details.
Q: What should I do if large file conversion times out?
A: Increase FC_TIMEOUT (default 300000ms), and note the FC_MAX_FILE_SIZE (default 500MB) limit.
๐ก๏ธ Security
The server processes untrusted file content and has multiple built-in resource and security protections:
Input file size, extracted volume, compression ratio, and image pixel limits (anti zip bomb / decompression bomb)
Per-conversion timeout and concurrency limits
Parsers disable XXE (external entity injection), PDF embedded scripts, and external resource loading
External processes are uniformly invoked with argument arrays (
execFile) to avoid command injection
๐ License
MIT
Available Tools
14 toolsbatch_convertB
ๆน้่ฝฌๆขๅคไธชๆไปถ๏ผๆฏๆ Glob ๆจกๅผๅน้ ไธๅนถ่กๆง่กใ
| Name | Required | Description | Default |
|---|---|---|---|
| options | No | ไธๅๆไปถ่ฝฌๆข็ธๅ็้้กน | |
| parallel | No | ๅนถ่กๆฐ๏ผ้ป่ฎค 1 | |
| output_dir | No | ่พๅบ็ฎๅฝ | |
| input_paths | No | ๆไปถ่ทฏๅพๆฐ็ป๏ผไธ input_pattern ่ณๅฐไธไธช๏ผ | |
| on_conflict | No | ๅฒ็ชๅค็็ญ็ฅ | rename |
| input_pattern | No | Glob ๆจกๅผ๏ผๅฆ /data/*.png๏ผไธ input_paths ่ณๅฐไธไธช๏ผ | |
| output_format | Yes | ็ฎๆ ๆ ผๅผ |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions parallel execution and Glob support, but does not disclose side effects such as output file creation, conflict resolution behavior, error handling, or partial failure semantics. This is a significant gap for a batch operation that writes files.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single efficient sentence that front-loads the core purpose and the two most distinctive capabilities. There is no filler or redundant restatement of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 7 parameters, no annotations, and no output schema, the description is too thin to fully guide an agent. It omits important operational context such as how input_paths and input_pattern relate, the default conflict handling behavior, parallel execution caveats, and what the tool returns or reports after a batch run.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description reinforces the meaning of input_pattern and parallel but adds little beyond what the schema already states. It does not clarify the relationship between input_paths and input_pattern or the effect of on_conflict.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('batch convert multiple files') and highlights two distinctive capabilities: Glob pattern matching and parallel execution. It is differentiated from the single-file convert_* siblings by the explicit 'batch' scope, though it does not name any sibling alternative directly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this tool is for converting multiple files, especially via Glob patterns, but it does not explicitly state when to prefer it over the single-file convert_* siblings or give exclusion criteria. Usage context is present but relies on inference from the tool name and sibling names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_dependenciesA
ๆฃๆฅๆๆ่ฝฌๆขๅผๆไธ็ณป็ปไพ่ต็ๅฏ็จๆงไธ็ๆฌใ
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden of behavioral disclosure. 'Check availability and version' clearly indicates a non-destructive diagnostic operation. It does not explicitly guarantee that nothing is modified, but the read-only nature is strongly implied by the verb.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, tightly worded sentence that front-loads the verb and resource with no filler. Every word contributes to identifying the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with no annotations and no output schema, the description is nearly complete: it states what is checked (all conversion engines and system dependencies) and what aspect is checked (availability and version). It could be more explicit about the return format, but this is a minor gap for such a simple tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the empty schema fully documents all inputs. The baseline for a no-parameter tool is 4, and the description does not need to add parameter-level detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'ๆฃๆฅ' (check) and a clear resource: the availability and versions of all conversion engines and system dependencies. This clearly differentiates it from the sibling conversion, format, and file-info tools, which perform transformations or retrieval rather than diagnostics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended use is implied: an agent would call this when it needs to verify or report dependency/engine availability and versions. However, the description does not explicitly state when to prefer this over alternatives, nor does it mention a precondition such as running it before conversions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
convert_dataB
็ปๆๅๆฐๆฎ่ฝฌๆข๏ผJSON/YAML/XML/TOML/CSV/TSV/Parquet/Protocol Buffers๏ผPB ้ .proto ๅฎไน๏ผใ
| Name | Required | Description | Default |
|---|---|---|---|
| options | No | ||
| input_path | Yes | ่พๅ ฅๆไปถ็ปๅฏน่ทฏๅพ | |
| output_path | No | ่พๅบๆไปถ่ทฏๅพ๏ผๅฏ้๏ผ | |
| output_format | Yes | ็ฎๆ ๆ ผๅผ๏ผjson/yaml/xml/toml/csv/tsv/parquet/pb |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral disclosure burden. It mentions the supported formats and the PB .proto dependency, but does not explain file read/write behavior, whether output_path is optional or defaulted, overwrite behavior, or any side effects of conversion.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence with no filler. The action and format scope are front-loaded, and the important Protocol Buffers caveat is included efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a complex tool supporting eight formats with a nested options object and no output schema, but the description only lists formats and one dependency. It omits the overall conversion contract, behavior when output_path is absent, format compatibility, and practical guidance for selecting options.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 75%, and the nested options properties are individually documented. The description adds limited extra value by highlighting the PB .proto requirement, though the schema already documents proto_schema_path. It does not clarify input_path, output_path, or conversion direction beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb and resource: '็ปๆๅๆฐๆฎ่ฝฌๆข' (structured data conversion), and enumerates the exact supported formats (JSON/YAML/XML/TOML/CSV/TSV/Parquet/Protocol Buffers). This format list distinguishes it from sibling tools like convert_image, convert_pdf, and convert_media.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The supported format list implies when convert_data should be used, but the description does not explicitly state when to choose it over alternatives like convert_markup or convert_document, nor any exclusions. The only usage-related hint is the .proto requirement for Protocol Buffers.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
convert_documentB
ๆๆกฃ่ฝฌๆข๏ผDOCX/DOC/PDF/RTF/ODT/TXT/HTML/MD๏ผ้ซไฟ็ไฟ็ๆ็ใ
| Name | Required | Description | Default |
|---|---|---|---|
| options | No | ||
| input_path | Yes | ่พๅ ฅๆไปถ็ปๅฏน่ทฏๅพ | |
| output_path | No | ่พๅบๆไปถ่ทฏๅพ๏ผๅฏ้๏ผ | |
| output_format | Yes | ็ฎๆ ๆ ผๅผ๏ผdocx/pdf/html/rtf/odt/txt/md |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only promises high-fidelity layout preservation and says nothing about engine auto-selection, whether the source file is modified, default output behavior when output_path is omitted, OCR behavior, or failure conditions. This leaves key behavioral traits undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with a clear verb, compact format list, and no filler. It is efficiently structured and immediately scannable, even though it sacrifices depth.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with nested options, no annotations, and no output schema, this description is too thin. It omits default output behavior, engine selection semantics, and boundary conditions, and its format list overlaps with several sibling tools, leaving an agent without enough context to invoke it confidently beyond the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 75%, so the schema already documents most parameters. The description adds context about supported input formats and preservation intent, but it does not explain interaction between options, output path defaults, or format compatibility beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the operation as document conversion, lists supported formats (DOCX/DOC/PDF/RTF/ODT/TXT/HTML/MD), and highlights high-fidelity layout preservation. It is specific about the resource and action, though it does not explicitly differentiate from overlapping siblings like convert_pdf or convert_markup.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The format list implies usage for converting documents among these types, but there is no explicit guidance about when to choose this tool over convert_pdf, convert_markup, convert_ebook, or other siblings. No exclusions or alternative routing are provided, so usage is mostly inferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
convert_ebookB
็ตๅญไนฆ่ฝฌๆข๏ผEPUB/MOBI/AZW3/FB2/PDF/TXT/HTML/DOCX๏ผไฟ็็ซ ่ใๅ ๆฐๆฎไธๅฐ้ขใ
| Name | Required | Description | Default |
|---|---|---|---|
| options | No | ||
| input_path | Yes | ่พๅ ฅๆไปถ็ปๅฏน่ทฏๅพ | |
| output_path | No | ่พๅบๆไปถ่ทฏๅพ๏ผๅฏ้๏ผ | |
| output_format | Yes | ็ฎๆ ๆ ผๅผ๏ผepub/mobi/azw3/fb2/pdf/txt/html/docx |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of disclosing behavior. It adds a positive trait (preserves chapters, metadata, cover), but omits critical side effects: whether output files are created and overwritten, what happens if output_path is omitted, whether input files are required to exist, and any error or rate-limit behaviors. The preservation claim is useful but insufficient for a conversion tool that writes files.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose (e-book conversion) and immediately lists supported formats and preservation guarantees. There is zero wasted wording, making it easy to scan and parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a moderate-complexity tool with a nested options object, the description is minimally complete. It covers the primary formats and a key behavior (preservation) but lacks details about default output behavior, file system interactions, or prerequisites. While the schema covers parameters, the description does not address runtime expectations, making it adequate but not thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 75%, meaning the schema already documents most parameters and sub-options clearly. The description adds no parameter-specific meaning beyond listing format options, which are already in the output_format property. Baseline score of 3 is appropriate since the description does not compensate for any gaps or add value over the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: converting e-books between specified formats (EPUB/MOBI/AZW3/FB2/PDF/TXT/HTML/DOCX) while preserving chapters, metadata, and covers. The verb '็ตๅญไนฆ่ฝฌๆข' (e-book conversion) is specific and the format list distinguishes it from generic document converters like convert_document or convert_pdf. However, it doesn't explicitly state it converts 'from' and 'to' these formats, leaving it implied rather than explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus its siblings. It doesn't mention alternatives (e.g., convert_document for non-ebook formats) or any conditions that would make this tool inappropriate. The agent must infer that this is for e-book formats based on the listed extensions, but no explicit when-to-use or when-not-to-use advice is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
convert_imageB
ๅพ็ๆ ผๅผไบ่ฝฌ๏ผๆฏๆ JPEG/PNG/GIF/BMP/TIFF/WebP/SVG/HEIC/ICO/AVIF/PSD/RAW ็ญ๏ผๅฏ็ผฉๆพใไผๅใๆงๅถ DPIใ
| Name | Required | Description | Default |
|---|---|---|---|
| options | No | ||
| input_path | Yes | ่พๅ ฅๆไปถ็ปๅฏน่ทฏๅพ | |
| output_path | No | ่พๅบๆไปถ่ทฏๅพ๏ผๅฏ้๏ผ | |
| output_format | Yes | ็ฎๆ ๆ ผๅผ๏ผjpg/png/webp/gif/bmp/tiff/heic/ico/avif/svg/pdf |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility for disclosing behavior. It mentions capabilities (scaling, optimizing, DPI control) but does not state whether the operation modifies the input file, whether it overwrites output paths, or any error conditions or limitations (e.g., some formats may not support certain options). The description lacks transparency about side effects and operational behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the purpose (image format conversion) followed by supported formats and capabilities. There is no fluff or repetition. It is well-structured for quick parsing, though the long list of formats makes it slightly dense. Overall, it earns high marks for efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a nested options object with many parameters, two required fields, and no output schema. The description provides a high-level overview but omits critical details: what happens when output_path is omitted, whether input_path must be absolute, default behaviors (e.g., quality defaults), and the role of options like interlace or background_color. Given this complexity, the description is inadequate for an agent to call the tool correctly without further investigation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 75%, which is high, so the baseline is 3. The description adds context by mapping 'ๅฏ็ผฉๆพ' to width/height and 'ๆงๅถ DPI' to density, but it does not explain parameter interactions (e.g., how maintain_aspect_ratio works when both width and height are given) or the meaning of options like color_space or strip_metadata beyond what the schema already states. The description supplements the schema but does not compensate for the missing 25%.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: converting image formats, with a specific verb (่ฝฌๆข) and resource (ๅพ็ๆ ผๅผ). It lists a wide range of supported formats and additional capabilities like resizing, optimization, and DPI control. This clearly distinguishes it from sibling tools like convert_media (media) and convert_document (documents) based on format type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for image files (ๅพ็ๆ ผๅผไบ่ฝฌ), which naturally separates it from document and media conversions. However, it does not explicitly state when to use this tool versus alternatives, nor does it mention any exclusions, such as handling video or audio formats. The guidance is implicit rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
convert_markupC
ๆ ่ฎฐ/ๆๆฌ่ฝฌๆข๏ผMarkdown/HTML/reStructuredText/AsciiDoc/LaTeX/Org/MediaWiki/EPUB/Typst/็บฏๆๆฌ/Jupyterใ
| Name | Required | Description | Default |
|---|---|---|---|
| options | No | ||
| input_path | Yes | ่พๅ ฅๆไปถ็ปๅฏน่ทฏๅพ | |
| output_path | No | ่พๅบๆไปถ่ทฏๅพ๏ผๅฏ้๏ผ | |
| output_format | Yes | ็ฎๆ ๆ ผๅผ๏ผmd/html/pdf/docx/rst/latex/asciidoc/epub/tex/org/txt |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility for behavioral disclosure. It does not state whether the tool writes output files, requires specific dependencies, or if it is a read-only operation on the input. The description only lists formats, leaving behavioral traits undefined.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the tool's core purpose. It avoids redundancy and is easy to parse. However, it is under-specified, which detracts slightly from appropriateness but not from conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a complex tool with multiple formats, options, and possible outputs, yet the description provides minimal contextual guidance. It does not explain the conversion direction, output path behavior, or typical use cases. The schema covers structure but not usage context, so the description is insufficient for correct invocation in many scenarios.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 75%, which is high, so the schema already documents most parameters. The description adds no parameter details beyond that, so it does not compensate for any gaps, but it is not required to either. This meets the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb 'convert' and a specific resource 'markup/text formats' listing many formats. However, it does not mention the output formats or differentiate itself from sibling tools like convert_document, convert_ebook, or convert_pdf, making its scope ambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. It does not mention that this is for markup/text files specifically, nor exclude other conversion tools. The agent would have to infer usage from the format list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
convert_mediaA
้ณ้ข/่ง้ขๆ ผๅผไบ่ฝฌ๏ผๆฏๆ MP3/WAV/FLAC/AAC/OGG/M4A/MP4/MKV/AVI/MOV/WebM/FLV/WMV ็ญ๏ผๅฏๆๅ้ณ้ขใๆชๅ็ๆฎตใๅตๅ ฅๅญๅนใ
| Name | Required | Description | Default |
|---|---|---|---|
| options | No | ่ฝฌๆข้้กน | |
| input_path | Yes | ่พๅ ฅๆไปถ็ปๅฏน่ทฏๅพ | |
| output_path | No | ่พๅบๆไปถ่ทฏๅพ๏ผๅฏ้๏ผ็ผบ็่ชๅจ็ๆ๏ผ | |
| output_format | Yes | ็ฎๆ ๆ ผๅผ๏ผๅฆ mp3/mp4/wav/mkv |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure, but it only states capabilities. It does not disclose whether the input is modified, whether existing output files are overwritten, whether external dependencies like FFmpeg are required (the check_dependencies sibling hints this matters), or whether conversions may be long-running.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One dense sentence front-loads the core purpose, then delivers the supported format list and three capabilities with zero filler. It does not repeat any parameter descriptions already present in the schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with a nested 13-option object, no output schema, and no annotations, the description covers the primary use cases well but omits what is returned after conversion, prerequisite setup (suggested by the check_dependencies sibling), and output-path/overwrite behavior. This leaves notable gaps for a tool of this complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds value by linking high-level goals to option groups: ๆๅ้ณ้ข maps to extract_audio_only, ๆชๅ็ๆฎต maps to start_time/duration, and ๅตๅ ฅๅญๅน maps to subtitle_path โ helping an agent choose the right parameters for a stated request.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource ('้ณ้ข/่ง้ขๆ ผๅผไบ่ฝฌ') and enumerates 12 supported formats plus three distinct capabilities (audio extraction, segment cutting, subtitle embedding). This clearly differentiates it from sibling converters like convert_image, convert_document, and convert_pdf.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The format list makes it implicitly clear this tool handles audio/video, but the description never states exclusions or names alternatives. Notably, it mentions embedding subtitles while convert_subtitle exists as a sibling, and batch_convert could overlap as well; no routing guidance is given for such cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
convert_pdfB
PDF ไธ็จๆไฝ๏ผmerge/split/compress/extract_pages/extract_text/extract_images/add_watermark/rotate/to_imagesใ
| Name | Required | Description | Default |
|---|---|---|---|
| options | No | ||
| operation | Yes | PDF ๆไฝ็ฑปๅ | |
| input_path | No | ๅไธช PDF ่ทฏๅพ๏ผmerge ไปฅๅคๅฟ ๅกซ๏ผ | |
| input_paths | No | ๅคไธช PDF ่ทฏๅพ๏ผไป merge ้่ฆ๏ผ | |
| output_path | No | ่พๅบ่ทฏๅพ |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full disclosure burden. The operation list gives a high-level sense of behavior, but it does not disclose side effects, file overwriting behavior, output handling, permissions, or return values. For a multi-operation tool this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loads the scope ('PDF ไธ็จๆไฝ') before listing the supported operations. There is minimal waste, though the list is dense and could benefit from grouping or formatting to aid scanning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This tool has nine distinct operations, nested options, no annotations, and no output schema, so the description needs to explain more than just the operation list. Missing details include per-operation prerequisites, how options map to operations, output behavior, and expected results, making the definition incomplete for reliable invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides descriptions for the top-level parameters and the nested options, with roughly 80% coverage. The description adds no parameter-specific meaning beyond naming operation types, so it does not substantially improve on what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states clearly that this is a PDF-specific operation tool and enumerates nine supported operations, so an agent can understand the tool's core purpose. It distinguishes itself from general conversion siblings by focusing on PDF manipulation, but it does not explicitly contrast with similar tools like convert_document.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'PDF ไธ็จๆไฝ' implies this tool should be used for PDF-specific tasks rather than general format conversion. However, there is no explicit guidance about when to prefer this over sibling tools, nor any prerequisites or exclusions for individual operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
convert_presentationB
ๆผ็คบๆ็จฟ่ฝฌๆข๏ผPPTX/PPT/ODP/PDF/HTML/PNG๏ผๅนป็ฏ็ๅพ็๏ผใ
| Name | Required | Description | Default |
|---|---|---|---|
| options | No | ||
| input_path | Yes | ่พๅ ฅๆไปถ็ปๅฏน่ทฏๅพ | |
| output_path | No | ่พๅบ่ทฏๅพ๏ผpng ๆถไธบ็ฎๅฝ๏ผ | |
| output_format | Yes | ็ฎๆ ๆ ผๅผ๏ผpptx/pdf/odp/html/png |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure, but it only lists formats and notes that PNG output contains slide images. It does not mention output-path semantics, dependency requirements, side effects, or limitations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence with the resource and target formats front-loaded; no filler. It is concise, though the ambiguity of the format list (input vs. output) keeps it from being a 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with a nested options object, no annotations, and no output schema, the description is too thin. It does not clarify key invocation details such as how output_path is used for PNG, what slide_range syntax is for, or how to choose among the closely related sibling conversion tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 75%, so the schema already documents most parameters. The description adds no parameter-level details beyond the format list; it does not elaborate on options like slide_range, notes, image_dpi, or the output_path behavior for PNG.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific action ('่ฝฌๆข' / conversion) and a clear resource ('ๆผ็คบๆ็จฟ' / presentations), and lists supported formats. It does not explicitly distinguish this from sibling tools like convert_document or convert_pdf, though the 'presentation' scope narrows the purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool should be used for presentation files by naming 'ๆผ็คบๆ็จฟ', but it never states when to choose it over the many sibling converters (convert_document, convert_image, convert_pdf) or when not to use it. No alternatives or exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
convert_spreadsheetB
็ตๅญ่กจๆ ผ่ฝฌๆข๏ผXLSX/XLS/ODS/CSV/TSV/JSON/HTML๏ผไฟ็ๅ ฌๅผใๆ ทๅผไธๅคๅทฅไฝ่กจใ
| Name | Required | Description | Default |
|---|---|---|---|
| options | No | ||
| input_path | Yes | ่พๅ ฅๆไปถ็ปๅฏน่ทฏๅพ | |
| output_path | No | ่พๅบๆไปถ่ทฏๅพ๏ผๅฏ้๏ผ | |
| output_format | Yes | ็ฎๆ ๆ ผๅผ๏ผxlsx/xls/csv/tsv/json/html/ods |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry behavioral disclosure, but it only makes the blanket claim that formulas, styles, and multiple worksheets are preserved. This is not uniformly true across CSV/TSV/JSON/HTML outputs and conflicts with the schema's include_formulas option, which says computed values are used unless formulas are explicitly kept. It also does not mention overwriting, dependency, or output-path behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, densely informative sentence that front-loads the verb, resource, and supported formats before the key preservation guarantees. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has nested options, no output schema, and no annotations, and it sits among many sibling converters. The description omits how output_path behaves when omitted, format-specific limitations, formula handling details, and any dependencies or side effects, leaving an agent under-informed for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is roughly 75% and all visible parameter properties have descriptions, so the schema does most of the work. The description adds no parameter-level detail beyond listing formats, but it does not conflict with the schema; a baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the specific verb '่ฝฌๆข' and resource '็ตๅญ่กจๆ ผ', and lists the supported formats (XLSX/XLS/ODS/CSV/TSV/JSON/HTML). It also names distinctive preservation behavior (formulas, styles, multiple sheets), which differentiates it from sibling generic converters like convert_data or convert_document.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The format list and '็ตๅญ่กจๆ ผ่ฝฌๆข' clearly indicate a spreadsheet-conversion context, but the description does not explicitly state when to choose this tool over convert_data or convert_document, nor does it give exclusions or alternatives. Usage rules are implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
convert_subtitleC
ๅญๅนๆ ผๅผ่ฝฌๆข๏ผSRT/ASS/SSA/VTT๏ผๆฏๆ็ผ็ ่ฝฌๆขไธๆถ้ดๅ็งปใ
| Name | Required | Description | Default |
|---|---|---|---|
| options | No | ||
| input_path | Yes | ่พๅ ฅๆไปถ็ปๅฏน่ทฏๅพ | |
| output_path | No | ่พๅบๆไปถ่ทฏๅพ๏ผๅฏ้๏ผ | |
| output_format | Yes | ็ฎๆ ๆ ผๅผ๏ผsrt/ass/vtt |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must disclose behavioral traits. It mentions it supports encoding and time offset, but does not state whether it modifies the input file, creates a new output file, or produces any side effects. There is no mention of error handling, permissions, or reversibility. This is a significant gap for a conversion tool that likely writes a new file.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one concise sentence that front-loads the purpose and key capabilities. It contains no fluff or redundancy. It effectively summarizes the tool's domain and features without unnecessary detail, earning maximum conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a nested options object with four sub-parameters, but the description does not explain their relationship or typical usage. There is no output schema or description of return values (e.g., whether it returns a path, success indicator, or error). The tool's behavior around output_path being optional is not mentioned. This is incomplete for an agent to correctly invoke it without relying heavily on the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has descriptions for input_path, output_path, and output_format, and options has named sub-parameters (fps, encoding, language, time_offset) with their own descriptions, so coverage is high. The description adds little beyond the schema, only reaffirming encoding and time offset features. It does not clarify the meaning of time_offset (e.g., seconds, can be negative) or the format of fps, which the schema already handles. At 75% coverage, baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it converts subtitle formats (SRT/ASS/SSA/VTT) and mentions encoding and time offset. It is specific enough to distinguish from sibling media/document converters. However, it does not explicitly state whether these are input or output formats, and it omits the primary output formats (srt/ass/vtt) that appear in the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool versus alternatives. It simply says 'subtitle format conversion' and does not mention conditions like 'use when you need to convert subtitle files' or list alternatives to avoid. The tool name and sibling list provide context, but the description itself offers no exclusions or recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_file_infoA
ๆขๆตๆไปถๅ ไฟกๆฏ๏ผๆ ผๅผใ็ผ็ ใๅ่พจ็ใๆถ้ฟใ็ ็ใ้กตๆฐใๅทฅไฝ่กจๆฐ็ญใ
| Name | Required | Description | Default |
|---|---|---|---|
| file_path | Yes | ๆไปถ็ปๅฏน่ทฏๅพ | |
| include_checksum | No | ๅ ๅซ MD5/SHA256 ๆ ก้ชๅ |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. 'ๆขๆต' implies a read-only inspection rather than a mutation, and the enumerated metadata fields give a useful sense of behavior. Still, it does not explicitly confirm the file is unmodified, describe error/unsupported-type behavior, or clarify what happens when metadata is unavailable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that lists the key output categories without redundancy or filler. Every part earns its place, and the '็ญ' (etc.) safely signals that the list is non-exhaustive.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with two parameters and no output schema, the description covers the main return-value categories but lacks usage guidance and behavioral caveats. Given no annotations or output schema, it is adequate but not complete: an agent does not know about potential errors, default checksum behavior, or file-type limitations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters adequately. The description adds general context about what metadata is probed but does not clarify the include_checksum parameter or how the metadata list maps to the file_path input. This meets the baseline for full schema coverage without adding parameter-specific value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'ๆขๆตๆไปถๅ ไฟกๆฏ' (probe file metadata), and lists concrete metadata dimensions (format, encoding, resolution, duration, bitrate, page count, sheet count). This clearly distinguishes it from all sibling tools, which are conversion or dependency-check operations rather than metadata inspection.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is implied by the sibling list: this is the only read/inspection tool among converters, so an agent can infer it should be called to inspect files before conversion. However, the description never explicitly states when to use this tool versus alternatives, nor does it mention exclusions such as unsupported file types.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_supported_formatsA
ๆฅ่ฏขๆฏๆ็ๆ ผๅผใ่ฝฌๆข่ทฏๅพไธๅฏ็จๅผๆ๏ผๅฏๆๅ็ฑป่ฟๆปคใ
| Name | Required | Description | Default |
|---|---|---|---|
| format | No | ๆฅ่ฏข็นๅฎๆ ผๅผ็่ฝฌๆข้้กน | |
| category | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. The use of 'ๆฅ่ฏข' (query) implies a read-only, non-mutating operation, which is the essential behavioral trait. It does not disclose other aspects like permissions or dependencies, but for a simple lookup tool this is acceptable, and there is no contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, short sentence that front-loads the core purpose and the filtering capability. There is no redundant information; every word contributes to understanding the tool, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with no output schema, the description adequately states what the tool queries: supported formats, conversion paths, and engines, and mentions filtering. It lacks explicit return format details, but the content is clear enough for an agent to invoke the tool correctly. A slightly richer description covering response structure would make it complete, but the current level is sufficient given the complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 50% description coverage: 'format' has a description, 'category' does not. The description adds meaning for 'category' by explicitly stating it can filter by category, and the 'format' parameter is already described in the schema. Overall, the description partially compensates for the missing schema description of 'category', but does not go beyond that.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: querying supported formats, conversion paths, and available engines, with filtering by category. The verb 'ๆฅ่ฏข' (query) combined with the resource makes it distinct from the sibling conversion tools, leaving no ambiguity about its purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly mention when to use this tool versus the conversion siblings like convert_media or check_dependencies. However, the read-only 'query' verb and the tool's name imply it is used to discover conversion capabilities before performing conversions, so usage is somewhat implied but not detailed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
14 tool updates
v1.0.0- First observed
batch_convert - First observed
check_dependencies - First observed
convert_data - First observed
convert_document - First observed
convert_ebook - First observed
convert_image - First observed
convert_markup - First observed
convert_media - First observed
convert_pdf - First observed
convert_presentation - First observed
convert_spreadsheet - First observed
convert_subtitle - First observed
get_file_info - First observed
get_supported_formats
TDQS
Scored across 14 tools
ๆฏไธช่ฝฌๆขๅทฅๅ ท้ๅฏน็นๅฎๅชไฝ็ฑปๅ๏ผๅชไฝใๅพๅใๆๆกฃใๆผ็คบใ็ตๅญ่กจๆ ผใๆ ่ฎฐใๆฐๆฎใ็ตๅญไนฆใPDFใๅญๅน๏ผ๏ผ็จ้ๆ็กฎไธ้ๅ ใ่พ ๅฉๅทฅๅ ทๅฆ่ทๅๆฏๆๆ ผๅผใๆไปถไฟกๆฏใๆน้่ฝฌๆขๅไพ่ตๆฃๆฅไธ่ฝฌๆขๅทฅๅ ทๅบๅๆๆพใ
ๆๆๅทฅๅ ทๅ็งฐๅ้็จไธ่ด็ๅจ่ฏ_ๅ่ฏๆจกๅผ๏ผๅฆconvert_mediaใget_file_infoใbatch_convert๏ผ๏ผๅ จ้จไฝฟ็จๅฐๅ่ๅฝขๅฝๅๆณ๏ผ้ฃๆ ผ็ปไธ๏ผๆไบ้ขๆตๅ้ๆฉใ
14ไธชๅทฅๅ ท่ฆ็ไบๅนฟๆณ็่ฝฌๆข้ขๅ๏ผๆฏไธชๅทฅๅ ท้ฝ้ๅฏน็นๅฎ็ๆ ผๅผ็ฑปๅซๆ่พ ๅฉๅ่ฝ๏ผๆฐ้้ไธญ๏ผๆฒกๆๅไฝๆๆๆพไธ่ถณ๏ผไธๆๅกๅจ็ฎ็ๅน้ ใ
ๅทฅๅ ท้่ฆ็ไบๅชไฝใๅพๅใๆๆกฃใๆผ็คบใ็ตๅญ่กจๆ ผใๆ ่ฎฐใๆฐๆฎใ็ตๅญไนฆใPDFๅๅญๅน็ญๅค็งๆ ผๅผ่ฝฌๆข๏ผๅนถๅ ๅซๆ ผๅผๆฅ่ฏขใๆไปถไฟกๆฏใๆน้่ฝฌๆขๅไพ่ตๆฃๆฅ็ญ่พ ๅฉๅ่ฝ๏ผ็ไผผๅฎๆดๆ ้ๅคง็ผบๅคฑใ
Maintenance
Related MCP Connectors
Normalize and convert more than 400 file types via TweekIT's hosted MCP streamable HTTP endpoint.
Process video, audio, images, and documents with 86+ cloud media processing robots.
Convert images to PNG, JPEG, WebP, or AVIF through one public remote MCP tool.
Hosted MCP tools for FFmpeg-style video and audio processing through FFMPEG API.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables file conversion between 690+ formats (image, video, audio, document, data, font, ebook, archive) using an MCP server, with no API key or signup required.29 npm5MIT
- AlicenseAqualityDmaintenanceEnables document format conversion between Word, Markdown, PDF, HTML, and plain text, supporting batch operations and format validation via the AI MCP protocol.48 npm1MIT
- AlicenseNot gradedqualityBmaintenanceMCP server that extracts clean text, tables, and structured data from documents, images, code, and audio files, supporting 97 formats with OCR, transcription, and code intelligence.MIT
- AlicenseNot gradedqualityAmaintenanceEnables local document conversion between 70+ formats (PDF, Word, Excel, etc.) via MCP, keeping files private.MIT