MCP File Upload Sample
Allows uploading files to MinIO (S3-compatible storage) via MCP tools, supporting Base64-encoded file upload and optional curl command generation for HTTP multipart upload.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MCP File Upload SampleUpload the image encoded in the Base64 string to my MinIO bucket."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP File Upload Sample
MCP 経由でファイルを MinIO(S3 互換)にアップロードするサンプルです。MCP 実装は公式 TypeScript SDK を使用しています。
サーバーはクライアントがペイロードとして送り込んだデータ(Base64 または multipart)のみを処理し、ローカルディスクのファイルを読み出すことはありません。
前提
Node.js 20+
Yarn 1.x(
packageManager: yarn@1.22.22)Docker(MinIO 用)
動作確認済みバージョン
ソフトウェア | バージョン |
Claude Desktop | 0.9.5 |
Claude Code | 2.1.80 |
| 1.27.1 |
Related MCP server: minio_mcp
セットアップ
MinIO の起動
docker compose up -dAPI:
http://127.0.0.1:9000コンソール:
http://127.0.0.1:9001(認証情報はdocker-compose.ymlのMINIO_ROOT_*)
アプリの起動
yarn install
yarn build
# サーバー起動
yarn dev環境変数
.env.example を参考に .env を作成してください。デフォルト値が設定されているため、MinIO をそのまま使う場合は .env なしでも動作します。
エンドポイント(HTTP モード)
パス | 用途 |
| ヘルスチェック |
| HTTP マルチパートアップロード(フィールド名 |
| MCP(Streamable HTTP) |
MCP ツール
ツール | デフォルト | 用途 |
| 有効 | Base64 エンコードされたファイルを MinIO にアップロード |
| コメントアウト | HTTP |
upload_via_curl を有効にするには src/mcpServer.ts の registerUploadViaCurl(server, config) のコメントを外してビルドしてください。
Claude Desktop の設定
claude_desktop_config.json に Stdio 設定を記述します。
{
"mcpServers": {
"file-upload-sample": {
"command": "/Users/YOURNAME/.nvm/versions/node/v22.x.x/bin/node",
"args": [
"/Users/YOURNAME/project/mcp-file-upload-sample/dist/index.js",
"--stdio"
],
"env": {
"MINIO_ENDPOINT": "http://127.0.0.1:9000",
"MINIO_ROOT_USER": "minioadmin",
"MINIO_ROOT_PASSWORD": "minioadmin"
}
}
}
}commandには Node.js 20+ のフルパスを指定してください(command -v nodeで確認)。argsのスクリプトパスには~を使わない絶対パスを指定してください(Desktop はシェルを経由しないため~が展開されません)。パスの取得: リポジトリルートで
echo "$(pwd -P)/dist/index.js"を実行し、出力をそのままargs[0]に使います。
Claude Code の設定
claude mcp add file-upload-sample \
-s user \
-e MINIO_ENDPOINT=http://127.0.0.1:9000 \
-e MINIO_ROOT_USER=minioadmin \
-e MINIO_ROOT_PASSWORD=minioadmin \
-- node /Users/YOURNAME/project/mcp-file-upload-sample/dist/index.js --stdioclaude mcp list # 一覧
claude mcp remove file-upload-sample # 削除注意
サンプル用途のコードです。オープンな環境では使わないようにしてください。
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/chanrute/mcp-file-upload-sample'
If you have feedback or need assistance with the MCP directory API, please join our Discord server