open-index/open-npm huggingface dataset:
npm package: @ijusplab/helpers
Description: General utility functions for Javascript projects
Author: Caio Moysés de Lima
Latest version: 1.2.0

# Helpers

General-purpose Javascript functions used by the Innovation Lab of the Federal Justice of São Paulo (iJuspLab).

The library was developed in Typescript and can be used both in Node and in the browser. Distribution files are located inside the folder `./dist` and type declaration files inside the folder `./types`.

## Installation:
```
npm install @ijuplab/helpers
```
or
```
yarn add @ijuplab/helpers
```

## Usage:
```javascript
const { CDate } = require('@ijusplab/helpers');

console.log(new CDate().toString());
```
or 
```javascript
ìmport { CDate } from '@ijusplab/helpers';

console.log(new CDate().toString());
```

## Usage in the browser through a CDN:

As a global object:
```html
<!-- Instalando no escopo global: -->
<script src="https://unpkg.com/@ijusplab/helpers/dist/index.umd.min.js"></script>

<script>
  // Os métodos da biblioteca estarão disponíveis por meio do objeto global Helpers.
  console.log(Helpers);
  console.log(new Helpers.CDate().toString());
</script>
```
As a ES2016 module:
```html
<!-- Instalando como um módulo: -->
<script type="module">
  import { CDate } from 'https://unpkg.com/@ijusplab/helpers/dist/index.esm.min.js';

  console.log(new CDate().toString());
</script>
```

## Licensing

### Code

All software files are distributed under the [MIT license](LICENSE). Copyright held by iJuspLab.

### Assets

Any institutional symbols, such as coats of arms, emblems, badges, logos etc, belonging to or representing the Federal Justice of São Paulo (Justiça Federal de São Paulo - JFSP), iJuspLab, Equipe de Gestão de Dados - EGD, Incubadora de Soluções Tecnológicas, Núcleo de Inovação Tecnológica - NUIT or any of their agencies, departments, sectors, branches, affiliates, partners or controlling organizations, either stored in this repository or referenced herein through hyperlinks, are not licensed and may not be used without the prior written consent of the legal representatives of the Federal Justice of São Paulo.

<div style="display: flex; align-items: center; justify-content: space-around;">
  <img src="https://unpkg.com/@ijusplab/static-assets@latest/assets/ijusplab.png" height="80" />
  <img src="https://unpkg.com/@ijusplab/static-assets@latest/assets/incubadora.png" height="50" />
</div>
npm package: @ijusttookadnatest/artpeace-mcp
Description: MCP server for collaborative pixel art creation on a shared canvas.
Author: kasarlabs
Latest version: 0.1.1

# Snak - ArtPeace Plugin

The ArtPeace Plugin provides tools for interacting with pixel art on the Starknet blockchain, allowing users to place pixels on a collaborative canvas.

## Features

This plugin adds the following tool:

- **place_pixel**: Places a pixel on the collaborative canvas, with optional parameters.

## Usage

The ArtPeace Plugin is used internally by the Starknet Agent and doesn't need to be called directly. When the agent is initialized, it automatically registers this tool, making it available for use.

## Example

When asking the agent to perform ArtPeace-related tasks, it will use the place_pixel tool:

```
"Place a red pixel at position x:100, y:200"
"Draw a blue dot on the canvas at coordinates 150,300"
```

## Development

To extend this plugin, add new tools in the `src/tools` directory and register them in the `registerTools` function in `src/tools/index.ts`.
npm package: @ijusttookadnatest/avnu-mcp
Description: MCP server for AVNU token swapping on Starknet
Author: kasarlabs
Latest version: 0.4.5

# Snak - AVNU Plugin

The AVNU Plugin provides tools for interacting with the AVNU decentralized exchange on the Starknet blockchain, enabling token swaps and route information.

## Features

This plugin adds the following tools:

- **avnu_swap_tokens**: Swap a specified amount of one token for another token.
- **avnu_get_route**: Get a specific routing path for a token swap.

## Usage

The AVNU Plugin is used internally by the Starknet Agent and doesn't need to be called directly. When the agent is initialized, it automatically registers these tools, making them available for use.

## Example

When asking the agent to perform AVNU-related tasks, it will use the appropriate tool from this plugin:

```
"Swap 0.1 ETH for USDC on AVNU"  // Uses avnu_swap_tokens
"Find the best route to swap ETH to DAI"  // Uses avnu_get_route
```

