Skip to content

push_files / create_or_update_file have no way to write large content without inlining it in the tool call #3547

Open

Description

@TheAviv

push_files and create_or_update_file require the full file content inline in the tool call, with no option for a file-by-reference upload or chunked/streaming write for large files.

Repro:

  • Call push_files with one file whose content is on the order of 2-3 MB of text.
  • The call either fails or risks truncation because the entire content must be serialized into the tool call's JSON payload.

Expected: some way to push large files without having to pass the complete content inline in a single call, e.g. a multipart/chunked write, or accepting a pre-uploaded blob SHA (the REST API's own git blob + tree + commit flow would allow this, but there is no MCP tool here that exposes creating a blob from a stream or from a size that exceeds a reasonable tool-call payload).

Actual: the only way to commit large text content through this MCP server is to pass it whole inline, which breaks down well before typical repo file sizes (multi-MB text exports, long logs, etc.).

Ask: expose a way to create a blob/commit for large content without it having to round-trip through a single tool call's inline payload, for example a tool that accepts a local-file-style streamed upload, or document a supported size ceiling so callers know when to split rather than discovering it empirically.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions