Skip to main content

MCP Server for Kinetica Database

Project description

Kinetica Logo

Website | Docs | Community Slack

Kinetica MCP Server

Overview

This project contains the source code for the Kinetica MCP server, as well as examples of how to configure and run the server.

The Kinetica MCP server exposes tools and resources for interacting with Kinetica's database, SQL-GPT contexts, and real-time monitoring.

Features

Tools

  • list_tables()

    List all available tables, views, and schemas in the Kinetica instance.

  • describe_table(table_name: str)

    Show metadata and type schema for a specific table.

  • query_sql(sql: str)

    Run a read-only SQL query on the database, returns results as JSON.

  • get_records(table_name: str, limit: int = 100)

    Fetch raw records from a table as a list of dictionaries.

  • insert_json(table_name: str, records: list[dict])

    Insert a list of JSON records into the specified table.

  • start_table_monitor(table: str)

    Start a real-time monitor for inserts, updates, and deletes on a table.

Resources

  • sql-context://{context_name}

    Return a structured view of a SQL-GPT context, including:

    • table: Fully qualified table name
    • comment: Context description
    • rules: List of defined semantic rules
    • column_comments: Optional inline column comment block

Installation

The Kinetica MCP server requires the following component versions:

  • Python 3.10 (Python 3.13, if using uv)
  • Node.js 18

MCP

The Kinetica MCP server can be installed with one of the following:

MCP via PIP

pip3 install mcp-kinetica

MCP via UV

uv add "mcp-kinetica"

Setup and Configuration

The MCP server uses environment variables to connect securely to your Kinetica instance. You can define these in a .env file (recommended), export them in your shell, or specify them in the Claude Desktop config.

Required Environment Variables

Create a .env file in your project root with the following keys:

KINETICA_URL=http://your-kinetica-instance:9191
KINETICA_USER=your_username
KINETICA_PASSWORD=your_password

Claude Desktop Configuration

You can integrate the Kinetica MCP server with Claude Desktop in two ways:

FastMCP Install (Recommended)

  1. Run the following command to install the server and register it with Claude Desktop:

    fastmcp install mcp_kinetica/server.py --name "Kinetica MCP Server"
    
  2. This will:

    • Create an isolated environment using uv
    • Install all required dependencies
    • Add an entry to your Claude Desktop config automatically

Manual Configuration

  1. Open your Claude Desktop configuration file:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%/Claude/claude_desktop_config.json
  2. Add the following entry to the mcpServers block:

    {
      "mcpServers": {
        "mcp-kinetica": {
          "command": "uv",
          "args": [
            "run",
            "--with",
            "fastmcp",
            "--with",
            "gpudb",
            "--with",
            "python-dotenv",
            "fastmcp",
            "run",
            "mcp_kinetica/server.py"
          ]
        }
      }
    }
    
  3. Update the environment variable values as needed for your Kinetica instance.

  4. Restart Claude Desktop to apply the changes.

MCP Inspector (For Testing)

Use fastmcp dev for an interactive testing environment with the MCP Inspector:

fastmcp dev mcp_kinetica/server.py 

To create a local package in editable mode:

fastmcp dev mcp_kinetica/server.py --with-editable .

Launch MCP Inspector in a browser, pointing at the URL output by the fastmcp command; for instance http://127.0.0.1:6274, given this output:

Starting MCP inspector...
Proxy server listening on port 6277
MCP Inspector is up and running at http://127.0.0.1:6274

Note: MCP inspector will default to uv as the command to run. If not using uv for package management, the MCP Inspector parameters can be updated as follows:

  • Command: python3
  • Arguments: mcp_kinetica/server.py

Support

For bugs, please submit an issue on Github.

For support, you can post on stackoverflow under the kinetica tag or Slack.

Contact Us

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

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

mcp_kinetica-7.2.3.0b1-py3-none-any.whl (9.9 kB view details)

Uploaded Python 3

File details

Details for the file mcp_kinetica-7.2.3.0b1-py3-none-any.whl.

File metadata

File hashes

Hashes for mcp_kinetica-7.2.3.0b1-py3-none-any.whl
Algorithm Hash digest
SHA256 9720e41fbdc7d6c3274bf37f015a3f6b5adab6d65aa7f1bdce69bdad9c60e48f
MD5 c69578d03067f3d6b09851656b26b5ed
BLAKE2b-256 2431d725460e64964e9555a170373ae9fce2fa3488f9ec94ce2d2483a873879c

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