Skip to main content

HatiData Python SDK — agent memory, semantic triggers, branching, chain-of-thought, and sub-10ms SQL for AI agents

Project description

HatiData Agent SDK

PyPI version Python versions License

RAM for Agents — Python SDK for AI agents to query HatiData's in-VPC data warehouse with sub-10ms latency via Postgres wire protocol.

Installation

pip install hatidata-agent

# With async support
pip install hatidata-agent[async]

# With LangChain support
pip install hatidata-agent[langchain]

# With MCP server
pip install hatidata-agent[mcp]

# Everything
pip install hatidata-agent[all]

Quick Start

from hatidata_agent import HatiDataAgent

agent = HatiDataAgent(
    host="proxy.internal",
    port=5439,
    agent_id="my-agent",
    framework="langchain",
)

# Simple query
rows = agent.query("SELECT * FROM customers WHERE status = 'active' LIMIT 10")
print(rows)  # [{"id": 1, "name": "Acme Corp", ...}, ...]

Features

  • Sub-10ms query latency -- In-VPC execution, no data leaves your network
  • Postgres wire protocol -- Works with any Postgres client library
  • Reasoning chain tracking -- Multi-step audit trails for agent workflows
  • RAG context retrieval -- Full-text and vector similarity search
  • LangChain integration -- Drop-in SQLDatabase replacement for LangChain agents
  • MCP server -- Expose HatiData as tools for Claude and other MCP-compatible agents
  • Agent identification -- Per-agent billing, priority scheduling, and audit via Postgres startup parameters
  • Snowflake SQL compatible -- Bring existing queries without rewrites

Reasoning Chain Tracking

Track multi-step reasoning chains for audit and debugging:

with agent.reasoning_chain("req-001") as chain:
    # Step 0: Discover tables
    tables = chain.query("SELECT table_name FROM information_schema.tables")

    # Step 1: Get relevant data
    customers = chain.query("SELECT * FROM customers WHERE tier = 'enterprise'", step=1)

    # Step 2: Aggregate
    revenue = chain.query("SELECT SUM(revenue) FROM orders WHERE customer_id IN (...)", step=2)

RAG Context Retrieval

# Full-text search
context = agent.get_context("customers", "enterprise accounts in US", top_k=5)

# Vector similarity search
context = agent.get_rag_context("docs", "embedding", query_vector, top_k=10)

LangChain Integration

from hatidata_agent.langchain import HatiDataSQLDatabase
from langchain.agents import create_sql_agent

db = HatiDataSQLDatabase(
    host="proxy.internal",
    port=5439,
    agent_id="sql-agent-1",
)

agent = create_sql_agent(llm=llm, db=db, verbose=True)
result = agent.run("How many enterprise customers do we have?")

MCP Server

Run as an MCP server for Claude and other MCP-compatible agents:

# Start the MCP server
hatidata-mcp-server --host proxy.internal --port 5439

# Or add to Claude Code's MCP config:
# ~/.claude/mcp.json
{
  "mcpServers": {
    "hatidata": {
      "command": "hatidata-mcp-server",
      "args": ["--host", "proxy.internal", "--port", "5439"]
    }
  }
}

MCP Tools

Tool Description
query Execute SQL and return JSON results
list_tables List available tables
describe_table Get table schema
get_context RAG context retrieval via full-text search

Agent Identification

The SDK automatically identifies agents via Postgres startup parameters:

Parameter Purpose
hatidata_agent_id Unique agent identifier
hatidata_framework AI framework (langchain, crewai, autogen, etc.)
hatidata_priority Scheduling priority (low, normal, high, critical)
hatidata_request_id Request/reasoning chain ID
hatidata_reasoning_step Step number within a chain

These enable per-agent billing, priority scheduling, audit trails, and the Agent Tax Report showing savings vs legacy cloud warehouses.

Documentation

Full documentation is available at docs.hatiosai.com/hatidata.

License

Apache License 2.0. Copyright (c) Marviy Pte Ltd. See LICENSE for details.

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

hatidata_agent-0.4.0.tar.gz (31.3 kB view details)

Uploaded Source

Built Distribution

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

hatidata_agent-0.4.0-py3-none-any.whl (33.1 kB view details)

Uploaded Python 3

File details

Details for the file hatidata_agent-0.4.0.tar.gz.

File metadata

  • Download URL: hatidata_agent-0.4.0.tar.gz
  • Upload date:
  • Size: 31.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for hatidata_agent-0.4.0.tar.gz
Algorithm Hash digest
SHA256 6585cd731b20a448a2ed94bf2ff03be0de6049995abd13d2a0d0e65d493932d4
MD5 2ddd60ec2419f29e1208c2428e1e6136
BLAKE2b-256 f7258b75d975973056bd78a373544b2669123a08a39b940c1e0c24f5b7bfcd3e

See more details on using hashes here.

File details

Details for the file hatidata_agent-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: hatidata_agent-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 33.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for hatidata_agent-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bb6c99ea9b102a49c7831775a9f234b671eb1aa186e976cc53adfbb03f48021e
MD5 6933eb12602e75c471c3eba3749d746d
BLAKE2b-256 38747066ffbb85f783e81542dcdb366eb1cde07ef26c641acb78e1ce9e4ed29f

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