## Development

To extend this plugin, add new tools in the `src/tools` directory and register them in the `registerTools` function in `src/tools/index.ts`.
npm package: @ijusttookadnatest/braavos-mcp
Description: MCP server for Braavos wallet account creation and deployment on Starknet
Author: kasarlabs
Latest version: 0.1.0

# Snak - Braavos Plugin

The Braavos Plugin provides tools for creating and deploying Braavos wallet accounts on the Starknet blockchain.

## Features

This plugin adds the following tools:

- **create_new_braavos_account**: Create a new Braavos account and return the privateKey, publicKey, and contractAddress.
- **deploy_existing_braavos_account**: Deploy an existing Braavos Account and return the privateKey, publicKey, and contractAddress.

## Usage

The Braavos Plugin is used internally by the Starknet Agent and doesn't need to be called directly. When the agent is initialized, it automatically registers these tools, making them available for use.

## Example

When asking the agent to perform Braavos-related tasks, it will use the appropriate tool from this plugin:

```
"Create a new Braavos wallet for me"  // Uses create_new_braavos_account
"Deploy my existing Braavos account"  // Uses deploy_existing_braavos_account
```

## Development

To extend this plugin, add new tools in the `src/tools` directory and register them in the `registerTools` function in `src/tools/index.ts`.
npm package: @ijusttookadnatest/contract-mcp
Description: MCP server for Starknet contract operations including declaration and deployment.
Author: kasarlabs
Latest version: 0.1.1

# Snak - Contract Plugin

The Contract Plugin provides comprehensive tools for declaring, deploying, and managing Starknet smart contracts.

## Features

This plugin adds the following tools:

- **declare_contract**: Declare a Starknet contract using sierra and casm file paths.
- **deploy_contract**: Deploy a declared Starknet contract using sierra and casm file paths.
- **get_constructor_params**: Get constructor parameters from a contract sierra file.

## Usage

The Contract Plugin is used internally by the Starknet Agent and doesn't need to be called directly. When the agent is initialized, it automatically registers these tools, making them available for use.

## Example

When asking the agent to perform contract-related tasks, it will use the appropriate tool from this plugin:

```
"Declare my contract using these files..."  // Uses declare_contract
"Deploy the contract at class hash 0x..."  // Uses deploy_contract
"What are the constructor parameters for this contract?"  // Uses get_constructor_params
```

## Development

To extend this plugin, add new tools in the `src/tools` directory and register them in the `registerTools` function in `src/index.ts`.
npm package: @ijusttookadnatest/ekubo-mcp
Description: MCP server for Ekubo protocol interactions on Starknet
Author: kasarlabs
Latest version: 0.5.1

# Snak - Ekubo MCP

The Ekubo MCP provides tools for interacting with Ekubo Protocol, the next-generation AMM (Automated Market Maker) on Starknet that revolutionizes DeFi with ultra-concentrated liquidity and singleton architecture.

## About Ekubo Protocol

Ekubo is Starknet's leading AMM, commanding 60% of the total AMM TVL and the majority of trading volume on the network. Built by former Uniswap Labs engineers, it features:

- **Singleton Architecture**: All pools consolidated into a single Cairo smart contract for 99% cheaper pool creation
- **Ultra-Concentrated Liquidity**: Up to 100x more capital efficient positions with precision down to 1/100th of a basis point
- **Extensions System**: Custom pool logic deployment without governance approval
- **Till Pattern**: Gas-optimized deferred token transfers

## Features

This MCP adds the following tools:

### Read Operations

- **get_pool_info**: Get comprehensive information about an Ekubo pool including current price, liquidity, and fee data.
- **get_token_price**: Get the price of a token via Ekubo pools by querying the pool price directly from the Core contract.
- **get_pool_liquidity**: Get the total liquidity available in an Ekubo pool at the current tick.
- **get_pool_fees_per_liquidity**: Get the cumulative fees per unit of liquidity for an Ekubo pool (both token0 and token1).

### Write Operations

- **swap**: Swap tokens on Ekubo DEX. Supports both exact input and exact output swaps with configurable slippage tolerance.
- **create_position**: Create a new liquidity position (NFT) in an Ekubo pool within a specified price range (concentrated liquidity).
- **add_liquidity**: Add liquidity to an existing Ekubo pool position without minting a new NFT.
- **withdraw_liquidity**: Withdraw liquidity from an Ekubo pool position. Can withdraw full position, partial position, or only collect fees.
- **transfer_position**: Transfer an Ekubo NFT position to another address.

