文件上传服务器

MCP Upload Server是一个Python实现的文件上传服务器,可将文件上传至可配置的目录,并可直接在VS Code中注册使用。

  • by asang1coding
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 asang1coding/mcp_upload

使用说明

MCP上传服务器

MCP上传服务器是模型上下文协议(MCP)服务器的Python实现,它将文件上传到可配置的目录中,可以直接在VS代码中注册。

特性

  • 显示MCP工具 upload_file 将内容写入配置的上传根目录
  • 上传根可以通过CLI或 MCP_UPLOAD_DIR 环境变量
  • 接受 base64 二进制文件或原始文件 utf-8 文本有效载荷
  • 已准备好与VS代码模型上下文协议扩展集成

安装

python -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install --upgrade pip
pip install -e .

运行服务器

python -m mcp_upload_server --upload-dir "d:/data/uploads"

如果 --upload-dir 省略了从中读取的值 MCP_UPLOAD_DIR,回落到 ./uploads 相对于工作目录。

VS代码配置示例

将以下代码段添加到 .vscode/settings.json (或您的用户设置)注册服务器:

{
	"modelContextProtocol.servers": {
		"mcp-upload": {
			"command": "mcp-upload-server",
			"args": [],
			"env": {
				"MCP_UPLOAD_DIR": "d:/data/uploads"
			}
		}
	}
}

确保在中配置了路径 MCP_UPLOAD_DIR 可由VS Code进程写入。

MCP工具合同

  • upload_file
    • filename:无相对路径 .. 段或绝对前缀
    • content:文件有效载荷;Base64字符串 encoding=base64,否则为纯文本
    • encoding:要么 base64 (默认)或 utf-8
    • overwrite:设置为 true 替换现有文件

成功后,该工具将返回写入文件的绝对路径。