teng-lin

MCP Filebridge — AI skill for Claude Code

AI community

MCP file transfer prototype: file upload and download between remote MCP clients and servers.

How to install MCP Filebridge

This entry records only its repository, not the path inside it, so there is no exact command to give. Open teng-lin/mcp-filebridge and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What MCP Filebridge does

MCP file transfer prototype: file upload and download between remote MCP clients and servers. Works with Claude.ai, ChatGPT, and Codex via MCP Apps upload widgets and S3 presigned URLs (Python + TypeScript).

Alternatives in AI

  • AIHawk — Open-source AI browser agent: describe any task in plain language and it autonomously browses, clicks, types a 30.3k ★
  • MCP Use — The fullstack MCP framework to develop MCP Apps for ChatGPT / Claude & MCP Servers for AI Agents 9.5k ★
  • Firecrawl MCP Server — 🔥 Official Firecrawl MCP Server - Adds powerful web scraping and search to Cursor, Claude and any other LLM c 6.1k ★

README

mcp-filebridge

Move files between remote MCP clients and servers without putting binary data in JSON-RPC.

`mcp-filebridge` uses short-lived, S3-compatible presigned URLs as a file data plane. The MCP tool result carries a small upload or download offer; the bytes move separately over HTTPS. The repository provides matching Python and Node ESM implementations, an MCP Apps upload widget, a reusable OAuth provider, and three deployable conversion examples.

**Project status:** working source and deployable examples, not a published package release. Install the Python package from this checkout and import the Node modules from `ts/`. Python reports version `0.1.0`; the private Node package reports `0.0.1`.

Why this exists

Remote MCP clients can call tools over JSON-RPC, but that is a poor channel for large files. Base64 expands the payload, tool results are size-limited, and a large document returned as text consumes the model's context on every following turn.

The bridge keeps control and data separate:

                                  MCP: small JSON offers
Remote client / widget  <-------------------------------->  MCP server
          |                                                       |
          | PUT or GET raw bytes over HTTPS                       | head/get/put
          v                                                       v
                         S3 / R2 / MinIO

An upload offer supports two actors:

  • An agent sends a raw PUT to a presigned URL.
  • A human opens a short /u/ link or uses the inline MCP Apps file picker. The browser then uploads the file.

The server checks that the object arrived, performs its domain work, and returns a presigned download offer. No binary content crosses the MCP protocol.

Repository map

Path Purpose
`python/mcp_filebridge` Python S3 helper, widget, OAuth provider, conversion broker, and host render gates
`ts`