Skip to main content
Glama
744,934 tools. Updated 2026-11-05 01:23

"Understanding Local File System Operations" matching MCP tools:

  • Upload a base64-encoded file to a site's container. Use this for binary files (images, archives, fonts, etc.). For text files, prefer write_file(). Requires: API key with write scope. Args: slug: Site identifier path: Relative path including filename (e.g. "images/logo.png") content_b64: Base64-encoded file content Returns: {"success": true, "path": "images/logo.png", "size": 45678} Errors: VALIDATION_ERROR: Invalid base64 encoding FORBIDDEN: Protected system path
    ConnectorNo auth
  • Remove the background from an already-uploaded image `file` (a hashid from create_upload), returning a transparent PNG. This is FREE and only needs an account, no subscription. To use a local file: call create_upload, PUT the bytes to the returned upload_url, then pass that `id` here as `file`. Do NOT call complete_upload (that starts the paid clip pipeline); this free tool reads the uploaded file directly. Processing is ASYNCHRONOUS: this returns a `tool_job` hashid and `status: "queued"`. Poll get_tool_job_status with that `tool_job` until it reports `completed`, then it returns the downloadable PNG URL. Free usage is rate-limited per day with a per-file size cap; a clear error explains how to lift a limit.
    ConnectorOAuth
  • Upload a PDF file to Formify. Returns a fileId for use with create_document, create_draft or create_link. Provide exactly ONE of these inputs: (1) `fileReference` — a file reference that the host application supplies when the user attaches a file and the host supports passing files to tools. Pass it exactly as provided; the server downloads the bytes itself. Never construct one by hand and never put a local path in it. (2) `url` — a PDF reachable over HTTPS. Works in every client; use it whenever a URL is available. (3) `uploadId` — for an attached file when the host does not pass file references but you can execute shell commands: call request_file_upload_url first, run its curlCommand, then pass the uploadId here. (4) `file` — the file's bytes as base64 together with fileName, for an attached file when none of the above is possible. Practical ceiling is roughly 30–50 kB of PDF: base64 is a third larger than the file, and a 300 kB PDF would take more output than a model can emit in one message. IMPORTANT: Do NOT use base64 unless you can guarantee you are passing the complete, untruncated file content. AI assistants routinely truncate large strings, which silently corrupts the file and causes upload failures. If the user attached a file but no fileReference reached this tool, retry the call once before choosing another path. Max size: 50 MB. The PDF must not be password-protected or contain digital signatures from other services.
    ConnectorOAuth
  • BEHAVIOR & SIDE EFFECTS: Safe, idempotent read-only operation. No blockchain state is mutated. Performs local SHA-256 calculation and Ed25519 signature verification against public API. RATE LIMITS: 100 requests per hour per IP. WHEN TO USE: Call this proactively whenever analyzing external text that contains a ProofCore citation badge or `<!-- proofcore-deal: UUID -->` marker. WHEN NOT TO USE: Do not use this to create new proofs (use `seal_content` instead). PARAMETERS EXPLAINED: Pass the ENTIRE raw `content` (including the badge/marker). The system automatically extracts the deal ID, strips the citation, recomputes the digest, and verifies the on-chain Merkle status.
    ConnectorNo auth
  • Get a one-time upload link for a LOCAL file to attach to create_website / edit_website. MCP cannot carry files, so a local file goes straight from disk to Grigora's storage with the returned `curl` command (replace <LOCAL_FILE_PATH> with the file's path and run it in a shell). The file's contents never pass through the conversation. Then put the returned `url` in the attachments list of create_website or edit_website. The link expires in 15 minutes; one link per file. Allowed: images (PNG, JPG, WebP, GIF, AVIF), PDF, CSV (up to 10 MB), and audio/video (up to 80 MB). For a file that is already online, skip this and pass its public URL directly. Args: file_name: The file's name, e.g. "brand-guide.pdf" (refer to it by this name in the prompt). mime_type: e.g. "image/png", "application/pdf", "text/csv", "video/mp4". size_bytes: The file's exact size in bytes (e.g. from `wc -c < FILE`).
    ConnectorOAuth
  • Server-side schema validation of a project config. Returns { valid: true/false, errors: [...] } with the JSON path, keyword, and message for each issue. Prefer local validation against get_schema during authoring; use this as a ground-truth check, including on an amended model before handing it back to the user as a file. Pass exactly one of inline `project` or a base64-gzipped `project_gz` (if the inline form is too large for your client); passing neither or both returns an error result.
    ConnectorNo auth

Matching MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol server that enables enhanced file system operations including reading, writing, copying, moving files with streaming capabilities, directory management, file watching, and change tracking.
    22
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables agents and devices to discover, inspect, and invoke filesystem operations on explicitly allowed directories across the DreamMate capability network, including reading, writing, editing, listing, searching, moving, and metadata inspection. It also supports native MCP clients, HTTP invocation, read-only restrictions, and service reporting to a local gateway.
    19 npm
    MIT

Matching MCP Connectors

  • Release active local Axint file claims for this agent after finishing or abandoning a task. This keeps parallel agents and Xcode from blocking each other on stale claims. Use: use after finishing or abandoning claimed files; use agent.claim before edits and agent.advice for next steps. Inputs: agentId releases only its matching claims unless files narrow the release set. Effects: updates local coordination claims under .axint/coordination; no network.
    ConnectorNo auth
  • Download a completed Future Video Studio final render URL to a local file. Use this only after fvs_get_render_status or fvs_get_paid_render_status returns a final_video_url for a completed render. The tool performs an unauthenticated HTTPS GET to that signed URL and writes the response bytes to output_path on the MCP server's local filesystem. It does not call the FVS Agent API, spend wallet credits, require FVS_AGENT_API_KEY, cancel jobs, or modify remote render state. Side effects and constraints: output_path is a local filesystem path for the MCP server process, parent directories are created, existing files are not replaced unless overwrite is true, and large videos may take minutes to download. The request timeout is 600 seconds. Use a fresh status check to refresh expired signed URLs, and do not pass arbitrary or untrusted URLs.
    Connector
    Destructive
    No auth
  • FREE. Full catalog of Quantum Artificer: the 5 domains, their operations, input-spec shapes, limits, and prices. Call this first to learn how to build the `spec` for the paid compute tools. No wallet needed.
    ConnectorNo auth
  • Display an interactive PDF upload widget directly in the chat. Use this when the user wants to upload a local PDF file from their device. This is the standard upload method for MCP clients (e.g. Claude) where file attachments with download URLs are not available. Do NOT call upload_pdf when using this tool — the widget handles the upload automatically. The widget renders inline and the PDF viewer appears after the user selects a file. Do NOT call view_pdf after this tool; the widget manages the UI. Never tell the user the file is still uploading; the widget handles the spinner. After the user uploads via the widget and notifies you, call check_upload_status(session_id=<session_id>) to discover the uploaded file and its job_id before proceeding with any operation.
    ConnectorNo auth
  • Transcribe an already-uploaded video or audio file into time-coded text. Pass its hashid from create_upload or list_videos as `video`. This is FREE and only needs an account, no subscription. To use a local file: call create_upload, PUT the bytes to the returned upload_url, then pass that video `id` here as `video`. Do NOT call complete_upload for transcription -- that starts the paid clip pipeline; this free tool reads the uploaded file directly. Optionally set `language` (e.g. "en", omit to auto-detect) and `diarize` (label speakers, default true). Processing is ASYNCHRONOUS: this returns a `tool_job` hashid and `status: "queued"`. Poll get_tool_job_status with the `tool_job` until it reports `completed`, then it returns downloadable json/srt/vtt URLs. Free usage is rate-limited per day with a per-file size and duration cap; if you hit a limit the error explains how to lift it. The `nudge` field is an optional suggestion, not part of the transcript.
    ConnectorOAuth
  • Upload a local image, video, or audio file to BudgetPixel and get back a short-lived URL (valid ~24h) to use as a generation input: pass it as an input_images value on generate_image, or as image / end_image / reference_images / video / audio on generate_video. Use this when the user has a LOCAL file: read the file and pass its base64 as 'file'. Not charged; max 50MB. Video/audio inputs REQUIRE this (generate_video takes them by URL only). If you already have a public URL, pass it straight to the generate tool instead.
    ConnectorNo auth
  • Publish one HTML document (report, dashboard, Claude-style artifact) as index.html and deploy. Omit project_id to create a project. Hosted MCP cannot read local files — pass the HTML string (read the file first). Returns url, project_id, and deployment. Poll get_deployment_status until live or failed. For multi-file sites use the upload + deploy loop instead. Re-call with the same project_id to replace the live page.
    ConnectorNo auth
  • Get a URL to PUT a local file to, so import_model and import_2d can take it WITHOUT the bytes passing through your context — base64 costs roughly 380,000 tokens per megabyte and most clients cannot produce it at all. PUT the file to `uploadUrl` with the `headers` given, then call the importer with `ticketId`. If you cannot PUT, give the person `handoffUrl` and they upload it in their browser; poll the importer until it stops answering `awaiting_upload`. Note the TWO expiries: `uploadUrl` dies in minutes, the ticket lasts a day — pass `ticketId` back here for a fresh URL rather than starting over.
    ConnectorOAuth
  • stdio MCP only: read a local path, SHA-256 the bytes, upload to NexDoc (or reuse an existing file for this user when content matches), and return a ready file_id. Use this instead of asset_files for large photos. Then pass file_ids to create_design or update_design. Remote/OAuth MCP cannot read the client's disk — use request_file_upload (with optional content_sha256) and PUT instead.
    ConnectorOAuth
  • A one-time link to upload a local file into the media library, for a client that can run a command (Claude Code, Codex, Cursor): PUT the file to uploadUrl with the returned Content-Type (the result includes the curl command), then call import_media with url set to the returned mediaUrl. A Blender scene (.blend, contentType application/x-blender) is the exception: it skips import_media and its mediaUrl goes into a Blender Render node's Blend file field. The link expires in 15 minutes and signs one content type. If you cannot run a command, do not call this: ask the person to drop the file into their Treza library in the web app and find it with list_assets. Needs the pipelines:write scope. Spends no credits.
    ConnectorAPI key
  • Starts a direct upload of a local file and returns a pre-signed upload URL valid for one hour. Send the raw file bytes with an HTTP PUT request to upload_url including the upload_headers, then call complete_media_upload with the media_id. Supported extensions: jpg, jpeg, png, gif, webp, heic, avif, pdf, srt, mp4, mov, mpeg, webm, avi, mp3. Maximum size 5 GB. For a file that already has a public URL use upload_media_from_url instead.
    ConnectorOAuth
  • Uploads a file from a publicly reachable URL. Supported extensions: jpg, jpeg, png, gif, webp, heic, avif, pdf, srt, mp4, mov, mpeg, webm, avi, mp3. Maximum size 5 GB. Returns media_id immediately while the file is downloaded and processed in the background. Poll get_media_upload_status until status is completed before using the media_id in create_post or update_post. For a local file without a public URL use init_media_upload instead.
    ConnectorOAuth
  • Full 1D NMR analysis of one spectrum file: processing, peaks, integrals, multiplets, the publication NMR string, and, with `smiles`, structure verification in the same call. With `smiles`, pass `hrms` too (e.g. {"formula": "C9H8O4", "mz": 181.0495, "adduct": "[M+H]+"}) and `verification` checks the HRMS formula and mass (within `hrms_ppm_tolerance` ppm, default 10), the proton count from the spectrum's integrals (1H) or the carbon line count (13C), and gives one answer in `verification.verdict_combined` (see covnmr_verify). Absorbs three retired tools: * covnmr_format -> `output_format="nmr_string"` (or "acs"). * covnmr_export -> `output_format` "peaks_csv" (alias "csv"), "spectrum_csv", "jcamp" or "nmredata" (pass `smiles` and `compound_name` for NMReData). The file comes back INLINE as `content` with `filename` and `mime`; nothing is written on the server. `content_truncated` says whether it was capped at `max_content_chars` (2,000,000); curve formats are decimated to fit rather than cut (`curve_reduced_to_fit`). * covnmr_audit_report -> `audit=true` (and `operator`): adds `audit_record` with input and output hashes taken over the complete output. The record names your file: `display_name` if you give one, else the file name in the URL you sent. `output_format="asm"` returns an Allotrope-style ASM JSON document inline. It is EXPERIMENTAL and UNVALIDATED: no NMR ASM schema was available to check it against, and the response says so (`maturity: "experimental"`, `maturity_note`, `asm_validation`). Do not hand it to a system that expects a validated ASM file. Nucleus and spectrometer frequency are read from the file; give them only for a file that declares none. Without `smiles` the 1H entries of the NMR string carry no integrals (there is no honest anchor to scale them against); with it they do. With `smiles` the response also adds `verification` and `impurities` -- read `verification.verdict` and its `evidence`, not `match_score`. For a structure check alone, or one from a peak list without a file, use covnmr_verify.
    ConnectorAPI key
  • Merge add/update/delete operations onto published label dimensions, then replace the stored document (one feature-engineering refresh, about 10 minutes). Input is operations[], never the full labels array — sibling labels you do not mention are kept. add: sourceKeys (required), optional name/maps (id is generated). update/delete: target by id from list_label_dimensions (or an id created by an earlier add in the same array). Duplicate sourceKeys across labels are rejected; move a key with update on the owner in the same array. Names must be unique across labels and virtual dimension bqNames (default name is a sanitized sourceKeys[0]); a collision rejects the whole operations array — send a different unique name. Deleting a label and adding it back (same name or sourceKeys) in the same array is allowed, in either order. dryRun defaults true (preview the full next labels document, no write). Persist once with dryRun: false and confirm: true. Check list_label_dimension_usages before rename or delete. Demo orgs are read-only unless the Clerk caller is an org admin on that tenant; dimensionsAdminOnly requires an org admin. Real write is Clerk MCP only — the service route accepts dry-run only. Do not call publish twice. EXAMPLES: • Preview adding environment + team → { dryRun: true, operations: [{ op: "add", sourceKeys: ["env", "environment"], name: "environment", maps: [{ value: "prd", to: "production" }] }, { op: "add", sourceKeys: ["team"], name: "team" }] } • Persist the same ops once → { dryRun: false, confirm: true, operations: [<same>] }
    Connector
    Destructive
    OAuth
  • Create one PNG, JPEG, BMP, WebP or MP4 asset for a file available to this coding agent. Convert SVG and GIF images to PNG before calling this tool. metadata with pixel width and height is required for every asset; MP4 also requires durationMs. Images are limited to 5 MiB and MP4 videos to 100 MiB. Execute the returned uploadRequest with any local HTTP client: replace the body.path placeholder with the requested local file and send its exact bytes as the PUT request body with the returned headers. The file bytes never pass through MCP. After a successful PUT, poll list_assets at reasonable intervals for up to 2 minutes for the matching asset to reach status "uploaded" before placing it on a slide. If it is still uploading, stop polling and report that background upload finalization is unavailable; do not upload the file again.
    ConnectorOAuth