Skip to main content

Karini MCP Server

MCP (Model Context Protocol) server for integrating Karini AI copilots, webhook recipes, and dataset search.

Features

  • 🤖 AI Copilot Integration - Ask questions and get AI-powered responses from your Karini copilots
  • 📄 Document Processing - Process documents stored in S3 through copilots and webhooks
  • 🔗 Webhook Recipes - Trigger asynchronous data processing workflows
  • 📊 Status Tracking - Monitor webhook execution status and results
  • 🔍 Dataset Search - Query your Karini knowledge base with semantic search
  • 🔎 Event Tracing - Trace and debug Karini events by request ID

Installation

uvx karini-mcp-server

Via pip

pip install karini-mcp-server

Configuration

Claude Desktop Setup

Edit your Claude Desktop configuration file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json

Full Configuration (All Features)

{
  "mcpServers": {
    "karini-mcp-server": {
      "command": "uvx",
      "args": ["karini-mcp-server@latest"],
      "env": {
        "KARINI_API_BASE": "https://app.karini.ai",
        "KARINI_COPILOT_ID": "karini-copilot-id",
        "KARINI_API_KEY": "karini-api-key",
        "WEBHOOK_API_KEY": "karini-webhook-api-key",
        "WEBHOOK_RECIPE_ID": "karini-webhook-recipe-id",
        "KARINI_DATASET_ID": "karini-dataset-id"
      }
    }
  }
}

Copilot Only Configuration

{
  "mcpServers": {
    "karini-mcp-server": {
      "command": "uvx",
      "args": ["karini-mcp-server@latest"],
      "env": {
        "KARINI_API_BASE": "https://app.karini.ai",
        "KARINI_COPILOT_ID": "karini-copilot-id",
        "KARINI_API_KEY": "karini-api-key"
      }
    }
  }
}

Webhook Only Configuration

{
  "mcpServers": {
    "karini-mcp-server": {
      "command": "uvx",
      "args": ["karini-mcp-server@latest"],
      "env": {
        "KARINI_API_BASE": "https://app.karini.ai",
        "WEBHOOK_API_KEY": "karini-webhook-api-key",
        "WEBHOOK_RECIPE_ID": "karini-webhook-recipe-id"
      }
    }
  }
}

Dataset Search Only Configuration

{
  "mcpServers": {
    "karini-mcp-server": {
      "command": "uvx",
      "args": ["karini-mcp-server@latest"],
      "env": {
        "KARINI_API_BASE": "https://app.karini.ai",
        "KARINI_API_KEY": "karini-api-key",
        "KARINI_DATASET_ID": "karini-dataset-id"
      }
    }
  }
}

Note: Only tools with valid configuration will be available. Configure only the features you need.

Environment Variables

Variable Required For Description
KARINI_API_BASE All Base URL for Karini API (e.g., https://app.karini.ai)
KARINI_API_KEY Copilot, Dataset, Tracing API key for authentication
KARINI_COPILOT_ID Copilot Your copilot's unique identifier
KARINI_DATASET_ID Dataset Your dataset's unique identifier
WEBHOOK_API_KEY Webhook API key for webhook authentication
WEBHOOK_RECIPE_ID Webhook Webhook recipe identifier

Available Tools

Copilot Tools

ask_karini_copilot

Ask questions to your Karini AI copilot and receive intelligent responses.

Parameters:

  • question (string, required): The question or query to ask
  • files (list, optional): S3 file paths to include in the query
    • Example: ["s3://bucket/document.pdf", "s3://bucket/data.txt"]

Webhook Tools

invoke_webhook_recipe

Trigger a webhook recipe for asynchronous data processing.

Parameters:

  • question (string, optional): Input message or query
  • files (list, optional): S3 file paths to process (content type auto-detected)
    • Example: ["s3://bucket/invoice.pdf", "s3://bucket/receipt.jpg"]
  • metadata (dict, optional): Additional context as key-value pairs
    • Example: {"user_id": "123", "priority": "high", "source": "email"}

Returns: JSON with request_id for status tracking

get_webhook_status

Check the status of webhook recipe executions.

Parameters:

  • request_id (string, optional): Specific request ID to check. If not provided, returns recent requests.
  • limit (integer, optional): Number of recent requests to return (default: 5)

Dataset Tools

query_karini_dataset

Search and retrieve information from your Karini knowledge base using semantic search.

Parameters:

  • text (string, required): The search query or question
  • top_k (integer, optional): Number of results to return (default: 5, max: 20)

Tracing Tools

get_traces

Trace and retrieve detailed information about a specific Karini event using its request ID.

Parameters:

  • request_id (string, required): The unique identifier of the Karini event to trace

Returns: Detailed trace information including execution steps, timing, and debug data

Examples:

Trace event "67309a4f8b1c2d3e4f5a6b7c"

Get traces for request ID "abc123def456"

Development

Local Testing

# Clone repository
git clone https://github.com/yourusername/karini-mcp-server.git
cd karini-mcp-server

# Install dependencies
pip install -e .

# Run locally
python -m src.main

Project Structure

karini-mcp-server/
├── src/
│   ├── main.py              # Entry point
│   ├── server.py            # MCP server setup
│   ├── services/
│   │   ├── config.py        # Configuration management
│   │   └── client.py        # Karini API client
│   └── tools/
│       └── tools.py         # Tool definitions
├── pyproject.toml
└── README.md

Metadata

Release files for karini-mcp-server 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for karini-mcp-server 0.1.1
File Size Uploaded Provenance
karini_mcp_server-0.1.1.tar.gz 7.9 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for karini-mcp-server 0.1.1
File Interpreter ABI Platform
karini_mcp_server-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 16.9 kB

Release files / karini_mcp_server-0.1.1.tar.gz

Download URL karini_mcp_server-0.1.1.tar.gz
Size 7.9 kB
Tags Source
SHA-256 checksum
How to use checksums
8a8e61e32f762c01709411e029b85dc17956045d7c56518b65474c57f36d00ce
BLAKE2b-256 checksum
How to use checksums
577c1dbe7372c094b9a13d1395fb8bc8d1195c38963d8ead95ba9bd98b59e881
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.9

Release files / karini_mcp_server-0.1.1-py3-none-any.whl

Download URL karini_mcp_server-0.1.1-py3-none-any.whl
Size 9.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
353880bf829e4e2277bdfe6eda732efcd85a506ac8c6104316dece597f22c33b
BLAKE2b-256 checksum
How to use checksums
05ca8038b7039f9708d7c6f53c7f8a7a28002504446904da3d478e5762ff5859
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.9

Security for karini-mcp-server 0.1.1

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page