Skip to main content

LangChain tools for OneShot — commercial actions for AI agents

Project description

langchain-oneshot

LangChain tools for OneShot — commercial actions for AI agents.

Provides 19 tools as LangChain BaseTool subclasses with automatic x402 payment handling via USDC on Base.

Installation

pip install langchain-oneshot

Quick Start

from langchain_oneshot import OneShotToolkit
from langchain_openai import ChatOpenAI
from langgraph.prebuilt import create_react_agent

# Create toolkit (test mode uses Base Sepolia testnet)
toolkit = OneShotToolkit.from_private_key(
    private_key="0x...",
    test_mode=True,
)

# Use all 19 tools with a LangGraph agent
tools = toolkit.get_tools()
llm = ChatOpenAI(model="gpt-4o")
agent = create_react_agent(llm, tools)

result = agent.invoke({
    "messages": [("user", "Research the latest AI agent frameworks")]
})

Individual Tools

from langchain_oneshot import OneShotClient, ResearchTool

client = OneShotClient(private_key="0x...", test_mode=True)
research = ResearchTool(client=client)
result = research.invoke({"topic": "AI agent frameworks 2026"})

Available Tools

Tool Description Cost
oneshot_email Send emails ~$0.01
oneshot_voice Make phone calls ~$0.25/min
oneshot_sms Send SMS messages ~$0.035/segment
oneshot_research Deep web research $0.50–$2.00
oneshot_people_search Search for people ~$0.10/result
oneshot_enrich_profile Enrich a profile ~$0.10
oneshot_find_email Find email address ~$0.10
oneshot_verify_email Verify email ~$0.01
oneshot_commerce_search Search products Free
oneshot_commerce_buy Purchase product Price + fee
oneshot_build Build a website ~$10 base
oneshot_update_build Update a website ~$10 base
oneshot_inbox_list List inbox emails Free
oneshot_inbox_get Get email by ID Free
oneshot_sms_inbox_list List SMS inbox Free
oneshot_sms_inbox_get Get SMS by ID Free
oneshot_notifications List notifications Free
oneshot_mark_notification_read Mark read Free
oneshot_get_balance USDC balance Free

How Payments Work

Paid tools use the x402 protocol. When a tool requires payment:

  1. The client POSTs to the tool endpoint
  2. The API returns 402 Payment Required with a quote
  3. The client signs a USDC TransferWithAuthorization (EIP-3009) using your private key
  4. The client re-POSTs with the signed payment header
  5. The API processes the request and returns the result

All payment signing happens locally — your private key never leaves your machine.

Configuration

# Test mode (Base Sepolia — no real money)
toolkit = OneShotToolkit.from_private_key("0x...", test_mode=True)

# Production (Base Mainnet — real USDC)
toolkit = OneShotToolkit.from_private_key("0x...", test_mode=False)

Requirements

  • Python 3.10+
  • langchain-core >= 0.3.0
  • eth-account >= 0.13.0
  • httpx >= 0.27.0
  • pydantic >= 2.0

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_oneshot-0.1.1.tar.gz (9.7 kB view details)

Uploaded Source

Built Distribution

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

langchain_oneshot-0.1.1-py3-none-any.whl (15.0 kB view details)

Uploaded Python 3

File details

Details for the file langchain_oneshot-0.1.1.tar.gz.

File metadata

  • Download URL: langchain_oneshot-0.1.1.tar.gz
  • Upload date:
  • Size: 9.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.11

File hashes

Hashes for langchain_oneshot-0.1.1.tar.gz
Algorithm Hash digest
SHA256 5e57a41adf61cb2729215c5843dc6b8e8d996bc83aa6f462e52a4fe03e9a6e57
MD5 abc89693ffafe57ac1b887a8ec69445a
BLAKE2b-256 1b42faec8e6d26db679a5499f9b6320646f2e07348ce60bafa350de0068a6ce7

See more details on using hashes here.

File details

Details for the file langchain_oneshot-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for langchain_oneshot-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5e4ad4047bc7fb1170c98418c7eb08161a629c49e3c101fa63fd3c6b637cf4da
MD5 aecdd1b38026ba0738f3dc3c790aa5cb
BLAKE2b-256 446afced070a988fcdc1f5f0d94f6e9042af1294956f2bcb0a0099b0a78f731c

See more details on using hashes here.

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