Source profileQuality 70/100Review permissions

wshobson/agents/plugins/file-conversion/skills/file-conversion/SKILL.md

file-conversion

Convert files between formats — PDF to Word, HEIC to JPG, MP4 to MP3, CSV to JSON, EPUB to MOBI, and 999 total routes across images, video, audio, documents, data, fonts, ebooks, and archives. Free via changethisfile.com, no API key or signup. Use when the user needs a file converted to a different format.

Source repository stars
38,313
Declared platforms
0
Static risk flags
2
Last source update
2026-07-22
Source checked
2026-07-28

Decision brief

What it does—and where it fits

Convert files between 999 conversion routes using the free ChangeThisFile service. No account or API key required. Conversions run server-side (FFmpeg, LibreOffice, Calibre, 7-Zip, sharp, Ghostscript); files are deleted within 24 hours.

Best for

  • Use when the user needs a file converted to a different format.

Not for

  • Tasks that require unconfirmed production actions or broad system permissions.
  • Environments where the pinned source and install steps cannot be inspected.

Compatibility matrix

Platform support, with evidence labels

PlatformStatusEvidenceWhat to check
CodexNot declaredNo explicit evidencePortability before use
Claude CodeNot declaredNo explicit evidencePortability before use
CursorNot declaredNo explicit evidencePortability before use
Gemini CLINot declaredNo explicit evidencePortability before use
Open the compatibility checker

Installation

Inspect first. Install second.

The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.

Source-detected install commandSource
npx skills add https://github.com/wshobson/agents --skill "plugins/file-conversion/skills/file-conversion"
Safe inspection promptEditorial

Inspect the Agent Skill "file-conversion" from https://github.com/wshobson/agents/blob/c4b82b0ad771190355eb8e204b1329732a18449a/plugins/file-conversion/skills/file-conversion/SKILL.md at commit c4b82b0ad771190355eb8e204b1329732a18449a. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.

Workflow

What the source asks the agent to do

  1. 01

    Decision order

    1. If ChangeThisFile MCP tools are available (changethisfile:convertfile, changethisfile:listconversions) — use them directly. convertfile takes sourceurl OR base64content + sourceformat, plus targetformat, and returns a temporary download URL. 2. Otherwise, use the bundled scri…

    If ChangeThisFile MCP tools are available (changethisfile:convertfile, changethisfile:listconversions) — use them directly. convertfile takes sourceurl OR base64content + sourceformat, plus targetformat, and returns a t…Otherwise, use the bundled script (requires network access to changethisfile.com):1. If ChangeThisFile MCP tools are available (changethisfile:convertfile, changethisfile:listconversions) — use them directly. convertfile takes sourceurl OR base64content + sourceformat, plus targetformat, and returns…
  2. 02

    e.g. scripts/convert.sh report.docx pdf

    Review the “e.g. scripts/convert.sh report.docx pdf” section in the pinned source before continuing.

    Review and apply the “e.g. scripts/convert.sh report.docx pdf” source section.
  3. 03

    prints the output file path on success

    bash curl -sS -X POST https://changethisfile.com/mcp \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"convertfile","arguments":{"sourceurl":"","targetformat":"pdf"}}}' bash curl -sS -X POST https://changethisfile.com/mcp…

    Max input: 25 MB (free path). Larger files: get a free API key (1,000 conversions/month) at https://changethisfile.com/docs/authentication and use POST /v1/convert.Rate limit: 5 conversions/minute per IP. On "Rate limit exceeded", wait 60 seconds and retry once."Unsupported conversion: X→Y" errors list the valid targets for that source format.
  4. 04

    Discovering supported routes

    Ask before guessing if a conversion is exotic:

    Ask before guessing if a conversion is exotic:Omit sourceformat for a grouped summary of all 999 routes.

Permission review

Static risk signals and limitations

Network access

medium · line 7

The documentation includes network, browsing, or remote request actions.

**If ChangeThisFile MCP tools are available** (`changethisfile:convert_file`, `changethisfile:list_conversions`) — use them directly. `convert_file` takes `source_url` OR `base64_content` + `source_format`, plus `target_format`, and returns

Sends data out

high · line 21

The documentation includes sending, uploading, or posting data to a remote service.

curl -sS -X POST https://changethisfile.com/mcp \

Network access

medium · line 21

The documentation includes network, browsing, or remote request actions.

curl -sS -X POST https://changethisfile.com/mcp \

Sends data out

high · line 33

The documentation includes sending, uploading, or posting data to a remote service.

curl -sS -X POST https://changethisfile.com/mcp \

