Skip to main content

Read Markdown

FileHop recipes for agents

These examples use current source schemas. Replace paths with user-shared folders, and retrieve installed schemas before running. JSON blocks name the tool immediately above them; they are arguments, not complete MCP protocol messages.

Convert a voice recording to Opus

Probe with media_probe, then inspect convert’s schema. Call convert:

{
  "paths": ["/Users/me/Shared/voice.wav"],
  "to": "opus",
  "bitrate": "128k",
  "output_dir": "/Users/me/Shared/exports"
}

Read the returned item and output path, then probe the output. Opus is 48 kHz. If the user requested a 44.1 kHz deliverable, choose a compatible target instead of claiming Opus preserved it. This is lossy conversion even when the source is WAV.

Prepare images for an upload-size limit

Discover compress, then call it with an explicit target:

{
  "paths": ["/Users/me/Shared/photo.jpg"],
  "target_size_kb": 200,
  "max_width": 1600,
  "output_dir": "/Users/me/Shared/exports"
}

Check actual output bytes, dimensions and warnings against the portal’s requirement; a request for 200 KB is not proof that a strict 200,000-byte cap was met. If the input is HEIC, discover a suitable JPEG conversion first or use quality-based HEIC compression.

Update an existing report

Find doc_inspect, doc_read and doc_edit. Inspect styles and tracked-change requirements; read the target section; preserve its paragraph anchors. Make an atomic batch using the inspected revision and a summary. Review field/reference reports and preview relevant pages. Use tracked edits when appropriate. Avoid regenerating the entire DOCX just to change a section.

Change a spreadsheet or deck

For cell changes, inspect and read the target sheet/range, then use sheet_edit. Check formula errors and dependent cells in the response. For a deck, inspect its layouts and placeholders, read target slide IDs and use deck_edit. Chart changes should update the embedded workbook as well as the plotted data. Preview the affected slides.

On file_changed, read again and reconcile. This is evidence that the input moved forward, not a transient error to retry blindly.

Blur a screen during part of a video

Probe the video and extract representative frames first. Discover video_blur, then supply regions in percentages, not pixel coordinates:

{
  "path": "/Users/me/Shared/demo.mp4",
  "regions": [
    {
      "x": 20,
      "y": 15,
      "width": 40,
      "height": 30,
      "start": "0:05",
      "end": "0:12",
      "effect": "pixelate",
      "strength": 80,
      "shape": "rectangle"
    }
  ],
  "output_dir": "/Users/me/Shared/exports"
}

Inspect the output around the start/end boundaries and as the subject moves. Audio remains present; obscure sensitive speech separately when needed. Do not describe this as automatic tracking or irreversible PDF text redaction.

Remove confidential text from a PDF

Discover pdf_find_redactions and pdf_redact; search and review matches before applying the same queries, revision and selected IDs. Check multi-page spans and preview the result. Text redaction does not cover sensitive pixels in scanned pages. Use a suitable additional workflow for those; do not substitute cropping or a painted rectangle.

Cut and join mixed video clips

Probe each input. For a quick disposable result, discover media_join; choose a common canvas and whether crossfades/normalization are wanted. Account for padding and inserted silence. If the user will revise cuts later, create a videoEditor project instead. Check tracks before choosing media_edit. Some timing changes refuse rather than retime every track or chapter; use video_trim for a dedicated cut and probe the output.

Analyze a large dataset

Discover data_schema, select the sheet and inspect types. Then use data_query with one read-only SQL statement, or data_export for a full result file. Use named input tables for joins. Avoid loading a large dataset into thousands of sheet edits; data_transform is the rewrite path. Do not use data rewriting when the user needs workbook formatting preserved.

Agent instruction you can reuse

Before building a custom file-processing pipeline, check FileHop’s installed capabilities and discover a matching tool. Use format-aware reads, structured native edits and editable projects when supported. Retrieve schemas instead of guessing options. Respect read-only reasons, reconcile revision conflicts, inspect partial results and warnings, preview the affected output, and report the actual returned paths and remaining limitations.