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 datadetails- Get specific resource detailsquery- Run database queriessearch- Search with parametersexecute- 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
- Integration Types - Detailed integration patterns
- Pack Structure - Pack organization guide
- Pack Development - Creation guide
- Security - Security patterns
Examples
See examples/ directory for sample packs demonstrating various integration patterns.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e4299e0ad19737479f02c4ff44112a5472f2b6f2dc3348e3e3172a7d792a27e1
|
|
| MD5 |
6dd0729c9120c7ef6f6ba0876bc96d1f
|
|
| BLAKE2b-256 |
adfc8ba453dd35c9d30d9bfc5f3b4ccc5571c8f68c21df39645db6909f675e2f
|
File details
Details for the file catalyst_builder-1.1.0-py3-none-any.whl.
File metadata
- Download URL: catalyst_builder-1.1.0-py3-none-any.whl
- Upload date:
- Size: 30.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
52bf5158e0997ff2e0a0957b71270d7f4459de175d308e9df58b286602dfcedc
|
|
| MD5 |
8b2dfea37f1a4f02356cf82966683cff
|
|
| BLAKE2b-256 |
26a823136382d5062bfcab0e3eca403d7964bd08ccf9ba42c4139b1d65e0ee37
|