mcpField
F
File Store MCP Server

File Store MCP Server

本地服务
github.com/sjzar文件与存储879 周前更新

关于 File Store MCP Server

File Store MCP Server 通过统一接口将文件上传到云存储,适用于需要在线提供本地文件、剪贴板文件或 URL 文件的应用,并支持多种存储服务及 STDIO、SSE 模式。

主要功能

  1. 01支持多种云存储服务
  2. 02上传本地、剪贴板和 URL 文件
  3. 03生成预签名访问 URL
  4. 04配置 URL 有效期和自定义域名
  5. 05支持 STDIO 与 SSE 模式

适用场景

  1. 01将本地文档上传后在线分析
  2. 02无需本地保存即可分享剪贴板文件
  3. 03上传给定网页链接中的文件
  4. 04通过自定义域名或 CDN 提供存储文件

MCP 相关

该 MCP 服务提供 `upload_files`、`upload_clipboard_files` 和 `upload_url_files` 工具,将文件上传到已配置的存储服务。支持通过 STDIO 或 SSE 运行。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

File Store MCP 服务

File Store MCP

支持多个云服务提供商的文件存储服务

Go Report Card GoDoc GitHub release GitHub license

功能

  • 支持多个云存储服务提供商
  • 统一的文件上传 API
  • 生成预签名 URL,实现安全访问
  • 支持 AWS S3、阿里云 OSS、腾讯云 COS、七牛云和 GitHub
  • 通过环境变量轻松配置
  • 可自定义 URL 过期时间
  • 支持自定义域名和 CDN
  • 双模式运行:stdio 模式用于直接集成,SSE 模式用于服务端运行

快速开始

安装
go install github.com/sjzar/file-store-mcp@latest
基本用法
  1. 为所选存储服务提供商设置所需的环境变量
  2. 以 stdio 模式(默认)运行,以便与其他应用直接集成:
    file-store-mcp
    
  3. 或以 SSE 服务模式运行,进行基于 HTTP 的集成:
    file-store-mcp --sse-port 8080
    

MCP 工具

File Store MCP 提供三个用于将文件上传到云存储的工具:

1. 上传文件工具(upload_files)

将本地文件上传到云存储,并返回 HTTP URL。

使用场景:用户提到本地文件路径,或需要在线访问其文件时。适用于分析 PDF 内容、在绘图任务中引用本地图片,或处理任何本地文件。

参数:

  • paths:要上传的本地绝对文件路径数组(必填)

示例:

{
  "tool": "upload_files",
  "params": {
    "paths": ["/path/to/file1.pdf", "C:/Users/user/Documents/file2.jpg"]
  }
}
2. 上传剪贴板文件工具(upload_clipboard_files)

将剪贴板中的文件上传到云存储,并返回 HTTP URL。

使用场景:仅当用户明确要求上传剪贴板中的文件时使用。适用于用户希望分享或处理剪贴板内容,但不想先将其保存到本地的情况。

参数:无需参数

示例:

{
  "tool": "upload_clipboard_files"
}
3. 上传 URL 文件工具(upload_url_files)

从提供的 URL 下载文件并上传到云存储,随后返回新的 HTTP URL。

使用场景:用户提供了希望处理或分析的文件链接时。适用于用户引用需要纳入当前工作流的外部文件的情况。

参数:

  • urls:指向要下载并上传的文件的 URL 数组(必填)

示例:

{
  "tool": "upload_url_files",
  "params": {
    "urls": ["https://example.com/file1.pdf", "https://another-site.org/image.jpg"]
  }
}

存储服务提供商

File Store MCP 支持以下存储服务提供商:

  • AWS S3(以及 Cloudflare R2 等兼容服务)
  • 阿里云 OSS
  • 腾讯云 COS
  • 七牛云存储
  • GitHub 仓库

配置

通用配置
环境变量说明默认值
FSM_STORAGE_TYPE存储服务提供商类型(s3、oss、cos、qiniu、github)empty
AWS S3 配置

设置 FSM_STORAGE_TYPE=s3 以使用 AWS S3 或兼容服务。