## Usage

The Ekubo MCP is used by Claude Code and compatible MCP clients. Configure it in your MCP settings to enable Ekubo Protocol functionality.

## Example

When asking the agent to perform Ekubo-related tasks, it will use the appropriate tool from this MCP:

```
"Get info about the ETH/USDC pool on Ekubo"  // Uses get_pool_info
"What's the price of STRK on Ekubo?"  // Uses get_token_price
"How much liquidity is in the ETH/USDC pool?"  // Uses get_pool_liquidity
"Swap 0.1 ETH for USDC on Ekubo"  // Uses swap
"Create a liquidity position for ETH/USDC"  // Uses create_position
"Add liquidity to my existing position"  // Uses add_liquidity
"Withdraw liquidity from my position"  // Uses withdraw_liquidity
"Transfer my position NFT to another address"  // Uses transfer_position
```

## Development

To extend this MCP, add new tools in the `src/tools` directory and register them in the `registerTools` function in `src/tools/index.ts`.
npm package: @ijusttookadnatest/erc20-mcp
Description: MCP server for comprehensive ERC20 token operations including transfers, allowances, and contract deployment.
Author: kasarlabs
Latest version: 1.0.0

# Snak - ERC20 Plugin

The ERC20 Plugin provides comprehensive tools for interacting with ERC20 tokens on the Starknet blockchain.

## Features

This plugin adds the following tools:

- **erc20_get_allowance**: Get the amount of tokens that a spender is allowed to spend on behalf of an owner.
- **erc20_get_my_given_allowance**: Get the amount of tokens that a spender is allowed to spend on your behalf.
- **erc20_get_allowance_given_to_me**: Get the amount of tokens that you are allowed to spend on behalf of an owner.
- **erc20_get_total_supply**: Get the total supply of a token.
- **erc20_transfer_from**: Transfer tokens from one address to another using an allowance.
- **erc20_get_balance**: Get the balance of an asset for a given wallet address.
- **erc20_get_own_balance**: Get the balance of an asset in your wallet.
- **erc20_approve**: Approve a spender to spend tokens on your behalf.
- **erc20_transfer**: Transfer ERC20 tokens to a specific address.
- **erc20_deploy_new_contract**: Create and deploy a new ERC20 contract.
- **erc20_get_symbol**: Get the symbol of an ERC20 token from its contract address.

## Usage

The ERC20 Plugin is used internally by the Starknet Agent and doesn't need to be called directly. When the agent is initialized, it automatically registers these tools, making them available for use.

## Example

When asking the agent to perform ERC20-related tasks, it will use the appropriate tool from this plugin:

```
"Approve 50 USDC for address 0x1234..."  // Uses erc20_approve
"What's the total supply of DAI?"  // Uses erc20_get_total_supply
"Deploy a new token called MyToken"  // Uses erc20_deploy_new_contract
"What's the symbol of token at address 0x1234..."  // Uses erc20_get_symbol
```

## Development

To extend this plugin, add new tools in the `src/tools` directory and register them in the `registerTools` function in `src/tools/index.ts`.
npm package: @ijusttookadnatest/erc721-mcp
Description: MCP server for ERC721 NFT management, including ownership, transfers, and approvals.
Author: kasarlabs
Latest version: 0.1.0

# Snak - ERC721 Plugin

The ERC721 Plugin provides comprehensive tools for interacting with ERC721 Non-Fungible Tokens (NFTs) on the Starknet blockchain.

## Features

This plugin adds the following tools:

- **erc721_owner_of**: Get the owner of a specific NFT.
- **erc721_get_balance**: Get the balance of NFTs for a given wallet address.
- **erc721_get_own_balance**: Get the balance of NFTs in your wallet.
- **erc721_is_approved_for_all**: Check if an operator is approved for all NFTs of a given owner.
- **erc721_get_approved**: Get the approved address for a specific NFT.
- **erc721_transfer_from**: Transfer an NFT from one address to another.
- **erc721_transfer**: Transfer an NFT to a specific address.
- **erc721_approve**: Approve an address to manage a specific NFT.
- **erc721_safe_transfer_from**: Safely transfer an NFT from one address to another with additional data.
- **erc721_set_approval_for_all**: Set or revoke approval for an operator to manage all NFTs of the caller.
- **deploy_erc721**: Create and deploy a new ERC721 contract.

