AlgoVault ToolSpec for LlamaIndex — composite BUY/SELL/HOLD trade calls, market-regime classification, and cross-venue funding-arbitrage scans for crypto perpetual futures, backed by the AlgoVault MCP server.
Project description
LlamaIndex Tools: AlgoVault
Composite BUY / SELL / HOLD trade calls, market‑regime classification, and cross‑venue funding‑arbitrage scans for crypto perpetual futures — exposed as native LlamaIndex tools, backed by the AlgoVault MCP server.
One import, zero MCP wiring, keyless free tier by default. Built by AlgoVault Labs.
pip install llama-index-tools-algovault
Why
AlgoVault is an API‑first signal‑interpretation layer for AI agents: it turns raw market data into a single composite verdict with a queryable, public track record. This ToolSpec gives a LlamaIndex agent four AlgoVault tools out of the box — no API key required to start (free tier), and a one‑line api_key for paid tiers.
The performance the verdicts are scored against (PFE win‑rate) is published live at algovault.com/track-record and via the MCP signal-performance resource.
Quick start (branded ToolSpec)
from llama_index.tools.algovault import AlgoVaultToolSpec
from llama_index.core.agent.workflow import FunctionAgent
from llama_index.llms.openai import OpenAI
# Keyless free tier (100 calls / month). Pass api_key="..." or set
# ALGOVAULT_API_KEY for paid tiers.
algovault = AlgoVaultToolSpec()
agent = FunctionAgent(
tools=algovault.to_tool_list(),
llm=OpenAI(model="gpt-4o"),
system_prompt="You are a crypto trading research assistant.",
)
resp = await agent.run("What's the current trade call for BTC?")
print(resp)
Call a tool directly:
algovault = AlgoVaultToolSpec()
print(algovault.get_trade_call("BTC")) # free
print(algovault.get_trade_call("ETH", timeframe="4h", exchange="BYBIT"))
print(algovault.get_market_regime("SOL", timeframe="1d")) # paid tier
print(algovault.scan_funding_arb(min_spread_bps=5, limit=5)) # paid tier
Authentication
| Mode | How | Tier |
|---|---|---|
| Keyless (default) | AlgoVaultToolSpec() |
Free — 100 calls / month |
| API key | AlgoVaultToolSpec(api_key="...") or ALGOVAULT_API_KEY env |
Paid tiers |
The key (when set) is sent as an Authorization: Bearer <key> header to https://api.algovault.com/mcp.
Tools
| Tool | Tier | Signature | Returns |
|---|---|---|---|
get_trade_call |
Free | coin, timeframe?, exchange?, include_reasoning=True, asset_class? |
Composite BUY/SELL/HOLD verdict + confidence, price, indicators, regime, reasoning |
get_trade_signal |
Free | (same as get_trade_call) |
Alias of get_trade_call, kept for back‑compat |
get_market_regime |
Paid | coin, timeframe="4h", exchange="HL" |
Regime: TRENDING_UP / TRENDING_DOWN / RANGING / VOLATILE |
scan_funding_arb |
Paid | min_spread_bps=5, limit=10 |
Cross‑venue funding‑rate spreads (long one venue, short the other) |
timeframe ∈ 1m 3m 5m 15m 30m 1h 2h 4h 8h 12h 1d (regime: 1h 4h 1d). exchange ∈ HL BINANCE BYBIT OKX BITGET ASTER EDGEX GATE MEXC KUCOIN PHEMEX BINGX HTX WEEX BITMART XT WHITEBIT. Defaults match the AlgoVault server (timeframe=15m, exchange=BINANCE for trade calls). On the free tier scan_funding_arb caps limit at 5.
Alternative: generic MCP client (no package)
AlgoVault is a standard Streamable‑HTTP MCP server, so any LlamaIndex agent can reach the same tools through the generic llama-index-tools-mcp adapter — by configuration alone, no AlgoVault‑specific code:
from llama_index.tools.mcp import BasicMCPClient, McpToolSpec
# keyless free tier
client = BasicMCPClient("https://api.algovault.com/mcp")
# paid tiers:
# client = BasicMCPClient(
# "https://api.algovault.com/mcp",
# headers={"Authorization": "Bearer <ALGOVAULT_API_KEY>"},
# )
spec = McpToolSpec(
client=client,
allowed_tools=["get_trade_call", "get_trade_signal", "get_market_regime", "scan_funding_arb"],
)
tools = spec.to_tool_list() # or: await spec.to_tool_list_async()
This package (llama-index-tools-algovault) is the branded, zero‑config, schema'd wrapper of that same surface: one import, the four tools pre‑wired with typed signatures and docstrings, keyless by default. Use whichever fits — they call the identical MCP endpoint.
Listing
Per run‑llama's current contribution policy, new integrations are published to PyPI independently rather than added to the run-llama/llama_index monorepo (which no longer accepts new integration packages). This package is therefore distributed via PyPI and GitHub; a LlamaHub catalog entry is requested separately through the directory's "Request an Integration" flow.
Development
uv run -- pytest -m "not live" # unit tests
uv run -- pytest -m live -s # live keyless call against api.algovault.com/mcp
uv build # sdist + wheel
Links
- Website — https://algovault.com
- Track record (live PFE win‑rate) — https://algovault.com/track-record
- MCP server —
https://api.algovault.com/mcp
Built by AlgoVault Labs. MIT licensed.
Project details
Release history Release notifications | RSS feed
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 llama_index_tools_algovault-0.1.0.tar.gz.
File metadata
- Download URL: llama_index_tools_algovault-0.1.0.tar.gz
- Upload date:
- Size: 7.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c64a168cb7d58eee9286fd679bb4e28b3750d4e92071834128bd88fa1c26c4e8
|
|
| MD5 |
3712dcbda6cc62c66e529413d6a79bad
|
|
| BLAKE2b-256 |
a21f64b609b615cbea888227b7a0d214387926a487e940de116c0c142350e04e
|
File details
Details for the file llama_index_tools_algovault-0.1.0-py3-none-any.whl.
File metadata
- Download URL: llama_index_tools_algovault-0.1.0-py3-none-any.whl
- Upload date:
- Size: 8.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
40068430780e926548e3158c2a2024f5769e75c6f53db8feabd7f49323a19016
|
|
| MD5 |
f8e64b9f7daa58ca7fb4cd944a6cb37a
|
|
| BLAKE2b-256 |
7c0e65a386c35e41e704da28765413e1d08c0ad7b3a6e6ae4c853e282214b29b
|