# Launch Pump.fun Token

The `Launch Pump.fun Token` tool, part of AgentiPy, enables users to launch new tokens on the Pump.fun platform on the Solana blockchain. Pump.fun is known for facilitating the creation and trading of new tokens with initial liquidity. This tool automates the process of metadata upload and transaction creation for launching a token.

## Functionality

This tool is implemented in the `PumpfunTokenManager` class.

### Key Methods:

* `_upload_metadata(session: aiohttp.ClientSession, token_name: str, token_ticker: str, description: str, image_url: str, options: Optional[PumpfunTokenOptions] = None) -> Dict[str, Any]`:
  * (Internal method) Uploads token metadata (name, symbol, description, image, and optional social links like Twitter, Telegram, website) to IPFS via Pump.fun's API. Requires an `aiohttp.ClientSession`.
* `_create_token_transaction(session: aiohttp.ClientSession, agent: SolanaAgentKit, mint_keypair: Keypair, metadata_response: Dict[str, Any], options: Optional[PumpfunTokenOptions] = None) -> VersionedTransaction`:
  * (Internal method) Creates the token launch transaction by making a request to Pump.fun's API (`https://pumpportal.fun/api/trade-local`).
  * The payload includes the agent's public key, metadata URI from the upload, mint address, initial liquidity amount in SOL, slippage, and priority fee.
  * Returns a `VersionedTransaction` object.
* `launch_pumpfun_token(agent: SolanaAgentKit, token_name: str, token_ticker: str, description: str, image_url: str, options: Optional[PumpfunTokenOptions] = None) -> TokenLaunchResult`:
  * The main public method to launch a token.
  * Generates a new `Keypair` for the token mint.
  * Calls `_upload_metadata` to upload all token details and image.
  * Calls `_create_token_transaction` to get the transaction from Pump.fun.
  * Signs the transaction with the new mint's keypair and the agent's wallet.
  * Sends the transaction to the Solana network.
  * Returns a `TokenLaunchResult` containing the transaction `signature`, `mint` address, and `metadata_uri`.

### `PumpfunTokenOptions`

This is likely a Pydantic model or TypedDict (defined in `agentipy.types`) that includes fields such as:

* `twitter: Optional[str]`
* `telegram: Optional[str]`
* `website: Optional[str]`
* `initial_liquidity_sol: float` (Amount of SOL for initial liquidity)
* `slippage_bps: int` (Slippage in basis points)
* `priority_fee: float` (Priority fee in SOL)

##

**Critical Note:** Launching tokens on Pump.fun involves real financial transactions on the Solana Mainnet. This tool directly interacts with Pump.fun's APIs and the Solana blockchain. **Use with extreme caution.** Ensure you understand the costs, risks, and implications. It is highly recommended to use a fresh wallet (burner wallet) with only the necessary amount of SOL for the launch. Test image URLs and metadata thoroughly.

## Source Code

You can find the source code for this tool on GitHub: <https://github.com/niceberginc/agentipy/blob/main/agentipy/tools/launch_pumpfun_token.py>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.agentipy.fun/tools/launch-pump.fun-token.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
