返回 MCP 目录
public公开dns本地运行

mcp-server-opendal

一个基于Apache OpenDAL™的Model Context Protocol服务器实现,提供对多种存储服务的无缝访问。

article

README

🚀 Apache OpenDAL™ 模型上下文协议服务器

Apache OpenDAL™ 模型上下文协议服务器是一个基于 Apache OpenDAL™ 实现的 Model Context Protocol (MCP) 服务器,它提供了对多种存储服务的便捷访问,为用户在不同存储服务间的数据操作提供了高效解决方案。

PyPI - 版本 PyPI - Python 版本 代码检查和测试

✨ 主要特性

  • 多服务访问:可无缝访问多种存储服务,如 S3、Azure Blob 存储、Google Cloud Storage 等。
  • 文件管理:支持列出存储服务中的文件和目录,方便用户管理数据。
  • 智能读取:自动检测文本/二进制格式以读取文件内容,提升使用体验。
  • 灵活配置:基于环境变量进行配置,方便快捷。

📦 安装指南

pip install mcp-server-opendal

💻 使用示例

基础用法

claude_desktop_config.json 中添加以下内容:

{
  "mcpServers": {
    "opendal": {
      "command": "uvx",
      "args": [
        "mcp-server-opendal"
      ],
      "env": {
        "YOUR_ENV_VAR": "YOUR_ENV_VALUE"
      }
    }
  }
}

⚠️ 重要提示

需要在机器上安装 uv 工具。查看 官方文档 获取安装指南。

高级用法

通过设置环境变量来配置存储服务,每个服务都需要前缀和特定的配置选项。例如,要配置具有别名 "mys3" 的 S3 服务:

OPENDAL_MYS3_TYPE=s3
OPENDAL_MYS3_BUCKET=mybucket
OPENDAL_MYS3_REGION=us-east-1
OPENDAL_MYS3_ENDPOINT=http://localhost:9000
OPENDAL_MYS3_ACCESS_KEY_ID=myaccesskey
OPENDAL_MYS3_SECRET_ACCESS_KEY=mysecretkey

然后可以使用 readlist 命令与 mys3://path/to/file 一起使用。

💡 使用建议

mcp-server-opendal 还会从 .env 文件加载配置,可将常用配置写入该文件。

🔧 技术细节

开发命令

npx @modelcontextprotocol/inspector \
  uv run mcp-server-opendal
help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端