## Usage

The ERC721 Plugin is used internally by the Starknet Agent and doesn't need to be called directly. When the agent is initialized, it automatically registers these tools, making them available for use.

## Example

When asking the agent to perform NFT-related tasks, it will use the appropriate tool from this plugin:

```
"Who owns the NFT with ID 123 in collection 0x1234...?"  // Uses erc721_owner_of
"Transfer my NFT to 0x5678..."  // Uses erc721_transfer
"Deploy a new NFT collection"  // Uses deploy_erc721
```

## Development

To extend this plugin, add new tools in the `src/tools` directory and register them in the `registerTools` function in `src/tools/index.ts`.
npm package: @ijusttookadnatest/erc721-mcp-test
Description: MCP server for ERC721 NFT management, including ownership, transfers, and approvals.
Author: kasarlabs
Latest version: 0.1.0

# Snak - ERC721 Plugin

The ERC721 Plugin provides comprehensive tools for interacting with ERC721 Non-Fungible Tokens (NFTs) on the Starknet blockchain.

## Features

This plugin adds the following tools:

- **erc721_owner_of**: Get the owner of a specific NFT.
- **erc721_get_balance**: Get the balance of NFTs for a given wallet address.
- **erc721_get_own_balance**: Get the balance of NFTs in your wallet.
- **erc721_is_approved_for_all**: Check if an operator is approved for all NFTs of a given owner.
- **erc721_get_approved**: Get the approved address for a specific NFT.
- **erc721_transfer_from**: Transfer an NFT from one address to another.
- **erc721_transfer**: Transfer an NFT to a specific address.
- **erc721_approve**: Approve an address to manage a specific NFT.
- **erc721_safe_transfer_from**: Safely transfer an NFT from one address to another with additional data.
- **erc721_set_approval_for_all**: Set or revoke approval for an operator to manage all NFTs of the caller.
- **deploy_erc721**: Create and deploy a new ERC721 contract.

## Usage

The ERC721 Plugin is used internally by the Starknet Agent and doesn't need to be called directly. When the agent is initialized, it automatically registers these tools, making them available for use.

## Example

When asking the agent to perform NFT-related tasks, it will use the appropriate tool from this plugin:

```
"Who owns the NFT with ID 123 in collection 0x1234...?"  // Uses erc721_owner_of
"Transfer my NFT to 0x5678..."  // Uses erc721_transfer
"Deploy a new NFT collection"  // Uses deploy_erc721
```

## Development

To extend this plugin, add new tools in the `src/tools` directory and register them in the `registerTools` function in `src/tools/index.ts`.
npm package: @ijusttookadnatest/fibrous-mcp
Description: MCP server for interacting with the Fibrous decentralized exchange, enabling single and batch token swaps.
Author: kasarlabs
Latest version: 0.5.5

# Snak - Fibrous Plugin

The Fibrous Plugin provides comprehensive tools for token swapping on Starknet using the Fibrous Router protocol, which finds the best routes across multiple DEXs.

## Features

This plugin adds the following tools:

- **fibrous_swap**: Swap a token for another token using the optimal route.
- **fibrous_batch_swap**: Swap multiple tokens for another token in a single transaction.
- **fibrous_get_route**: Get a specific route for swapping tokens with detailed path information.

## Usage

The Fibrous Plugin is used internally by the Starknet Agent and doesn't need to be called directly. When the agent is initialized, it automatically registers these tools, making them available for use.

## Example

When asking the agent to perform Fibrous-related tasks, it will use the appropriate tool from this plugin:

```
"Swap 100 USDC for ETH"  // Uses fibrous_swap
"What's the best route to swap DAI for STRK?"  // Uses fibrous_get_route
"Swap multiple tokens to USDC"  // Uses fibrous_batch_swap
```

## Development

To extend this plugin, add new tools in the `src/tools` directory and register them in the `registerTools` function in `src/index.ts`.
npm package: @ijusttookadnatest/okx-mcp
Description: MCP server for OKX wallet account creation and deployment on Starknet
Author: kasarlabs
Latest version: 0.1.0

# Snak - OKX Plugin

The OKX Plugin provides tools for creating and deploying OKX wallet accounts on the Starknet blockchain.

## Features

This plugin adds the following tools:

- **create_new_okx_account**: Create a new OKX account and return the privateKey, publicKey, and contractAddress.
- **deploy_existing_okx_account**: Deploy an existing OKX Account and return the privateKey, publicKey, and contractAddress.

