Skip to main content
Squirrels is a low-code API server framework for building data analytics APIs.

Why Squirrels?

Want to serve well-described dynamic datasets to AI agents? Squirrels has you covered! Simply create a Squirrels project by writing data models in SQL and configurations in YAML (and/or Python for both). Activate the API server with the CLI and use the built-in MCP server for AI agents to interact with your data safely and efficiently. No need to reinvent the wheel for building agent tools, serving dataset metadata, and creating token-efficient responses for tabular data!

Highlights

  • 🤖 AI-Ready Architecture: Built-in MCP server for serving dataset metadata and results to AI agents via token-efficient MCP tools.
  • 🚀 Low-Code REST API Development: Create data analytics APIs using basic data engineering skills without extensive AI or backend engineering expertise.
  • 🔌 Connect Any Database: Connect to any database or data warehouse that is supported by SQLAlchemy, ConnectorX, or ADBC.
  • 📊 Flexible Data Modeling: Write data models that can reference other data models using Jinja-templated SQL or Python.
  • 🔗 Multi-Database Joins: Connect to multiple databases in a single project and join data across sources in a single dataset!
  • ⚙️ Interactive Parameters: Create dynamic datasets and dashboards that respond to user inputs and selections.
  • 🔒 Built-in Security: Authentication and dataset permissions, with either Squirrels-managed users/API keys or external OAuth-based authentication.
  • 💻 Simple Developer Experience: Quick setup with CLI commands pip install squirrels and sqrl init.

Example projects

Check out these example Squirrels projects to see what you can build:
  • sqrl-expenses-slim: demonstrates the minimum setup needed for a practical working Squirrels project by storing expense transactions as a seed
  • sqrl-expenses: an instance of a Squirrels project for expenses analytics that can be created with sqrl init
  • sqrl-mortgage-analysis: a Squirrels project for mortgage analytics that uses Python data models to perform Monte Carlo simulations
  • sqrl-weather-analytics: an extension of the tutorial example that includes joining data from multiple sources and realtime inference with a linear regression model

Getting started

Start here if you are new to Squirrels! Follow these guides to learn how to use Squirrels quickly:

Join the community

Got any questions or feedback? Feel free to send an email to [email protected]. Or come join us on our Discord server!