DuckDB-powered MCP Server with SQL macros for LLM agents
Project description
Agent Farm
DuckDB-powered MCP Server with SQL macros for LLM agents - Web Search, Python execution, RAG, and more.
DuckDB - Ollama - Docker - Query Farm
Features
- MCP Server: Exposes DuckDB as an MCP server for Claude and other LLM clients
- Auto-Discovery: Automatically discovers MCP configurations from standard locations
- LLM Integration: SQL macros for calling Ollama models (local and cloud)
- Tool Calling: Full function calling support for agentic workflows
- Web Search: DuckDuckGo and Brave Search integration
- Shell Execution: Run shell commands and Python code via UV
- Web Scraping: Fetch and extract text from web pages
- RAG Support: Embeddings and vector similarity search
- Rich Extensions: Pre-configured with useful DuckDB community extensions
Installation
Using uv (recommended): uv sync --dev
Or with pip: pip install -e .
Quick Start
Run the MCP server: agent-farm
Or as a module: python -m agent_farm
SQL Macros
Cloud LLM Models (via Ollama)
SELECT deepseek('Explain quantum computing'); SELECT kimi_think('Solve this step by step: ...'); SELECT qwen3_coder('Write a Python function for...');
Web Search
SELECT ddg_instant('Python programming'); SELECT ddg_abstract('machine learning'); SELECT brave_search('DuckDB tutorial');
Shell and Python Execution
SELECT shell('ls -la'); SELECT py('print(2+2)'); SELECT py_with('requests', 'import requests; print(requests.version)');
Web Scraping
SELECT fetch('https://example.com'); SELECT fetch_text('https://example.com'); SELECT fetch_json('https://api.example.com/data');
File and Git Operations
SELECT read_file('path/to/file.txt'); SELECT git_status(); SELECT git_log(10);
RAG and Embeddings
SELECT rag_query('What is the price?', 'Product: Widget, Price: 49.99'); SELECT embed('Hello world'); SELECT semantic_score('query', 'document');
Combined Power Macros
SELECT search_and_summarize('What is DuckDB?'); SELECT analyze_page('https://example.com', 'What is this page about?'); SELECT review_code('src/main.py');
Docker
docker build -t agent-farm . docker run -it agent-farm
Requirements
- Python >= 3.11
- DuckDB >= 1.1.0
- Ollama (for LLM features)
License
MIT
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
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 agent_farm-0.1.2.tar.gz.
File metadata
- Download URL: agent_farm-0.1.2.tar.gz
- Upload date:
- Size: 8.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.22
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8bdfcb92dbeacac51c52cbffee6fea20310341ec1509b7e5bd734ae02526cc52
|
|
| MD5 |
108a36d29f7c65cbe57024e535889474
|
|
| BLAKE2b-256 |
29c42fcb18943245f930bbbb6051ac29828969454f136f82201a1da907ff03d6
|
File details
Details for the file agent_farm-0.1.2-py3-none-any.whl.
File metadata
- Download URL: agent_farm-0.1.2-py3-none-any.whl
- Upload date:
- Size: 10.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.22
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d0bca2397c105597acb61b869e58227c38502bd6fc7c593fc023b441af673b16
|
|
| MD5 |
d2a5fb0cd5aab128c6011bf860933df6
|
|
| BLAKE2b-256 |
622e5064c72267418a6cf4c7c0e8db3b2c82e71708d06db99d6f96541e46d657
|