Skip to main content

CDP Agentkit Langchain Extension

Project description

CDP Agentkit Extension - Langchain Toolkit

CDP integration with Langchain to enable agentic workflows using the core primitives defined in cdp-agentkit-core.

This toolkit contains tools that enable an LLM agent to interact with the Coinbase Developer Platform. The toolkit provides a wrapper around the CDP SDK, allowing agents to perform onchain operations like transfers, trades, and smart contract interactions.

Setup

Prerequisites

Installation

pip install cdp-langchain

Environment Setup

Set the following environment variables:

export CDP_API_KEY_NAME=<your-api-key-name>
export CDP_API_KEY_PRIVATE_KEY=$'<your-private-key>'
export OPENAI_API_KEY=<your-openai-api-key>
export NETWORK_ID=base-sepolia  # Optional: Defaults to base-sepolia

Usage

Basic Setup

from cdp_langchain.agent_toolkits import CdpToolkit
from cdp_langchain.utils import CdpAgentkitWrapper

# Initialize CDP wrapper
cdp = CdpAgentkitWrapper()

# Create toolkit from wrapper
toolkit = CdpToolkit.from_cdp_agentkit_wrapper(cdp)

View available tools:

tools = toolkit.get_tools()
for tool in tools:
    print(tool.name)

The toolkit provides the following tools:

  1. get_wallet_details - Get details about the MPC Wallet
  2. get_balance - Get balance for specific assets
  3. request_faucet_funds - Request test tokens from faucet
  4. transfer - Transfer assets between addresses
  5. trade - Trade assets (Mainnet only)
  6. deploy_token - Deploy ERC-20 token contracts
  7. mint_nft - Mint NFTs from existing contracts
  8. deploy_nft - Deploy new NFT contracts
  9. register_basename - Register a basename for the wallet
  10. wow_create_token - Deploy a token using Zora's Wow Launcher (Bonding Curve)
  11. wow_buy_token - Buy Zora Wow ERC20 memecoin with ETH
  12. wow_sell_token - Sell Zora Wow ERC20 memecoin for ETH

Using with an Agent

from langchain_openai import ChatOpenAI
from langgraph.prebuilt import create_react_agent

# Initialize LLM
llm = ChatOpenAI(model="gpt-4o-mini")

# Get tools and create agent
tools = toolkit.get_tools()
agent_executor = create_react_agent(llm, tools)

# Example usage
events = agent_executor.stream(
    {"messages": [("user", "Send 0.005 ETH to john2879.base.eth")]},
    stream_mode="values"
)

for event in events:
    event["messages"][-1].pretty_print()

Expected output:

Transferred 0.005 of eth to john2879.base.eth.
Transaction hash for the transfer: 0x78c7c2878659a0de216d0764fc87eff0d38b47f3315fa02ba493a83d8e782d1e
Transaction link for the transfer: https://sepolia.basescan.org/tx/0x78c7c2878659a0de216d0764fc87eff0d38b47f3315fa02ba493a83d8e782d1

CDP Tookit Specific Features

Wallet Management

The toolkit maintains an MPC wallet that persists between sessions:

# Export wallet data
wallet_data = cdp.export_wallet()

# Import wallet data
values = {"cdp_wallet_data": wallet_data}
cdp = CdpAgentkitWrapper(**values)

Network Support

The toolkit supports multiple networks.

Gasless Transactions

The following operations support gasless transactions on Base Mainnet:

  • USDC transfers
  • EURC transfers
  • cbBTC transfers

Contributing

See CONTRIBUTING.md for detailed setup instructions and contribution guidelines.

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

cdp_langchain-0.0.5.tar.gz (7.2 kB view details)

Uploaded Source

Built Distribution

cdp_langchain-0.0.5-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

Details for the file cdp_langchain-0.0.5.tar.gz.

File metadata

  • Download URL: cdp_langchain-0.0.5.tar.gz
  • Upload date:
  • Size: 7.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.13.0 Darwin/23.6.0

File hashes

Hashes for cdp_langchain-0.0.5.tar.gz
Algorithm Hash digest
SHA256 b5d0b8d4add4dbef5aa913a4f942c43afd7b7d04ab05d18872be4cbc96a4b7f0
MD5 4d0d3d793a31e2183ec4cc50a7683842
BLAKE2b-256 ebb8e68ca4d36bbe973b25b1703e0998862bc8ad60470af9f571c3b0740bea39

See more details on using hashes here.

File details

Details for the file cdp_langchain-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: cdp_langchain-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 8.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.13.0 Darwin/23.6.0

File hashes

Hashes for cdp_langchain-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 ff4502dc0b11f3dce1a9c46c14f5826980c5f8e58ff7a57de76cdb7d60c39a30
MD5 2041a0157cc07583799229110239db76
BLAKE2b-256 4cb28896413d9518650ff9911b4fc9e5fe34864acf87ca3cd3ebb5ffaaf6ab1f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page