Model Context Protocol Server for Apache OpenDAL™
A Model Context Protocol (MCP) server implementation that provides access to various storage services via Apache OpenDAL™.
Features
- Seamless access to multiple storage services including S3, Azure Blob Storage, Google Cloud Storage, and more
- List files and directories from storage services
- Read file contents with automatic text/binary detection
- Environment variable based configuration
Installation
pip install mcp-server-opendal
Usage
Configure storage services by setting environment variables. Each service requires a prefix and specific configuration options.
For example, to configure an S3 service with alias "mys3":
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
Then you can use tool like read and list with mys3://path/to/file.
mcp-server-opendal will also load from .env.
Development
npx @modelcontextprotocol/inspector \
uv run mcp-server-opendal
Metadata
Release files for mcp-server-opendal 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mcp_server_opendal-0.2.0.tar.gz | 11.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mcp_server_opendal-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 22.2 kB
Release files / mcp_server_opendal-0.2.0.tar.gz
| Download URL | mcp_server_opendal-0.2.0.tar.gz |
|---|---|
| Size | 11.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b7062636b2d1c4b5cd319c962f0cd7f78d30a444feef5c9ae68579df0da2137e
|
|
BLAKE2b-256 checksum How to use checksums |
9590042b81e09d3de9d178c7e96a2916f38abfadc74f28e7195027c118fdaa38
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 10, 2025.
Transparency logRelease files / mcp_server_opendal-0.2.0-py3-none-any.whl
| Download URL | mcp_server_opendal-0.2.0-py3-none-any.whl |
|---|---|
| Size | 10.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
960c13a82125b1a3391c5443c20e3af27402b16ca4a52116bc9378f830515f07
|
|
BLAKE2b-256 checksum How to use checksums |
8bcb17876bc1474db8fc8910a3089727f4c8bc2c76cbf3072615ca67fd7f3c61
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Mar 10, 2025.
Transparency log