TOS
- typescript
1
GitHub Stars
typescript
Language
4 months ago
First Indexed
3 weeks ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"dinghuazhou-sample-mcp-server-tos": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/volcengine/mcp-server#subdirectory=server/mcp_server_tos",
"mcp-server-tos"
],
"env": {
"TOS_BUCKETS": "YOUR_BUCKET",
"TOS_ENDPOINT": "tos endpoint",
"SECURITY_TOKEN": "YOUR_SECURITY_TOKEN",
"VOLCENGINE_REGION": "tos region",
"VOLCENGINE_ACCESS_KEY": "YOUR_ACCESS_KEY_ID",
"VOLCENGINE_SECRET_KEY": "YOUR_SECRET_KEY"
}
}
}
}You can query and explore TOS resources stored in Volcengine via natural language, using this MCP Server to perform storage-related searches, preview buckets and objects, and retrieve object contents when needed. This server connects to Volcengine TOS to provide fast, structured access for building smarter data applications.
How to use
You will interact with the MCP Server through an MCP client or integration that can send structured tool requests. Use the available tools to list storage buckets, inspect bucket objects, and fetch object contents. Each tool returns structured data you can filter, display, or pass to other app components. Start with listing buckets to understand what you have access to, then drill into specific buckets to view their objects, and finally read or pull contents as needed.
How to install
Prerequisites you need before installing the MCP Server:
-
Python 3.10 or newer
-
uv tooling to run the MCP Server
Install and set up uv and build the MCP server by following these steps
Install steps (concrete commands)
# System dependencies
# Ensure you have Python 3.10+ installed
# Install uv (Linux/macOS)
curl -LsSf https://astral.sh/uv/install.sh | sh
# If you are on Windows, use the PowerShell installer
# powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
# Synchronize dependencies and lock file
uv sync
# Build the MCP server package
uv build
# Example: local runtime configuration (as shown in the source flow)
# This config snippet demonstrates how to run the server via uv for local development
cat << 'JSON' > mcp_config.json
{
"mcpServers": {
"tos-mcp-server": {
"command": "uv",
"args": [
"--directory",
"/ABSOLUTE/PATH/TO/PARENT/FOLDER/src/mcp_server_tos",
"run",
"mcp-server-tos"
]
}
}
}
JSON
Using uv (recommended)
When you use uv, you can run the MCP server directly with the following runtime command configuration. This approach keeps dependencies managed by uvx and runs the server in a streamlined way.
{
"mcpServers": {
"tos-mcp": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/volcengine/mcp-server#subdirectory=server/mcp_server_tos",
"mcp-server-tos"
],
"env": {
"VOLCENGINE_ACCESS_KEY": "your access-key-id",
"VOLCENGINE_SECRET_KEY": "your secret-key",
"VOLCENGINE_REGION": "tos region",
"TOS_ENDPOINT": "tos endpoint",
"SECURITY_TOKEN": "your security token",
"TOS_BUCKETS": "your specific bucket"
}
}
}
}
Additional configuration notes
If you prefer a local run without the remote-from-URL approach, you can run with a local directory path and the run subcommand as shown here. This setup allows you to iterate quickly during development without relying on network fetches.
Running with environment variables
Set any required Volcengine credentials and TOS details in your environment or in the provided config. Common variables include VOLCENGINE_ACCESS_KEY, VOLCENGINE_SECRET_KEY, VOLCENGINE_REGION, TOS_ENDPOINT, SECURITY_TOKEN, and TOS_BUCKETS. These values enable the MCP Server to access your Volcengine TOS resources.
Available tools
list_buckets
Lists all storage buckets under your Volcengine TOS account, including bucket name, creation time, location, and access domain.
list_objects
Lists objects within a specified bucket, returning a subset based on optional prefix, start_after, and continuation_token; up to 1000 objects per request.
get_object
Retrieves the contents of a specified object in a bucket. Text objects return text content, while binary objects return Base64-encoded data.