Skip to main content
Glama
elimyliu

timeverse-omni-converter-mcp

by elimyliu

Format Converter MCP

License Version Node.js TypeScript 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.

English


โœจ 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

convert_media

FFmpeg

12

MP3, WAV, FLAC, AAC, OGG, M4A, WMA, AIFF, OPUS, AC3, AMR, MKA

Video

convert_media

FFmpeg

14

MP4, AVI, MKV, MOV, WebM, FLV, WMV, M4V, MPEG, 3GP, TS, GIF, VOB, RMVB

Image

convert_image

ImageMagick / Pillow

16

JPEG, PNG, GIF, BMP, TIFF, WebP, SVG, HEIC, ICO, PSD, RAW, AVIF, EXR

Document

convert_document

LibreOffice / Pandoc / pdf2docx

10

DOCX, DOC, PDF, RTF, ODT, TXT, PAGES*, WPS*, HTML, MD

Presentation

convert_presentation

LibreOffice

6

PPTX, PPT, ODP, PDF, KEY*, HTML

Spreadsheet

convert_spreadsheet

openpyxl / pandas / LibreOffice

8

XLSX, XLS, ODS, CSV, TSV, NUMBERS*, FODS, HTML

Markup

convert_markup

Pandoc

12

Markdown, HTML, RST, AsciiDoc, LaTeX, Org, MediaWiki, EPUB, Typst, TXT, IPYNB

Data

convert_data

Python (PyYAML/tomlkit/pandas/lxml)

8

JSON, YAML, XML, TOML, CSV, TSV, Parquet, Protobuf

Ebook

convert_ebook

Pandoc / Calibre

5

EPUB, MOBI, AZW3, FB2, PDF

Subtitle

convert_subtitle

pysubs2

3

SRT, ASS/SSA, VTT

PDF Operations

convert_pdf

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 / KEY require 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 .proto definition file.

  • Parquet / Protobuf: The corresponding Python dependencies (pyarrow, protobuf) are optional and must be installed manually.


๐Ÿงฐ Tool List

Core Conversion Tools (10)

Tool

Description

convert_media

Audio/video interconversion, audio extraction, clip trimming, subtitle embedding

convert_image

Image interconversion, resizing, optimization, vectorโ†”raster, DPI control

convert_document

High-fidelity Word/PDF/RTF/TXT/HTML/MD conversion, OCR, table extraction

convert_presentation

PPT/ODP/PDF/HTML/PNG (slide images) conversion

convert_spreadsheet

Excel/CSV/TSV/JSON/HTML conversion, preserves formulas and multiple worksheets

convert_markup

Markdown/HTML/LaTeX/EPUB and other markup text conversion, TOC/highlight/formulas

convert_data

JSON/YAML/XML/TOML/CSV/Parquet/Protobuf data conversion

convert_ebook

EPUB/MOBI/AZW3/FB2/PDF ebook conversion, cover/metadata

convert_pdf

PDF merge/split/compress/extract/watermark/rotate/to images

convert_subtitle

SRT/ASS/VTT subtitle interconversion, time offset, encoding conversion

Auxiliary Tools (4)

Tool

Description

get_supported_formats

Query supported formats, conversion paths, and available engines

get_file_info

Probe file metadata (format, encoding, resolution, duration, page count, etc.)

batch_convert

Batch conversion, supports Glob matching and parallel execution

check_dependencies

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/sdk

  • Conversion engines: FFmpeg / ImageMagick / LibreOffice / Pandoc / Python (venv isolated) / PyMuPDF

System Dependencies

Dependency

Version

Purpose

Installation

Node.js

โ‰ฅ 18

Run MCP Server

nodejs.org

FFmpeg

โ‰ฅ 6.0

Audio/video/subtitle conversion

winget install ffmpeg / brew install ffmpeg / apt install ffmpeg

ImageMagick

โ‰ฅ 7.0

Image conversion

winget install ImageMagick / brew install imagemagick / apt install imagemagick

LibreOffice

โ‰ฅ 7.5