## Usage

The OKX Plugin is used internally by the Starknet Agent and doesn't need to be called directly. When the agent is initialized, it automatically registers these tools, making them available for use.

## Example

When asking the agent to perform OKX-related tasks, it will use the appropriate tool from this plugin:

```
"Create a new OKX wallet for me"  // Uses create_new_okx_account
"Deploy my existing OKX account"  // Uses deploy_existing_okx_account
```

## Development

To extend this plugin, add new tools in the `src/tools` directory and register them in the `registerTools` function in `src/tools/index.ts`.
npm package: @ijusttookadnatest/openzeppelin-mcp
Description: MCP server for creating and deploying OpenZeppelin account contracts on Starknet.
Author: kasarlabs
Latest version: 0.1.0

# Snak - OpenZeppelin Plugin

The OpenZeppelin Plugin provides tools for creating and deploying OpenZeppelin account contracts on the Starknet blockchain.

## Features

This plugin adds the following tools:

- **create_new_openzeppelin_account**: Create a new OpenZeppelin account and return the privateKey, publicKey, and contractAddress.
- **deploy_existing_openzeppelin_account**: Deploy an existing OpenZeppelin Account and return the privateKey, publicKey, and contractAddress.

## Usage

The OpenZeppelin Plugin is used internally by the Starknet Agent and doesn't need to be called directly. When the agent is initialized, it automatically registers these tools, making them available for use.

## Example

When asking the agent to perform OpenZeppelin-related tasks, it will use the appropriate tool from this plugin:

```
"Create a new OpenZeppelin wallet for me"  // Uses create_new_openzeppelin_account
"Deploy my existing OpenZeppelin account"  // Uses deploy_existing_openzeppelin_account
```

## Development

To extend this plugin, add new tools in the `src/tools` directory and register them in the `registerTools` function in `src/tools/index.ts`.
npm package: @ijusttookadnatest/opus-mcp
Description: MCP server for interacting with the Opus lending protocol, enabling creation and management of Troves for borrowing.
Author: kasarlabs
Latest version: 0.1.0

# Snak - Opus Plugin

The Opus Plugin provides comprehensive tools for interacting with the Opus protocol on Starknet, a decentralized borrowing platform where users can create and manage Troves (collateralized debt positions).

## Features

This plugin adds the following tools:

- **open_trove**: Open a new Trove on Opus with collateral and borrow CASH.
- **get_user_troves**: Get trove IDs for a specific address on Opus.
- **get_trove_health**: Get the health metrics of a specific trove.
- **get_borrow_fee**: Get the current borrow fee for Opus.
- **deposit_trove**: Deposit additional collateral to an existing Trove.
- **withdraw_trove**: Withdraw collateral from a Trove on Opus.
- **borrow_trove**: Borrow additional CASH from an existing Trove.
- **repay_trove**: Repay CASH debt for a Trove on Opus.

## Usage

The Opus Plugin is used internally by the Starknet Agent and doesn't need to be called directly. When the agent is initialized, it automatically registers these tools, making them available for use.

## Example

When asking the agent to perform Opus-related tasks, it will use the appropriate tool from this plugin:

```
"Open a trove with 1 ETH collateral and borrow 1000 CASH"  // Uses open_trove
"What troves do I have on Opus?"  // Uses get_user_troves
"Check the health of my trove"  // Uses get_trove_health
"Deposit more collateral to my trove"  // Uses deposit_trove
"Repay 500 CASH on my trove"  // Uses repay_trove
```

## Development

To extend this plugin, add new tools in the `src/tools` directory and register them in the `registerTools` function in `src/index.ts`.
npm package: @ijusttookadnatest/scarb-mcp
Description: MCP server for Scarb Cairo compilation and program execution operations.
Author: kasarlabs
Latest version: 0.1.1

# Snak - Scarb Plugin

The Scarb Plugin provides comprehensive tools for managing Scarb projects, the build toolchain for Cairo and Starknet smart contracts.

## Features

This plugin adds the following tools:

- **install_scarb**: Install Scarb Cairo toolchain with optional version specification.
- **init_project**: Initialize a new Scarb project with specified name and options.
- **build_project**: Build a Scarb project with specified build options.
- **execute_program**: Execute a Cairo program with optional function and arguments.
- **prove_program**: Generate a proof for a Cairo program execution using Stone prover.
- **verify_program**: Verify a proof generated for a Cairo program.

