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

Uploaded Python 3

File details

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

File metadata

  • Download URL: langchain_boltzpay-0.2.1.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.1.tar.gz
Algorithm Hash digest
SHA256 ab3e40e085da6cf9f72475564bf6b8e3cc050d947de740edd045f3d3334b3e9a
MD5 13d1682823c340fd257bdb509fc819f5
BLAKE2b-256 e5a0c0abceb9decca03727450dd9c9ed835c89cc2af4f760e953f7b3e09f4ba6

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for langchain_boltzpay-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 38ea0aa51e6d2137b83c40abb3039c952046f26222a6d1d4618970b71b41e663
MD5 0f02b7cc83aeb897e697289b59369925
BLAKE2b-256 8d44e334682c4f3c2c95ff542109866f3d25583d5a5d0a2844c221ada0465205

See more details on using hashes here.

Provenance

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