High-fidelity Office document conversion

libreoffice.org

Pandoc

โ‰ฅ 3.0

Markup/document/ebook conversion

winget install pandoc / brew install pandoc / apt install pandoc

Python

โ‰ฅ 3.10

Data/PDF/spreadsheet/subtitle

python.org

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.txt

Core 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 libreoffice

  • Linux: 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 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 args to /Users/<you>/timeverse-omni-converter-mcp/dist/index.js, and change FC_PYTHON_PATH to python3 (or remove the entry to let it auto-detect .venv/python3).


๐Ÿ”ง Environment Variables

Variable

Default

Description

FC_PYTHON_PATH

python

Python interpreter path

FC_FFMPEG_PATH

ffmpeg

FFmpeg executable path

FC_FFPROBE_PATH

ffprobe

ffprobe executable path

FC_IMAGEMAGICK_PATH

magick

ImageMagick executable path

FC_LIBREOFFICE_PATH

soffice

LibreOffice executable path

FC_PANDOC_PATH

pandoc

Pandoc executable path

FC_CALIBRE_PATH

ebook-convert

Calibre ebook converter path

FC_TEMP_DIR

System temp directory

Temporary file directory

FC_MAX_FILE_SIZE

524288000 (500MB)

Maximum input file size

FC_MAX_EXTRACTED_SIZE

1073741824 (1GB)

Total extracted size limit (anti zip bomb)

FC_MAX_COMPRESSION_RATIO

100

Maximum compression ratio

FC_MAX_PIXELS

100000000

Image decompression pixel limit (anti decompression bomb)

FC_TIMEOUT

300000 (5min)

Single conversion timeout

FC_PARALLEL

1

Default parallelism

FC_LOG_LEVEL

info

Log level


๐Ÿ’ฌ Usage Examples

Give natural language instructions to the LLM in your MCP client, for example:

  • "Convert a.mov to a.mp4, resolution 1920x1080" โ†’ convert_media

  • "Convert photo.heic to photo.png" โ†’ convert_image

  • "Convert report.docx to report.pdf" โ†’ convert_document

  • "Convert data.json to data.csv" โ†’ convert_data

  • "Export every page of slides.pptx as PNG" โ†’ convert_presentation

  • "Convert book.epub to book.mobi" โ†’ convert_ebook

  • "Merge a.pdf and b.pdf" โ†’ convert_pdf (operation: "merge")

  • "Convert subs.ass to subs.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 tools
batch_convertB

ๆ‰น้‡่ฝฌๆขๅคšไธชๆ–‡ไปถ๏ผŒๆ”ฏๆŒ Glob ๆจกๅผๅŒน้…ไธŽๅนถ่กŒๆ‰ง่กŒใ€‚