## Usage

The Scarb Plugin is used internally by the Starknet Agent and doesn't need to be called directly. When the agent is initialized, it automatically registers these tools, making them available for use.

## Example

When asking the agent to perform Scarb-related tasks, it will use the appropriate tool from this plugin:

```
"Install Scarb version 2.5.0"  // Uses install_scarb
"Initialize a new Cairo project called my_project"  // Uses init_project
"Build my Scarb project"  // Uses build_project
"Execute the main function in my Cairo program"  // Uses execute_program
"Generate a proof for my Cairo program"  // Uses prove_program
```

## Development

To extend this plugin, add new tools in the `src/tools` directory and register them in the `registerTools` function in `src/index.ts`.
npm package: @ijusttookadnatest/starknet-rpc-mcp
Description: MCP server for direct blockchain interaction via RPC methods, providing access to on-chain data and state.
Author: kasarlabs
Latest version: 0.4.0

# Snak - RPC Plugin

The RPC Plugin provides tools for interacting directly with the Starknet blockchain via RPC (Remote Procedure Call) methods, enabling access to blockchain data and state.

## Features

This plugin adds the following RPC tools:

- **get_chain_id**: Retrieve the unique identifier (chain ID) of the Starknet network.
- **get_syncing_status**: Retrieve the syncing status of the Starknet node.
- **get_class_hash**: Retrieve the unique class hash for a contract at a specific address.
- **get_spec_version**: Get the current spec version from the Starknet RPC provider.
- **get_block_with_tx_hashes**: Retrieve block details including transaction hashes.
- **get_block_with_receipts**: Fetch block details with transaction receipts.
- **get_transaction_status**: Fetch transaction status by hash.
- **get_block_number**: Get the current block number from the Starknet network.
- **get_block_transaction_count**: Get the number of transactions in a specific block.
- **get_storage_at**: Get the storage value at a specific slot for a contract.
- **get_class**: Retrieve the complete class definition of a contract.
- **get_class_at**: Fetch the class definition of a contract at a specific address.

## Usage

The RPC Plugin is used internally by the Starknet Agent and doesn't need to be called directly. When the agent is initialized, it automatically registers these tools, making them available for use.

## Example

When asking the agent to perform RPC-related tasks, it will use the appropriate tool from this plugin:

```
"What's the current block number?"  // Uses get_block_number
"Show me the status of transaction 0x1234..."  // Uses get_transaction_status
"What's the chain ID of the current network?"  // Uses get_chain_id
```

## Development

To extend this plugin, add new tools in the `src/tools` directory and register them in the `registerTools` function in `src/tools/index.ts`.
npm package: @ijusttookadnatest/transaction-mcp
Description: MCP server for simulating various types of transactions without execution.
Author: kasarlabs
Latest version: 0.1.1

# Snak - Transaction Plugin

The Transaction Plugin provides tools for simulating various types of transactions on the Starknet blockchain without actually executing them.

## Features

This plugin adds the following simulation tools:

- **simulate_transaction**: Simulate an invoke transaction without executing it.
- **simulate_deploy_transaction**: Simulate a deploy transaction.
- **simulate_declare_transaction**: Simulate a declare transaction.
- **simulate_deploy_account_transaction**: Simulate a deploy account transaction.

## Usage

The Transaction Plugin is used internally by the Starknet Agent and doesn't need to be called directly. When the agent is initialized, it automatically registers these tools, making them available for use.

## Example

When asking the agent to perform transaction-related tasks, it will use the appropriate tool from this plugin:

```
"What would happen if I called this contract function?"  // Uses simulate_transaction
"Show me the result of deploying this contract without actually deploying it"  // Uses simulate_deploy_transaction
```

## Development

To extend this plugin, add new tools in the `src/tools` directory and register them in the `registerTools` function in `src/tools/index.ts`.
npm package: @ijusttookadnatest/unruggable-mcp
Description: MCP server for creating and analyzing memecoins with focus on safer token launches and liquidity locking.
Author: kasarlabs
Latest version: 0.1.0

# Snak - Unruggable Plugin

The Unruggable Plugin provides comprehensive tools for creating and managing memecoins on Starknet using the Unruggable protocol, which ensures fair launches with locked liquidity.

## Features

This plugin adds the following tools:

