Skip to main content
Glama
Akave MCP Server

Akave MCP Server

by akave-ai

Akave MCP Server

A Model Context Protocol (MCP) server that enables AI models to interact with Akave's S3-compatible storage. This server provides a set of tools for managing your Akave storage buckets and objects through AI models like Claude and local LLMs.

What is MCP?

The Model Context Protocol (MCP) is an open protocol that standardizes how applications provide context to Large Language Models (LLMs). Think of MCP like a USB-C port for AI applications - it provides a standardized way to connect AI models to different data sources and tools.

Related MCP server: MinIO MCP Server

Features

  • List and manage buckets

  • Upload, download, and manage objects

  • Generate signed URLs for secure access

  • Support for both Claude and local LLMs (via Ollama)

  • Simple configuration through JSON

Prerequisites

  • Node.js 16+

  • Access to an Akave account with:

    • Access Key ID

    • Secret Access Key

    • Endpoint URL

  • For local LLM support:

    • Go 1.23 or later

    • Ollama installed

Quick Start

Create a configuration file (e.g., mcp.json):

{
  "mcpServers": {
    "akave": {
      "command": "npx",
      "args": [
        "-y",
        "akave-mcp-js"
      ],
      "env": {
        "AKAVE_ACCESS_KEY_ID": "your_access_key",
        "AKAVE_SECRET_ACCESS_KEY": "your_secret_key",
        "AKAVE_ENDPOINT_URL": "your_endpoint_url"
      }
    }
  }
}

Usage with Claude Desktop

  1. Download and install Claude for Desktop (macOS or Windows)

  2. Open Claude Desktop Settings:

    • Click on the Claude menu

    • Select "Settings..."

    • Click on "Developer" in the left-hand bar

    • Click on "Edit Config"

  3. This will create/update the configuration file at:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

    • Windows: %APPDATA%\Claude\claude_desktop_config.json

  4. Add the Akave MCP server configuration to the file:

{
  "mcpServers": {
    "akave": {
      "command": "npx",
      "args": [
        "-y",
        "akave-mcp-js"
      ],
      "env": {
        "AKAVE_ACCESS_KEY_ID": "your_access_key",
        "AKAVE_SECRET_ACCESS_KEY": "your_secret_key",
        "AKAVE_ENDPOINT_URL": "your_endpoint_url"
      }
    }
  }
}
  1. Restart Claude Desktop

  2. You should see a slider icon in the bottom left corner of the input box. Click it to see the available Akave tools.

Usage with Local LLMs (Ollama)

  1. Install MCPHost:

go install github.com/mark3labs/mcphost@latest
  1. Start MCPHost with your preferred model using the same configuration file:

# Using default config location
mcphost -m ollama:mistral

# Or specify a custom config file
mcphost -m ollama:mistral --config /path/to/your/mcp.json

# For debugging
mcphost --debug -m ollama:mistral --config /path/to/your/mcp.json

You can use any Ollama model, for example:

  • ollama:mistral

  • ollama:qwen2.5

  • ollama:llama2

Available Tools

The server provides the following MCP tools:

  1. list_buckets: List all buckets in your Akave storage

  2. list_objects: List objects in a bucket with optional prefix filtering

  3. get_object: Read object contents from a bucket

  4. put_object: Write a new object to a bucket

  5. get_signed_url: Generate a signed URL for secure access to an object

  6. update_object: Update an existing object

  7. delete_object: Delete an object from a bucket

  8. copy_object: Copy an object to another location

  9. create_bucket: Create a new bucket

  10. delete_bucket: Delete a bucket

  11. get_bucket_location: Get the region/location of a bucket

  12. list_object_versions: List all versions of objects (if versioning enabled)

Example Usage

Listing Buckets

# The AI model will automatically use the list_buckets tool
List all my buckets

Reading a File

# The AI model will use the get_object tool
Read the file 'example.md' from bucket 'my-bucket'

Uploading a File

# The AI model will use the put_object tool
Upload the content 'Hello World' to 'greeting.txt' in bucket 'my-bucket'

Troubleshooting

