Skip to main content

LangChain tools for BoltzPay — pay for API data with AI agents

Project description

PyPI Python 3.10+ License: MIT

langchain-boltzpay

LangChain tools for BoltzPay -- pay for API data with AI agents.

Install

pip install langchain-boltzpay

Prerequisites

  • Node.js 20+ (nodejs.org) -- the CLI bridge calls npx @boltzpay/cli under the hood
  • Coinbase CDP keys (docs) -- only needed for fetch (paid requests)

Quick Start

from langchain_openai import ChatOpenAI
from langchain.agents import create_tool_calling_agent, AgentExecutor
from langchain_core.prompts import ChatPromptTemplate
from langchain_boltzpay import (
    BoltzPayFetchTool,
    BoltzPayDiagnoseTool,
    BoltzPayDiscoverTool,
)

tools = [BoltzPayDiscoverTool(), BoltzPayDiagnoseTool(), BoltzPayFetchTool()]
llm = ChatOpenAI(model="gpt-4o-mini")

prompt = ChatPromptTemplate.from_messages([
    ("system", "You are a researcher. Use BoltzPay to access paid APIs."),
    ("human", "{input}"),
    ("placeholder", "{agent_scratchpad}"),
])

agent = create_tool_calling_agent(llm, tools, prompt)
executor = AgentExecutor(agent=agent, tools=tools)

result = executor.invoke({"input": "Diagnose the endpoint invy.bot/api"})

Tool Reference

Tool Name Description Credentials?
BoltzPayFetchTool boltzpay_fetch Fetch data from a paid API, auto-pay with USDC Yes
BoltzPayQuoteTool boltzpay_quote Get price quote without paying No
BoltzPayDiscoverTool boltzpay_discover Browse available paid APIs No
BoltzPayBudgetTool boltzpay_budget Show remaining spending budget No
BoltzPayHistoryTool boltzpay_history Show payment history No
BoltzPayWalletTool boltzpay_wallet Show wallet and config info No
BoltzPayDiagnoseTool boltzpay_diagnose Full endpoint diagnostic (protocol, health, latency) No

No Credentials Needed

Most tools work without any credentials -- perfect for exploration:

from langchain_boltzpay import BoltzPayDiscoverTool, BoltzPayDiagnoseTool

# Discover available APIs
discover = BoltzPayDiscoverTool()
print(discover._run())

# Diagnose an endpoint (protocol, health, latency)
diagnose = BoltzPayDiagnoseTool()
print(diagnose._run(url="https://invy.bot/api"))

With Credentials

To actually fetch paid data, set Coinbase CDP environment variables:

export COINBASE_API_KEY_ID="your-key-id"
export COINBASE_API_KEY_SECRET="your-key-secret"
export COINBASE_WALLET_SECRET="your-wallet-secret"
from langchain_boltzpay import BoltzPayFetchTool

fetch = BoltzPayFetchTool()
result = fetch._run(url="https://invy.bot/api")
print(result)  # Paid API response with payment receipt

Error Handling

All tools set handle_tool_error=True, so LangChain agents handle errors gracefully. You can also catch errors directly:

from langchain_boltzpay import BoltzPayFetchTool
from langchain_boltzpay.errors import (
    BoltzPayBridgeError,
    BoltzPayNodeNotFoundError,
    BoltzPayTimeoutError,
)

try:
    tool = BoltzPayFetchTool()
    tool._run(url="https://example.com/api")
except BoltzPayNodeNotFoundError:
    print("Install Node.js 20+ from https://nodejs.org")
except BoltzPayTimeoutError:
    print("CLI command timed out (default: 30s)")
except BoltzPayBridgeError as e:
    print(f"CLI error [{e.code}]: {e.message}")

Jupyter Notebook

See notebooks/getting-started.ipynb for a complete walkthrough: discover APIs, check prices, and create an agent.

MCP Alternative

If you're using CrewAI or another MCP-compatible framework, you can use the BoltzPay MCP server directly instead of this LangChain package:

npx @boltzpay/mcp

This exposes the same 7 tools via the Model Context Protocol.

Links

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

langchain_boltzpay-0.2.2.tar.gz (9.5 kB view details)

Uploaded Source

Built Distribution

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

langchain_boltzpay-0.2.2-py3-none-any.whl (8.0 kB view details)

Uploaded Python 3

File details

Details for the file langchain_boltzpay-0.2.2.tar.gz.

File metadata

  • Download URL: langchain_boltzpay-0.2.2.tar.gz
  • Upload date:
  • Size: 9.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for langchain_boltzpay-0.2.2.tar.gz
Algorithm Hash digest
SHA256 9bfb54d2c6bb4d0c9cbac498e4265941d6418ed835633b7d704cfe04932777c0
MD5 abe7e1adcd58a36b98f7973048576bdc
BLAKE2b-256 8589b4b9962e8f005680e95842462afb4bd309757d62dc53e71f87ca7ee6dc44

See more details on using hashes here.

Provenance

The following attestation bundles were made for langchain_boltzpay-0.2.2.tar.gz:

Publisher: release.yml on leventilo/boltzpay

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

File details

Details for the file langchain_boltzpay-0.2.2-py3-none-any.whl.

File metadata

File hashes

Hashes for langchain_boltzpay-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 2ca051e697feb90a10123f94a0b9b4d78389b2e3eb6ee35c5d6e2d79fe1d1347
MD5 da6452aaf50cd78f75b5cab78e11c442
BLAKE2b-256 6bc7b160fa98b9db6a616b746bc19fdfb1c38b66757f41f175144ef43811a545

See more details on using hashes here.

Provenance

The following attestation bundles were made for langchain_boltzpay-0.2.2-py3-none-any.whl:

Publisher: release.yml on leventilo/boltzpay

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