- **is_memecoin**: Check if a given address is a memecoin created by the Unruggable Factory.
- **get_locked_liquidity**: Get locked liquidity information for a specific token.
- **create_memecoin**: Create a new memecoin using the Unruggable Factory with specified parameters.
- **launch_on_ekubo**: Launch a memecoin on Ekubo DEX with concentrated liquidity.

## Usage

The Unruggable Plugin is used internally by the Starknet Agent and doesn't need to be called directly. When the agent is initialized, it automatically registers these tools, making them available for use.

## Example

When asking the agent to perform Unruggable-related tasks, it will use the appropriate tool from this plugin:

```
"Create a memecoin called PEPE with 1 million supply"  // Uses create_memecoin
"Is this token an Unruggable memecoin?"  // Uses is_memecoin
"Check the locked liquidity for this token"  // Uses get_locked_liquidity
"Launch my memecoin on Ekubo"  // Uses launch_on_ekubo
```

## Development

To extend this plugin, add new tools in the `src/tools` directory and register them in the `registerTools` function in `src/index.ts`.
npm package: @ijusttookadnatest/vesu-mcp
Description: MCP server for interacting with the Vesu protocol, enabling deposit and withdrawal operations for earning positions.
Author: kasarlabs
Latest version: 0.4.0

# Snak - Vesu Plugin

The Vesu Plugin provides comprehensive tools for interacting with the Vesu protocol on Starknet, a lending and borrowing platform where users can deposit tokens to earn yield.

## Features

This plugin adds the following tools:

- **vesu_deposit_earn**: Deposit tokens to earn yield on Vesu protocol.
- **vesu_withdraw_earn**: Withdraw tokens from an earning position on Vesu protocol.

## Usage

The Vesu Plugin is used internally by the Starknet Agent and doesn't need to be called directly. When the agent is initialized, it automatically registers these tools, making them available for use.

## Example

When asking the agent to perform Vesu-related tasks, it will use the appropriate tool from this plugin:

```
"Deposit 100 USDC to earn on Vesu"  // Uses vesu_deposit_earn
"Withdraw my USDC from Vesu"  // Uses vesu_withdraw_earn
"Earn yield on my ETH using Vesu"  // Uses vesu_deposit_earn
```

## Development

To extend this plugin, add new tools in the `src/tools` directory and register them in the `registerTools` function in `src/index.ts`.
npm package: @ijyrs/spotify-webapi
Description: An open-source, unofficial SDK package for developers looking to integrate the Spotify Web API with their Node.js applications.
Author: iJyrs
Latest version: 0.0.7

# spotify-webapi (WIP)
[![Version](https://img.shields.io/npm/v/@ijyrs/spotify-webapi.svg)](https://www.npmjs.com/package/@ijyrs/spotify-webapi)
[![License](https://img.shields.io/npm/l/@ijyrs/spotify-webapi)]()
[![Package Size MZ](https://img.shields.io/bundlephobia/minzip/@ijyrs/spotify-webapi)]()
---

An open-source, unofficial SDK package for developers looking to integrate the Spotify Web API with their Node.js applications.

### 📝 Package Direction / Disclaimers

The objective of developing this package is to create a user-friendly sdk for the Spotify Web API. Therefore, the focus of the development is not on **minimizing the package's size** or **ensuring compatibility with all browsers**.

⚠️ This project is still under heavy development! Use at your own risk. ⚠️

*There are going to be missing features & bugs,* please open an [Issue]() and I will get to it eventually.

# 💾 Installation / Prerequisites

You can install the package via `npm install @ijyrs/spotify-webapi`.

To access Spotify's Web API, you must create a application, you can find the link [here]().

# 🎫 Documentation

*Coming soon.* **Should** be available once the library reaches v1.0.0 or when mostly completed.

### Quick Example:

For this example, we will be using the `ClientCredentialsMethod` to authenticate with Spotify's WebAPI.

```typescript
const method = await new ClientCredentialsMethod(CLIENT_ID, CLIENT_SECRET, {
    autoRefresh: true
}).authenticate();

// The client cannot be insantiated without being verified. (Has a valid access token)
const client = new SpotifyClient<BasicRoutes>(method);

// Responses will have types in the future...
const data: any = await client.routes.search({
    q: "Me and Your Mama",
    type: ["track"]
});
```

# 🙌 Sources / Acknowledgements

- Spotify Web API Documentation: [Click here](https://developer.spotify.com/documentation/web-api)