环境变量描述必填默认值
FSM_S3_BUCKETS3 存储桶名称是-
FSM_S3_REGIONAWS 区域是-
FSM_S3_ENDPOINTS3 兼容服务的自定义端点否AWS S3 端点
FSM_S3_ACCESS_KEYAWS 访问密钥 ID是-
FSM_S3_SECRET_KEYAWS 秘密访问密钥是-
FSM_S3_SESSIONAWS 会话令牌否-
FSM_S3_URL_EXPIRATION预签名 URL 的过期时间(秒)否604800(7 天)

S3 兼容服务说明:

  • 对于 Cloudflare R2:将 FSM_S3_ENDPOINT 设置为你的 R2 端点 URL
  • 对于其他 S3 兼容服务:配置相应的端点 URL
Alibaba Cloud OSS 配置

设置 FSM_STORAGE_TYPE=oss 以使用 Alibaba Cloud OSS。

环境变量描述必填默认值
FSM_OSS_ENDPOINTOSS 端点是-
FSM_OSS_ACCESS_KEYOSS 访问密钥 ID是-
FSM_OSS_SECRET_KEYOSS 访问密钥是-
FSM_OSS_BUCKETOSS 存储桶名称是-
FSM_OSS_DOMAINOSS 存储桶的自定义域名否-
FSM_OSS_URL_EXPIRATION签名 URL 的过期时间(秒)否604800(7 天)
Tencent Cloud COS 配置

设置 FSM_STORAGE_TYPE=cos 以使用 Tencent Cloud COS。

环境变量描述必填默认值
FSM_COS_BUCKETCOS 存储桶名称是-
FSM_COS_REGIONCOS 区域是-
FSM_COS_APP_IDTencent Cloud App ID是-
FSM_COS_ACCESS_KEYSecret ID是-
FSM_COS_SECRET_KEYSecret Key是-
FSM_COS_DOMAINCOS 存储桶的自定义域名否-
FSM_COS_USE_HTTPS是否使用 HTTPS否true
FSM_COS_USE_ACCELERATE是否使用全球加速否false
FSM_COS_URL_EXPIRATION预签名 URL 的过期时间(秒)否604800(7 天)
Qiniu Cloud Storage 配置

设置 FSM_STORAGE_TYPE=qiniu 以使用 Qiniu Cloud Storage。

环境变量描述必填默认值
FSM_QINIU_ACCESS_KEYQiniu 访问密钥是-
FSM_QINIU_SECRET_KEYQiniu 秘密密钥是-
FSM_QINIU_BUCKETQiniu 存储桶名称是-
FSM_QINIU_DOMAINQiniu 存储桶的自定义域名(必填)是-
FSM_QINIU_REGION存储区域否z0(华东)
FSM_QINIU_URL_EXPIRATION签名 URL 的过期时间(秒)否604800(7 天)

可用的 Qiniu 区域:

  • z0:华东
  • z1:华北
  • z2:华南
  • na0:北美
  • as0:东南亚
GitHub 仓库配置

设置 FSM_STORAGE_TYPE=github 以使用 GitHub 作为存储提供商。

环境变量描述必填默认值
FSM_GITHUB_TOKENGitHub 个人访问令牌是-
FSM_GITHUB_OWNER仓库所有者是-
FSM_GITHUB_REPO仓库名称是-
FSM_GITHUB_BRANCH分支名称否main
FSM_GITHUB_PATH仓库内的文件存储路径否-
FSM_GITHUB_DOMAINGitHub 内容的自定义域名否-

GitHub 令牌权限:

  • 对于私有仓库,令牌必须具有 repo 范围
  • 对于公开仓库,public_repo 范围即可

高级用法

使用自定义域名

对于所有存储提供商,你都可以配置自定义域名来提供文件服务。如果你的存储前面有 CDN 服务,这尤其有用。

Alibaba Cloud OSS 使用自定义域名的示例:

FSM_STORAGE_TYPE=oss
FSM_OSS_BUCKET=my-bucket
FSM_OSS_ENDPOINT=oss-cn-hangzhou.aliyuncs.com
FSM_OSS_ACCESS_KEY=your-access-key
FSM_OSS_SECRET_KEY=your-secret-key
FSM_OSS_DOMAIN=cdn.example.com
调试模式

启用调试模式以输出更详细的日志:

file-store-mcp --debug

开发

从源代码构建
git clone https://github.com/sjzar/file-store-mcp.git
cd file-store-mcp
go build

许可证

本项目采用 Apache License 2.0 许可,详情请参阅 LICENSE 文件。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。