Skip to main content

Secure Personal AI Research Kit - Multi-provider LLM CLI/Web interface with MCP tool integration

Project description

Spark - Secure Personal AI Research Kit

License: MIT Python 3.10+

Quality Gate Status Security Rating Reliability Rating Maintainability Rating Vulnerabilities Bugs

Spark is a powerful, multi-provider LLM interface for conversational AI with integrated tool support. It supports AWS Bedrock, Anthropic Direct API, and Ollama local models through both CLI and Web interfaces.

Key Features

  • Multi-Provider Support - AWS Bedrock, Anthropic Direct API, and Ollama local models
  • Dual Interface - Rich CLI terminal UI and modern Web browser interface
  • MCP Tool Integration - Connect external tools via Model Context Protocol
  • Intelligent Context Management - Automatic conversation compaction with model-aware limits
  • Security Features - Prompt inspection, tool permissions, and audit logging
  • Multiple Database Backends - SQLite, MySQL, PostgreSQL, and Microsoft SQL Server

Quick Start

Installation

pip install dtSpark

First-Time Setup

Run the interactive setup wizard to configure Spark:

spark --setup

This guides you through:

  • LLM provider selection and configuration
  • Database setup
  • Interface preferences
  • Security settings

Running Spark

# Start with CLI interface
spark

# Or use the alternative command
dtSpark

Documentation

Comprehensive documentation is available in the docs folder:

Architecture Overview

graph LR
    subgraph Interfaces
        CLI[CLI]
        WEB[Web]
    end

    subgraph Core
        CM[Conversation<br/>Manager]
    end

    subgraph Providers
        BEDROCK[AWS Bedrock]
        ANTHROPIC[Anthropic]
        OLLAMA[Ollama]
    end

    subgraph Tools
        MCP[MCP Servers]
        BUILTIN[Built-in Tools]
    end

    CLI --> CM
    WEB --> CM
    CM --> BEDROCK
    CM --> ANTHROPIC
    CM --> OLLAMA
    CM --> MCP
    CM --> BUILTIN

Requirements

  • Python 3.10 or higher
  • AWS credentials (for Bedrock)
  • Anthropic API key (for direct API)
  • Ollama server (for local models)

Licence

MIT Licence - see LICENSE for details.

Author

Matthew Westwood-Hill matthew@digital-thought.org

Support

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

dtspark-1.1.0a38.tar.gz (372.9 kB view details)

Uploaded Source

Built Distribution

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

dtspark-1.1.0a38-py3-none-any.whl (381.8 kB view details)

Uploaded Python 3

File details

Details for the file dtspark-1.1.0a38.tar.gz.

File metadata

  • Download URL: dtspark-1.1.0a38.tar.gz
  • Upload date:
  • Size: 372.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for dtspark-1.1.0a38.tar.gz
Algorithm Hash digest
SHA256 07e49f5c94cff441ca8c84455a6b153a0e01fee6a5d81a9168a9a5e505a320e7
MD5 48eabc9ff026ddc25b80fc463259d468
BLAKE2b-256 3f7c8baabfea491657a71b653c73496cd1671d17e3955f2eb3ca0e34be14656d

See more details on using hashes here.

Provenance

The following attestation bundles were made for dtspark-1.1.0a38.tar.gz:

Publisher: publish-to-pypi.yml on Digital-Thought/dtSpark

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dtspark-1.1.0a38-py3-none-any.whl.

File metadata

  • Download URL: dtspark-1.1.0a38-py3-none-any.whl
  • Upload date:
  • Size: 381.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for dtspark-1.1.0a38-py3-none-any.whl
Algorithm Hash digest
SHA256 c39efac33f102c13c5b22d7298196ce6b503510ef6a8c092a1586509cbb6a547
MD5 8c5d5e4d0ee3ade713008afebf1f66d0
BLAKE2b-256 a6f5a4e9abe125068524c3b49902a2be2dfab7b1a5925a6ff17673dc37c0f808

See more details on using hashes here.

Provenance

The following attestation bundles were made for dtspark-1.1.0a38-py3-none-any.whl:

Publisher: publish-to-pypi.yml on Digital-Thought/dtSpark

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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