Skip to content

v0.0.3

Choose a tag to compare

@smatiolids smatiolids released this 22 Oct 11:46
· 13 commits to main since this release

πŸš€ Astra MCP Server v0.0.3 - Release Summary

Version 0.0.3 represents a significant evolution of the Astra MCP Server, introducing AI-powered automation, enhanced database support, and improved developer experience while maintaining full backward compatibility with existing deployments.

πŸ†• Major New Features

  1. AI-Powered Tool Agent
    New Command: astra-mcp-tool-agent - Automatically generates tool specifications by analyzing Astra DB tables
    Smart Analysis: Connects to Astra DB, retrieves table schema, and analyzes sample data to create optimized tool configurations
    LLM Integration: Uses OpenAI GPT-4o-mini to intelligently generate tool parameters based on actual table structure
    Flexible Configuration: Supports custom instructions and sample size adjustments

  2. Enhanced Database Support

Table Support: Extended beyond collections to support Astra DB tables (CQL tables)
Unified Interface: Single find() method that works with both collections and tables
Schema Awareness: Automatically detects partition keys, sorting keys, and indexed columns
Vector Column Detection: Identifies vector columns for embedding-based searches

  1. Catalog Management System

New Command: astra-mcp-catalog - Upload and manage tool catalogs in Astra DB
Batch Operations: Upload multiple tools at once with automatic cleanup of existing tools
Collection Management: Automatically creates collections if they don't exist
Flexible Storage: Store tool catalogs in custom collections with configurable names

πŸ”§ Technical Improvements

  1. Enhanced LLM Integration

Multi-Provider Support: Added support for both OpenAI and IBM Watsonx embedding models
Model Flexibility: Support for various embedding models including:
OpenAI: text-embedding-3-small, text-embedding-3-large, text-embedding-ada-002
IBM Watsonx: granite-embedding-278m-multilingual, all-minilm-l6-v2, and more
Prompt Engineering: Intelligent tool specification generation with context-aware prompts

  1. Improved Configuration Management
    Environment Variable Support: Enhanced command-line argument handling with fallback to environment variables
    Flexible Authentication: Streamlined Astra DB connection with better error handling
    Dynamic Configuration: Runtime configuration updates without server restart

  2. Enhanced Tool Specification Format

Rich Metadata: Added info field to parameters indicating column types (partition key, indexed, vector)
Smart Parameter Generation: Automatic generation of range parameters for dates and numbers
Embedding Integration: Automatic embedding model assignment for vector columns
Projection Optimization: Intelligent field selection excluding technical metadata

πŸ“Š Example Tool Specifications

The release includes two example tool specifications:
Product Search Tool (products_tool.json):
E-commerce product search with color, price, and availability filters
Vector search capabilities for semantic product matching
Range-based filtering for prices and release dates
Airline Tickets Tool (user_tool.json):
Customer-specific ticket retrieval
Airport-based filtering
Comprehensive flight information projection

πŸ› οΈ Developer Experience Improvements

  1. Better Error Handling
    Comprehensive Logging: Enhanced logging throughout the application
    Graceful Failures: Better error messages and fallback mechanisms
    Validation: Improved input validation for tool specifications

  2. Documentation Updates

Comprehensive README: Updated with new features and usage examples
Build Instructions: Enhanced BUILD.md with complete release workflow
Integration Guides: Added examples for Langflow and IBM Orchestrate

πŸ”„ Backward Compatibility
Seamless Migration: All existing tool configurations continue to work
Gradual Adoption: New features are optional and don't break existing setups
Environment Flexibility: Maintains support for both file-based and database-based tool catalogs

πŸ“ˆ Performance Enhancements
Optimized Queries: Better handling of indexed columns and partition keys
Reduced Latency: Streamlined database operations
Memory Efficiency: Improved resource management for large datasets