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.1.3.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.1.3-py3-none-any.whl (8.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: langchain_boltzpay-0.1.3.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.1.3.tar.gz
Algorithm Hash digest
SHA256 c22a3825436e87947820c568264993dd059e3c83a63e44394b50f5676cc58538
MD5 04bd78f30ead62727979eff24d08dcf6
BLAKE2b-256 88f79d10540c94082086ba02a01c9c64685b10f6e9e4a9723ee7fca8188c78d2

See more details on using hashes here.

Provenance

The following attestation bundles were made for langchain_boltzpay-0.1.3.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.1.3-py3-none-any.whl.

File metadata

File hashes

Hashes for langchain_boltzpay-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 17c8fce148614776b144edc552404d68879b26933b385c68a3515c9d4e111e31
MD5 62b60a65b951bd65867e3fe9baf61c34
BLAKE2b-256 a2f71bc57b5adfdd45c8c8dd4545054fa71763a555195b8a48f71f7e4e6a3318

See more details on using hashes here.

Provenance

The following attestation bundles were made for langchain_boltzpay-0.1.3-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