Skip to content

ChangeThisFile

by changethisfile.com · remote · no sign-in to list tools · v1.2.0 · published by com.changethisfile

1,000+ conversion routes plus translate, extract tables, compress. 25 free/month, then a free key.

Changes · 6

7 tools: 6 change things and 1 only read.

Scanned Oct 21, 2026

1 check matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http changethisfile https://changethisfile.com/mcp

Findings

Matches of fixed checks, with the text they matched.

1 warn
  • The server marks "do_file_job" as not read-only (readOnlyHint: false), and its words say it reads.

    Matched text

    annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The description's first verb is "describe": a word for reading.

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

7 tools

Changes things 6Claude Code: ask
  • check_jobCheck the status of a previously submitted file job (translate_file, extract_tables, compress_file).No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Check the status of a previously submitted file job (translate_file, extract_tables, compress_file). Returns the current status, preview + checkout link for completed paid jobs, or the download URL for completed free/paid-and-unlocked jobs.

    Annotations the server declares

    • title: Check Job Status
    • readOnlyHint: true
    • openWorldHint: false
  • compress_fileCompress a file (PDF, JPG, PNG, WebP, MP4, MOV, WebM) down to an exact target size — e.g.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Compress a file (PDF, JPG, PNG, WebP, MP4, MOV, WebM) down to an exact target size — e.g. "under 5MB for an upload form". FREE (daily limit applies). Returns a download URL on success; if the target is physically unreachable it fails honestly and reports the smallest achievable size. Provide EITHER source_url OR base64_content, plus a filename with extension.

    Annotations the server declares

    • title: Compress File to Target Size
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • convert_fileConvert a file from one format to another.No findings

    Why it is in this group

    • The name "convert_file" says "convert": a word for a change.
    Description, as the server wrote it
    Convert a file from one format to another. Anonymous callers get 25 free conversions per month per network; after that a free verified ChangeThisFile API key is required (25/month shared across REST + MCP; send it as Authorization: Bearer ctf_sk_…). Pass EITHER a publicly accessible URL (source_url) OR base64-encoded file contents (base64_content + source_format) — exactly one is required. Returns a temporary download URL (valid 1 hour; file deleted within 24 hours).

    Annotations the server declares

    • title: Convert File
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • do_file_jobDescribe what you want done to a file in plain language — e.g.1 finding

    Why it is in this group

    • The description's first verb is "describe": a word for reading.
    • The server marks it as not read-only (readOnlyHint: false).

    Findings

    • Warn

      The server marks "do_file_job" as not read-only (readOnlyHint: false), and its words say it reads.

      Matched text

      annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The description's first verb is "describe": a word for reading.

      What this check looks for
    Description, as the server wrote it
    Describe what you want done to a file in plain language — e.g. "translate this contract to German", "pull every table out of this PDF into Excel", "shrink this video to under 25MB", "convert this to PDF". The instruction is routed to the right job automatically; if the request is not supported yet you get an honest explanation of what is. Provide EITHER source_url OR base64_content, plus a filename with extension.

    Annotations the server declares

    • title: Do Something to a File
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • extract_tablesExtract every table from a PDF or image (PNG, JPG, WebP) into a clean multi-sheet Excel file.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Extract every table from a PDF or image (PNG, JPG, WebP) into a clean multi-sheet Excel file. The job runs immediately and returns a FREE preview of the first table plus a secure Stripe checkout link — the full .xlsx unlocks after payment ($3.99, one-time, no account needed). Provide EITHER source_url OR base64_content, plus a filename with extension.

    Annotations the server declares

    • title: Extract Tables to Excel
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • translate_fileTranslate a document into another language with the original layout and formatting preserved (DOCX, PPTX, XLSX, PDF, TXT, MD, SRT, VTT).No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Translate a document into another language with the original layout and formatting preserved (DOCX, PPTX, XLSX, PDF, TXT, MD, SRT, VTT). The job runs immediately and returns a FREE preview of the first pages plus a secure Stripe checkout link — the full translated file unlocks after payment ($4.99, one-time, no account needed). Provide EITHER source_url OR base64_content, plus a filename with extension.

    Annotations the server declares

    • title: Translate Document
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
Only reads 1Claude Code: allow
  • list_conversionsList all supported conversion routes.No findings

    Why it is in this group

    • The name "list_conversions" says "list": a word for reading.
    Description, as the server wrote it
    List all supported conversion routes. Optionally filter by source format to see what you can convert FROM a specific format.

    Annotations the server declares

    • title: List Supported Conversions
    • readOnlyHint: true
    • openWorldHint: false

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.2.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http changethisfile https://changethisfile.com/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__changethisfile__list_conversions"
    ],
    "ask": [
      "mcp__changethisfile__convert_file",
      "mcp__changethisfile__translate_file",
      "mcp__changethisfile__extract_tables",
      "mcp__changethisfile__compress_file",
      "mcp__changethisfile__do_file_job",
      "mcp__changethisfile__check_job"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as changethisfile. Review it before you use it.