Skip to main content

Build AI-powered integrations for any business system in minutes

Project description

Catalyst Builder

Tools for creating and validating Catalyst Knowledge Packs.

Installation

pip install catalyst-builder

What are Knowledge Packs?

Knowledge Packs are YAML configurations that define tools for integrating with external systems through the MCP (Model Context Protocol).

What's New in v1.1.0

LLM-Optimized Knowledge Packs - New optional features to improve AI tool discovery and usage:

  • Smart Tool Metadata - Display names, usage hints, complexity levels
  • Parameter Constraints - Min/max values, examples, validation patterns
  • Tool Prerequisites - Define safe tool usage sequences
  • External Transforms - Reference Python/JS files for better maintainability

All features are 100% backward compatible - existing packs continue to work unchanged!

See the LLM Optimization Guide for details.

Pack Structure

# pack.yaml
metadata:
  name: "my_integration" 
  version: "1.0.0"
  description: "Integration with external API"

connection:
  type: "rest"
  base_url: "${API_URL}"
  auth:
    method: "bearer"
    token: "${API_TOKEN}"

tools:
  list_items:
    type: "list"
    description: "Get list of items"
    endpoint: "/items"
    method: "GET"

Supported Integration Types

  • REST API - HTTP/HTTPS API integrations
  • Database - SQL and NoSQL database connections
  • File System - Local files, S3, Azure Blob, Google Cloud Storage
  • SSH - Remote system access
  • Message Queue - RabbitMQ, Kafka, Redis Pub/Sub

Tool Types

  • list - Get arrays of data
  • details - Get specific resource details
  • query - Run database queries
  • search - Search with parameters
  • execute - Run commands or scripts

Parameters

Define parameters for dynamic tools:

tools:
  search_users:
    type: "query"
    sql: "SELECT * FROM users WHERE created_at > {since_date}"
    parameters:
      - name: "since_date"
        type: "string"
        required: true

Data Transformation

Transform responses with jq, Python, JavaScript, or templates:

tools:
  process_data:
    type: "query"
    sql: "SELECT id, name, status FROM users"
    transform:
      type: "jq"
      expression: '.[] | {id, name, active: .status == "active"}'

Validation

python -c "from catalyst_pack_schemas.validator import PackValidator; print(PackValidator().validate_pack('path/to/pack'))"

Environment Variables

Use environment variables for sensitive data:

connection:
  host: "${DB_HOST}"
  auth:
    username: "${DB_USER}"
    password: "${DB_PASSWORD}"

Dependencies

Optional dependencies for specific integrations:

# Database connections
pip install asyncpg          # PostgreSQL
pip install aiomysql         # MySQL
pip install aiosqlite        # SQLite
pip install motor            # MongoDB
pip install redis            # Redis

# Cloud storage
pip install aioboto3         # AWS S3
pip install google-cloud-storage  # Google Cloud
pip install azure-storage-blob    # Azure Blob

# Other integrations
pip install aio-pika         # RabbitMQ
pip install aiokafka         # Apache Kafka
pip install asyncssh         # SSH connections

Documentation

Examples

See examples/ directory for sample packs demonstrating various integration patterns.

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

catalyst_builder-1.1.0.tar.gz (28.9 kB view details)

Uploaded Source

Built Distribution

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

catalyst_builder-1.1.0-py3-none-any.whl (30.7 kB view details)

Uploaded Python 3

File details

Details for the file catalyst_builder-1.1.0.tar.gz.

File metadata

  • Download URL: catalyst_builder-1.1.0.tar.gz
  • Upload date:
  • Size: 28.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.13

File hashes

Hashes for catalyst_builder-1.1.0.tar.gz
Algorithm Hash digest
SHA256 e4299e0ad19737479f02c4ff44112a5472f2b6f2dc3348e3e3172a7d792a27e1
MD5 6dd0729c9120c7ef6f6ba0876bc96d1f
BLAKE2b-256 adfc8ba453dd35c9d30d9bfc5f3b4ccc5571c8f68c21df39645db6909f675e2f

See more details on using hashes here.

File details

Details for the file catalyst_builder-1.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for catalyst_builder-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 52bf5158e0997ff2e0a0957b71270d7f4459de175d308e9df58b286602dfcedc
MD5 8b2dfea37f1a4f02356cf82966683cff
BLAKE2b-256 26a823136382d5062bfcab0e3eca403d7964bd08ccf9ba42c4139b1d65e0ee37

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