Common Issues

  1. Connection Refused

    • Ensure your Akave credentials are correct in the MCP configuration

    • Check if the endpoint URL is accessible

    • Verify your network connection

  2. File Reading Issues

    • For markdown files, ensure proper encoding

    • For binary files, use appropriate tools

    • Check file permissions

  3. Local LLM Issues

    • Ensure Ollama is running

    • Verify model compatibility

    • Check MCPHost configuration

    • Use --debug flag for detailed logs

  4. Claude Desktop Issues

    • Check logs at:

      • macOS: ~/Library/Logs/Claude/mcp*.log

      • Windows: %APPDATA%\Claude\logs\mcp*.log

    • Ensure Node.js is installed globally

    • Verify the configuration file syntax

    • Try restarting Claude Desktop

Contributing

Contributions are welcome! Please feel free to submit an issue or a pull request.

Support

For issues and feature requests, please create an issue in the GitHub repository.

Available Tools

13 tools
copy_objectC

Copy an object to another bucket/key

Inputs: destinationBucket (required), destinationKey (required), sourceBucket (required), sourceKey (required).

create_bucketC

Create a new bucket

Inputs: bucket (required).

delete_bucketC

Delete a bucket

Inputs: bucket (required).

delete_objectC

Delete an object from a bucket

Inputs: bucket (required), key (required).

fetch_headersC

Fetch headers/metadata for an object

Inputs: bucket (required), key (required).

get_bucket_locationC

Get the region/location of a bucket

Inputs: bucket (required).

get_objectC

Get object content from a bucket

Inputs: bucket (required), key (required).

get_signed_urlC

Get a signed URL for an object

Inputs: bucket (required), key (required), expiresIn.

list_bucketsB

List all buckets in Akave storage

Inputs: no named parameters.

list_objectsC

List objects in a bucket

Inputs: bucket (required), prefix.

list_object_versionsC

List all versions of objects in a bucket (if versioning enabled)

Inputs: bucket (required), prefix.

put_objectC

Put object into a bucket

Inputs: body (required), bucket (required), key (required).

update_objectC

Update (overwrite) an object in a bucket

Inputs: body (required), bucket (required), key (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.4/5.0

    Scored across 13 tools

    Disambiguation5/5

    Every tool has a clearly distinct purpose targeting specific resources and actions in the Akave storage domain. For example, copy_object, put_object, and update_object handle different write operations, while get_object and fetch_headers serve separate read purposes. No tools appear to overlap in functionality, making selection straightforward for an agent.

    Naming Consistency5/5

    All tools follow a consistent verb_noun naming pattern with snake_case throughout, such as create_bucket, delete_object, and list_objects. This uniformity enhances readability and predictability, allowing agents to easily infer tool functions from their names without confusion from mixed conventions.

    Tool Count5/5

    With 13 tools, the server is well-scoped for managing Akave storage operations, covering essential CRUD and lifecycle tasks for buckets and objects. Each tool earns its place by addressing specific needs like versioning, signed URLs, and metadata, without being overly sparse or bloated.

    Completeness5/5

    The tool set provides complete CRUD and lifecycle coverage for the Akave storage domain, including bucket management (create, delete, list, location) and object handling (get, put, update, delete, copy, signed URLs, headers, versions). There are no obvious gaps, ensuring agents can perform all core workflows without dead ends.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      D
      maintenance
      Enables interaction with S3-compatible storage services like AWS S3 and Cloudflare R2, supporting bucket management, object listing, reading, uploading, and deletion operations.
      5
      15 npm
      ISC
    • A
      license
      Not graded
      quality
      Not graded
      maintenance
      Enables interaction with MinIO object storage through a standardized Model-Context Protocol interface. Supports listing buckets and objects, retrieving files, and uploading data to MinIO storage.
      MIT
    • F
      license
      A
      quality
      D
      maintenance
      Provides tools for interacting with MinIO and S3-compatible object storage through MCP clients like Claude. It enables comprehensive bucket and object management, including listing, creating, uploading, and generating presigned URLs.
      13
      2
      -
    • F
      license
      Not graded
      quality
      D
      maintenance
      Enables LLM agents to interact with MinIO/S3 object storage, supporting bucket and object operations like listing, reading, writing, and generating presigned URLs.
      1
      -