Skip to main content

An MCP server for Aiven.

Project description

Add to Cursor Add to VS Code Add to Claude Add to ChatGPT Add to Codex Add to Gemini

Aiven MCP Server

A Model Context Protocol (MCP) server for Aiven.

This provides access to the Aiven for PostgreSQL, Kafka, ClickHouse, Valkey and OpenSearch services running in Aiven and the wider Aiven ecosystem of native connectors. Enabling LLMs to build full stack solutions for all use-cases.

Features

Tools

  • list_projects

    • List all projects on your Aiven account.
  • list_services

    • List all services in a specific Aiven project.
  • get_service_details

    • Get the detail of your service in a specific Aiven project.

Configuration for Claude Desktop

  1. Open the Claude Desktop configuration file located at:

    • On macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • On Windows: %APPDATA%/Claude/claude_desktop_config.json
  2. Add the following:

{
  "mcpServers": {
    "mcp-aiven": {
      "command": "uv",
      "args": [
        "--directory",
        "$REPOSITORY_DIRECTORY",
        "run",
        "--with-editable",
        "$REPOSITORY_DIRECTORY",
        "--python",
        "3.13",
        "mcp-aiven"
      ],
      "env": {
        "AIVEN_BASE_URL": "https://api.aiven.io",
        "AIVEN_TOKEN": "$AIVEN_TOKEN"
      }
    }
  }
}

Update the environment variables:

  • $REPOSITORY_DIRECTORY to point to the folder cointaining the repository
  • AIVEN_TOKEN to the Aiven login token.
  1. Locate the command entry for uv and replace it with the absolute path to the uv executable. This ensures that the correct version of uv is used when starting the server. On a mac, you can find this path using which uv.

  2. Restart Claude Desktop to apply the changes.

Configuration for Cursor

  1. Navigate to Cursor -> Settings -> Cursor Settings

  2. Select "MCP Servers"

  3. Add a new server with

    • Name: mcp-aiven
    • Type: command
    • Command: uv --directory $REPOSITORY_DIRECTORY run --with-editable $REPOSITORY_DIRECTORY --python 3.13 mcp-aiven

Where $REPOSITORY_DIRECTORY is the path to the repository. You might need to add the AIVEN_BASE_URL, AIVEN_PROJECT_NAME and AIVEN_TOKEN as variables

Development

  1. Add the following variables to a .env file in the root of the repository.
AIVEN_BASE_URL=https://api.aiven.io
AIVEN_TOKEN=$AIVEN_TOKEN
  1. Run uv sync to install the dependencies. To install uv follow the instructions here. Then do source .venv/bin/activate.

  2. For easy testing, you can run mcp dev mcp_aiven/mcp_server.py to start the MCP server.

Environment Variables

The following environment variables are used to configure the Aiven connection:

Required Variables

  • AIVEN_BASE_URL: The Aiven API url
  • AIVEN_TOKEN: The authentication token

Developer Considerations for Model Context Protocols (MCPs) and AI Agents

This section outlines key developer responsibilities and security considerations when working with Model Context Protocols (MCPs) and AI Agents within this system. Self-Managed MCPs:

  • Customer Responsibility: MCPs are executed within the user's environment, not hosted by Aiven. Therefore, users are solely responsible for their operational management, security, and compliance, adhering to the shared responsibility model. (https://aiven.io/responsibility-matrix)
  • Deployment and Maintenance: Developers must handle all aspects of MCP deployment, updates, and maintenance.

AI Agent Security:

  • Permission Control: Access and capabilities of AI Agents are strictly governed by the permissions granted to the API token used for their authentication. Developers must meticulously manage these permissions.
  • Credential Handling: Be acutely aware that AI Agents may require access credentials (e.g., database connection strings, streaming service tokens) to perform actions on your behalf. Exercise extreme caution when providing such credentials to AI Agents.
  • Risk Assessment: Adhere to your organization's security policies and conduct thorough risk assessments before granting AI Agents access to sensitive resources.

API Token Best Practices:

  • Principle of Least Privilege: Always adhere to the principle of least privilege. API tokens should be scoped and restricted to the minimum permissions necessary for their intended function.
  • Token Management: Implement robust token management practices, including regular rotation and secure storage.

Key Takeaways:

  • Users retain full control and responsibility for MCP execution and security.
  • AI Agent permissions are directly tied to API token permissions.
  • Exercise extreme caution when providing credentials to AI Agents.
  • Strictly adhere to the principle of least privilege when managing API tokens.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcp_aiven_fastmcp-0.1.5.tar.gz (11.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcp_aiven_fastmcp-0.1.5-py3-none-any.whl (9.5 kB view details)

Uploaded Python 3

File details

Details for the file mcp_aiven_fastmcp-0.1.5.tar.gz.

File metadata

  • Download URL: mcp_aiven_fastmcp-0.1.5.tar.gz
  • Upload date:
  • Size: 11.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.22

File hashes

Hashes for mcp_aiven_fastmcp-0.1.5.tar.gz
Algorithm Hash digest
SHA256 67876c0a48c2f874af3dbbcd39d881210204e20158aa8a2ef74eb86439b50b3c
MD5 461e0657aebeff5fb246a0271e970f4d
BLAKE2b-256 0212a5f0a151f5b8800b3cbc5f2453ea866bef047f67832d853119c096a5d639

See more details on using hashes here.

File details

Details for the file mcp_aiven_fastmcp-0.1.5-py3-none-any.whl.

File metadata

File hashes

Hashes for mcp_aiven_fastmcp-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 728aaa07a4f4fde1a050b2798a461b471fb3d2cefe09a831db74db9212abadfa
MD5 7414bc396fcf6ee3c9b4f90bdc5125e9
BLAKE2b-256 cd6f294a6473ec348d651de480d8e9b2c7d37960c1b7610708f8990a5b8d4b3c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page