ParametersJSON Schema
NameRequiredDescriptionDefault
optionsNoไธŽๅ•ๆ–‡ไปถ่ฝฌๆข็›ธๅŒ็š„้€‰้กน
parallelNoๅนถ่กŒๆ•ฐ๏ผŒ้ป˜่ฎค 1
output_dirNo่พ“ๅ‡บ็›ฎๅฝ•
input_pathsNoๆ–‡ไปถ่ทฏๅพ„ๆ•ฐ็ป„๏ผˆไธŽ input_pattern ่‡ณๅฐ‘ไธ€ไธช๏ผ‰
on_conflictNoๅ†ฒ็ชๅค„็†็ญ–็•ฅrename
input_patternNoGlob ๆจกๅผ๏ผŒๅฆ‚ /data/*.png๏ผˆไธŽ input_paths ่‡ณๅฐ‘ไธ€ไธช๏ผ‰
output_formatYes็›ฎๆ ‡ๆ ผๅผ

TDQS

B3.2/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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

ๆฃ€ๆŸฅๆ‰€ๆœ‰่ฝฌๆขๅผ•ๆ“ŽไธŽ็ณป็ปŸไพ่ต–็š„ๅฏ็”จๆ€งไธŽ็‰ˆๆœฌใ€‚

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior4/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters4/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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 ๅฎšไน‰๏ผ‰ใ€‚

ParametersJSON Schema
NameRequiredDescriptionDefault
optionsNo
input_pathYes่พ“ๅ…ฅๆ–‡ไปถ็ปๅฏน่ทฏๅพ„
output_pathNo่พ“ๅ‡บๆ–‡ไปถ่ทฏๅพ„๏ผˆๅฏ้€‰๏ผ‰
output_formatYes็›ฎๆ ‡ๆ ผๅผ๏ผšjson/yaml/xml/toml/csv/tsv/parquet/pb

TDQS

B3.4/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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๏ผŒ้ซ˜ไฟ็œŸไฟ็•™ๆŽ’็‰ˆใ€‚

ParametersJSON Schema
NameRequiredDescriptionDefault
optionsNo
input_pathYes่พ“ๅ…ฅๆ–‡ไปถ็ปๅฏน่ทฏๅพ„
output_pathNo่พ“ๅ‡บๆ–‡ไปถ่ทฏๅพ„๏ผˆๅฏ้€‰๏ผ‰
output_formatYes็›ฎๆ ‡ๆ ผๅผ๏ผšdocx/pdf/html/rtf/odt/txt/md

TDQS

B3.2/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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๏ผŒไฟ็•™็ซ ่Š‚ใ€ๅ…ƒๆ•ฐๆฎไธŽๅฐ้ขใ€‚

ParametersJSON Schema
NameRequiredDescriptionDefault
optionsNo
input_pathYes่พ“ๅ…ฅๆ–‡ไปถ็ปๅฏน่ทฏๅพ„
output_pathNo่พ“ๅ‡บๆ–‡ไปถ่ทฏๅพ„๏ผˆๅฏ้€‰๏ผ‰
output_formatYes็›ฎๆ ‡ๆ ผๅผ๏ผšepub/mobi/azw3/fb2/pdf/txt/html/docx

TDQS

B3.1/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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ใ€‚

ParametersJSON Schema
NameRequiredDescriptionDefault
optionsNo
input_pathYes่พ“ๅ…ฅๆ–‡ไปถ็ปๅฏน่ทฏๅพ„
output_pathNo่พ“ๅ‡บๆ–‡ไปถ่ทฏๅพ„๏ผˆๅฏ้€‰๏ผ‰
output_formatYes็›ฎๆ ‡ๆ ผๅผ๏ผšjpg/png/webp/gif/bmp/tiff/heic/ico/avif/svg/pdf

TDQS

B3.3/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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ใ€‚

ParametersJSON Schema
NameRequiredDescriptionDefault
optionsNo
input_pathYes่พ“ๅ…ฅๆ–‡ไปถ็ปๅฏน่ทฏๅพ„
output_pathNo่พ“ๅ‡บๆ–‡ไปถ่ทฏๅพ„๏ผˆๅฏ้€‰๏ผ‰
output_formatYes็›ฎๆ ‡ๆ ผๅผ๏ผšmd/html/pdf/docx/rst/latex/asciidoc/epub/tex/org/txt

TDQS

C2.6/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose3/5

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.

Usage Guidelines2/5

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 ็ญ‰๏ผŒๅฏๆๅ–้Ÿณ้ข‘ใ€ๆˆชๅ–็‰‡ๆฎตใ€ๅตŒๅ…ฅๅญ—ๅน•ใ€‚

ParametersJSON Schema
NameRequiredDescriptionDefault
optionsNo่ฝฌๆข้€‰้กน
input_pathYes่พ“ๅ…ฅๆ–‡ไปถ็ปๅฏน่ทฏๅพ„
output_pathNo่พ“ๅ‡บๆ–‡ไปถ่ทฏๅพ„๏ผˆๅฏ้€‰๏ผŒ็ผบ็œ่‡ชๅŠจ็”Ÿๆˆ๏ผ‰
output_formatYes็›ฎๆ ‡ๆ ผๅผ๏ผŒๅฆ‚ mp3/mp4/wav/mkv

TDQS

A3.7/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters4/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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ใ€‚

ParametersJSON Schema
NameRequiredDescriptionDefault
optionsNo
operationYesPDF ๆ“ไฝœ็ฑปๅž‹
input_pathNoๅ•ไธช PDF ่ทฏๅพ„๏ผˆmerge ไปฅๅค–ๅฟ…ๅกซ๏ผ‰
input_pathsNoๅคšไธช PDF ่ทฏๅพ„๏ผˆไป… merge ้œ€่ฆ๏ผ‰
output_pathNo่พ“ๅ‡บ่ทฏๅพ„

TDQS

B3.1/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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๏ผˆๅนป็ฏ็‰‡ๅ›พ็‰‡๏ผ‰ใ€‚

ParametersJSON Schema
NameRequiredDescriptionDefault
optionsNo
input_pathYes่พ“ๅ…ฅๆ–‡ไปถ็ปๅฏน่ทฏๅพ„
output_pathNo่พ“ๅ‡บ่ทฏๅพ„๏ผˆpng ๆ—ถไธบ็›ฎๅฝ•๏ผ‰
output_formatYes็›ฎๆ ‡ๆ ผๅผ๏ผšpptx/pdf/odp/html/png

TDQS

B3.1/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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๏ผŒไฟ็•™ๅ…ฌๅผใ€ๆ ทๅผไธŽๅคšๅทฅไฝœ่กจใ€‚

ParametersJSON Schema
NameRequiredDescriptionDefault
optionsNo
input_pathYes่พ“ๅ…ฅๆ–‡ไปถ็ปๅฏน่ทฏๅพ„
output_pathNo่พ“ๅ‡บๆ–‡ไปถ่ทฏๅพ„๏ผˆๅฏ้€‰๏ผ‰
output_formatYes็›ฎๆ ‡ๆ ผๅผ๏ผšxlsx/xls/csv/tsv/json/html/ods

TDQS

B3.4/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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๏ผŒๆ”ฏๆŒ็ผ–็ ่ฝฌๆขไธŽๆ—ถ้—ดๅ็งปใ€‚

ParametersJSON Schema
NameRequiredDescriptionDefault
optionsNo
input_pathYes่พ“ๅ…ฅๆ–‡ไปถ็ปๅฏน่ทฏๅพ„
output_pathNo่พ“ๅ‡บๆ–‡ไปถ่ทฏๅพ„๏ผˆๅฏ้€‰๏ผ‰
output_formatYes็›ฎๆ ‡ๆ ผๅผ๏ผšsrt/ass/vtt

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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

ๆŽขๆต‹ๆ–‡ไปถๅ…ƒไฟกๆฏ๏ผšๆ ผๅผใ€็ผ–็ ใ€ๅˆ†่พจ็އใ€ๆ—ถ้•ฟใ€็ ็އใ€้กตๆ•ฐใ€ๅทฅไฝœ่กจๆ•ฐ็ญ‰ใ€‚

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathYesๆ–‡ไปถ็ปๅฏน่ทฏๅพ„
include_checksumNoๅŒ…ๅซ MD5/SHA256 ๆ ก้ชŒๅ’Œ

TDQS

A3.7/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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

ๆŸฅ่ฏขๆ”ฏๆŒ็š„ๆ ผๅผใ€่ฝฌๆข่ทฏๅพ„ไธŽๅฏ็”จๅผ•ๆ“Ž๏ผŒๅฏๆŒ‰ๅˆ†็ฑป่ฟ‡ๆปคใ€‚

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNoๆŸฅ่ฏข็‰นๅฎšๆ ผๅผ็š„่ฝฌๆข้€‰้กน
categoryNo

TDQS

A3.8/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

  1. 14 tool updatesv1.0.0
    • First observedbatch_convert
    • First observedcheck_dependencies
    • First observedconvert_data
    • First observedconvert_document
    • First observedconvert_ebook
    • First observedconvert_image
    • First observedconvert_markup
    • First observedconvert_media
    • First observedconvert_pdf
    • First observedconvert_presentation
    • First observedconvert_spreadsheet
    • First observedconvert_subtitle
    • First observedget_file_info
    • First observedget_supported_formats

TDQS

A3.6/5.0

Scored across 14 tools

Disambiguation5/5

ๆฏไธช่ฝฌๆขๅทฅๅ…ท้’ˆๅฏน็‰นๅฎšๅช’ไฝ“็ฑปๅž‹๏ผˆๅช’ไฝ“ใ€ๅ›พๅƒใ€ๆ–‡ๆกฃใ€ๆผ”็คบใ€็”ตๅญ่กจๆ ผใ€ๆ ‡่ฎฐใ€ๆ•ฐๆฎใ€็”ตๅญไนฆใ€PDFใ€ๅญ—ๅน•๏ผ‰๏ผŒ็”จ้€”ๆ˜Ž็กฎไธ้‡ๅ ใ€‚่พ…ๅŠฉๅทฅๅ…ทๅฆ‚่Žทๅ–ๆ”ฏๆŒๆ ผๅผใ€ๆ–‡ไปถไฟกๆฏใ€ๆ‰น้‡่ฝฌๆขๅ’Œไพ่ต–ๆฃ€ๆŸฅไธŽ่ฝฌๆขๅทฅๅ…ทๅŒบๅˆ†ๆ˜Žๆ˜พใ€‚

Naming Consistency5/5

ๆ‰€ๆœ‰ๅทฅๅ…ทๅ็งฐๅ‡้‡‡็”จไธ€่‡ด็š„ๅŠจ่ฏ_ๅ่ฏๆจกๅผ๏ผˆๅฆ‚convert_mediaใ€get_file_infoใ€batch_convert๏ผ‰๏ผŒๅ…จ้ƒจไฝฟ็”จๅฐๅ†™่›‡ๅฝขๅ‘ฝๅๆณ•๏ผŒ้ฃŽๆ ผ็ปŸไธ€๏ผŒๆ˜“ไบŽ้ข„ๆต‹ๅ’Œ้€‰ๆ‹ฉใ€‚

Tool Count5/5

14ไธชๅทฅๅ…ท่ฆ†็›–ไบ†ๅนฟๆณ›็š„่ฝฌๆข้ข†ๅŸŸ๏ผŒๆฏไธชๅทฅๅ…ท้ƒฝ้’ˆๅฏน็‰นๅฎš็š„ๆ ผๅผ็ฑปๅˆซๆˆ–่พ…ๅŠฉๅŠŸ่ƒฝ๏ผŒๆ•ฐ้‡้€‚ไธญ๏ผŒๆฒกๆœ‰ๅ†—ไฝ™ๆˆ–ๆ˜Žๆ˜พไธ่ถณ๏ผŒไธŽๆœๅŠกๅ™จ็›ฎ็š„ๅŒน้…ใ€‚

Completeness5/5

ๅทฅๅ…ท้›†่ฆ†็›–ไบ†ๅช’ไฝ“ใ€ๅ›พๅƒใ€ๆ–‡ๆกฃใ€ๆผ”็คบใ€็”ตๅญ่กจๆ ผใ€ๆ ‡่ฎฐใ€ๆ•ฐๆฎใ€็”ตๅญไนฆใ€PDFๅ’Œๅญ—ๅน•็ญ‰ๅคš็งๆ ผๅผ่ฝฌๆข๏ผŒๅนถๅŒ…ๅซๆ ผๅผๆŸฅ่ฏขใ€ๆ–‡ไปถไฟกๆฏใ€ๆ‰น้‡่ฝฌๆขๅ’Œไพ่ต–ๆฃ€ๆŸฅ็ญ‰่พ…ๅŠฉๅŠŸ่ƒฝ๏ผŒ็œ‹ไผผๅฎŒๆ•ดๆ— ้‡ๅคง็ผบๅคฑใ€‚

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Enables file conversion between 690+ formats (image, video, audio, document, data, font, ebook, archive) using an MCP server, with no API key or signup required.
    2
    9 npm
    5
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    MCP 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