Evidence record

Why each signal appears

EvidenceSourceComputedTestedEditorial
SignalValueEvidence typeMeaning
Quality score70/100ComputedDocumentation, specificity, maintenance, and trust rules
Repository stars38,313SourceRepository attention, not individual Skill quality
Compatibility0 platformsSourceDeclared in the catalog source record
Usage guideautomated source guideEditorialGenerated or reviewed according to the visible evidence level

Pinned source

Provenance and original SKILL.md

Repository
wshobson/agents
Skill path
plugins/file-conversion/skills/file-conversion/SKILL.md
Commit
c4b82b0ad771190355eb8e204b1329732a18449a
License
MIT
Collected
2026-07-28
Default branch
main
View the original SKILL.md

File Conversion (ChangeThisFile)

Convert files between 999 conversion routes using the free ChangeThisFile service. No account or API key required. Conversions run server-side (FFmpeg, LibreOffice, Calibre, 7-Zip, sharp, Ghostscript); files are deleted within 24 hours.

Decision order

  1. If ChangeThisFile MCP tools are available (changethisfile:convert_file, changethisfile:list_conversions) — use them directly. convert_file takes source_url OR base64_content + source_format, plus target_format, and returns a temporary download URL.
  2. Otherwise, use the bundled script (requires network access to changethisfile.com):
scripts/convert.sh <input-file> <target-format> [output-file]
# e.g. scripts/convert.sh report.docx pdf
# prints the output file path on success

The script path is relative to this skill's directory. It base64-encodes the file, calls the hosted MCP endpoint over plain HTTPS, downloads the result, and writes it next to the input (or to [output-file]).

  1. Remote file (you have a URL, not a local file) — skip the download/re-upload; one curl does it:
curl -sS -X POST https://changethisfile.com/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"convert_file","arguments":{"source_url":"<FILE_URL>","target_format":"pdf"}}}'

The response text contains a download URL — fetch it with curl -o <output>.

Discovering supported routes

Ask before guessing if a conversion is exotic:

curl -sS -X POST https://changethisfile.com/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"list_conversions","arguments":{"source_format":"docx"}}}'

Omit source_format for a grouped summary of all 999 routes.

Limits and errors

  • Max input: 25 MB (free path). Larger files: get a free API key (1,000 conversions/month) at https://changethisfile.com/docs/authentication and use POST /v1/convert.
  • Rate limit: 5 conversions/minute per IP. On "Rate limit exceeded", wait 60 seconds and retry once.
  • "Unsupported conversion: X→Y" errors list the valid targets for that source format.
  • Download URLs expire after 1 hour — download immediately, then work with the local file.

Environment notes

  • Needs outbound HTTPS to changethisfile.com. On claude.ai, the code-execution sandbox restricts egress by default — prefer the MCP connector there, or the user can allow the domain under Settings → Capabilities.
  • Full docs: https://changethisfile.com/docs/mcp

Alternatives

Compare before choosing

Computed 9831,966

K-Dense-AI/scientific-agent-skills

dask

Distributed computing for larger-than-RAM pandas/NumPy workflows. Use when you need to scale existing pandas/NumPy code beyond memory or across clusters. Best for parallel file processing, distributed ML, integration with existing pandas code. For out-of-core analytics on single machine use vaex; for in-memory speed use polars.

Computed 9631,966

K-Dense-AI/scientific-agent-skills

scanpy

Standard single-cell RNA-seq analysis pipeline. Use for QC, normalization, dimensionality reduction (PCA/UMAP/t-SNE), clustering, differential expression, visualization, and converting R-friendly single-cell formats such as Seurat or SingleCellExperiment RDS files into h5ad for Scanpy. Best for exploratory scRNA-seq analysis with established workflows. For deep learning models use scvi-tools; for data format questions use anndata.

Computed 967

event4u-app/agent-config

corpus-grounding

Shared corpus-grounding engine — BM25 + structured filters + decision rules over CSV corpora via a domain manifest. Use when a skill needs grounded pre-action option-space constraints.

Computed 9342,015

coreyhaines31/marketingskills

analytics

When the user wants to set up, improve, or audit analytics tracking and measurement. Also use when the user mentions "set up tracking," "GA4," "Google Analytics," "conversion tracking," "event tracking," "UTM parameters," "tag manager," "GTM," "analytics implementation," "tracking plan," "how do I measure this," "track conversions," "Mixpanel," "Segment," "are my events firing," or "analytics isn't working." Use this whenever someone asks how to know if something is working or wants to measure m