open-index/open-npm huggingface dataset:
npm package: @limechain/gimlet-anchor-instruction-input-generator
Description: Generate instruction JSON files dynamically from JS tests for Agave Ledger Tool
Author: LimeChain
Latest version: 0.0.2

# gimlet-anchor-instruction-input-generator
Gimlet npm package for generating Solana Anchor programs testing input

## Overview

This package is a generator for JSON input files that are used to run programs on Agave Ledger Tool and execute specific instructions on Solana. It is designed to work with Gimlet, a framework for managing Solana programs and instructions.

## Features

- Dynamically generates instruction JSON files from JS/TS tests.
- Supports multi-program Anchor projects.
- Outputs files in a structured directory for easy integration with Gimlet and Agave Ledger Tool.

## Usage

### Example

```typescript
describe("Unit tests for your program", () => {
  it("Is initialized!", async () => {
    // Write your test case for your anchor program 

    const ix = program.methods.initialize();
    const ix_data = (await ix.instruction()).data; // .instruction() to get the right instruction data (serialized form)
    const tx = await ix.rpc();

    generateInstruction(
      program.programId.toString(),
      "initialize",
      ix_data, // This includes the (instruction discriminator + instruction_data(parameters to a function))
      [
        { key: provider.publicKey.toString(), is_signer: true, is_writable: true },
        { key: anchor.web3.SystemProgram.programId.toString(), is_signer: false, is_writable: false }
      ]
    );
  });
});
```

This will save the JSON input file in `input/instruction_name.json`. by default.

### If you have a multi-program anchor project:

```typescript
generateInstruction(
      program.programId.toString(),
      "initialize",
      ix_data, // This includes the (instruction discriminator + instruction_data(parameters to a function))
      [
        { key: provider.publicKey.toString(), is_signer: true, is_writable: true },
        { key: anchor.web3.SystemProgram.programId.toString(), is_signer: false, is_writable: false }
      ],
      "your_program_name"
    );
```

This will save the JSON input file in `input/your_program_name/instruction_name.json`.

## How it relates to Gimlet
- Gimlet needs and JSON file for the instruction you want to debug in order to feed it to `agave-ledger-tool`.
- Gimlet uses it to run the program in mocked environment and execute the specific instruction you want to debug.
- This package gives the user the possibility to generate that file from his tests.

## Functions

### `generateInstruction`

Generates a Solana instruction JSON file.

**Parameters:**
- `programId`: Public key of the Solana program.
- `instructionName`: Name of the instruction.
- `instructionData`: Buffer containing instruction parameters.
- `accounts`: Array of `Account` objects.
- `programName`: (Optional) Name of the program for multi-program projects.

### `Account` Type

```typescript
type Account = {
  key: string;
  is_signer: boolean;
  is_writable: boolean;
}
```

## Installation

```sh
npm gimlet-anchor-instruction-input-generator
```
npm package: @limechain/rollup-codes-mcp
Description: MCP server that provides rollup data from RollupCodes
Author: LimeChain
Latest version: 1.0.4

# RollupCodes MCP

MCP server that provides rollup data from [RollupCodes](https://rollup.codes)

## Setup

### Claude Desktop or Cursor

Add the following configuration:

```json
{
  "mcpServers": {
    "rollup-codes": {
      "command": "npx",
      "args": [
        "@limechain/rollup-codes-mcp"
      ]
    }
  }
}
```

#### Claude Desktop config file location

**Mac**: `~/Library/Application Support/Claude/claude_desktop_config.json`

**Windows**: `%APPDATA%\Claude\claude_desktop_config.json`

#### Cursor config file location

**Mac**: `~/.cursor/mcp.json`

**Windows**: `%USERPROFILE%\.cursor\mcp.json`

## Usage

Once configured, you can ask agent for rollup-specific information, for example:

 -  Can I deploy this smart contract on [RollupName]
 -  What OPCODEs are available on [RollupName]
 - What are the addresses of built-in contracts (e.g. bridges or oracles) on [RollupName]?

## Development
1. Clone the repository:
```bash
git clone https://github.com/LimeChain/rollup-codes-mcp
cd rollup-codes-mcp
```
2. Install dependencies
```bash
npm install
```
3. Build the project
```bash
npm run build
```

### Configuration with Claude Desktop or Cursor

```json
{
  "mcpServers": {
    "rollup-codes": {
      "command": "node",
      "args": [
          "<absoute_path_to_repo>/build/index.js"
      ]
    }
  }
}
```
npm package: @limechain/tx-inclusion-sdk
Description: The SDK package is designed to help the interaction with the Transaction Inclusion Contracts (https://github.com/LimeChain/tx-inclusion-contracts) in order to gather all the needed data for a transaction and pass it to the contracts for verification.
Author: LimeChain
Latest version: 1.0.8

[![MIT License][license-shield]][license-url]

## Transaction Inclusion SDK

The SDK package is designed to help the interaction with the [Transaction Inclusion Contracts](https://github.com/LimeChain/tx-inclusion-contracts) in order to gather all the needed data for a transaction and pass it to the contracts for verification.
It is part of the ongoing effort of [LimeLabs](https://limelabs.tech) and [LimeChain](https://limechain.tech) to give back and contribute to the blockchain community in the form of open source tooling and public goods infrastructure.

## Usage Example

```JavaScript
import { TxInclusionSDK } from "@limechain/tx-inclusion-sdk";

const txInclusionSdk = new TxInclusionSDK(rpcUrl);
const txInclusionProof = await txInclusionSdk.getTransactionInclusionProof(txHash);

console.log(txInclusionProof);
```

Where `rpcUrl` should be RPC provider URL, for example Infura.

[license-url]: https://github.com/LimeChain/tx-inclusion-sdk/blob/main/LICENSE.txt
[license-shield]: https://img.shields.io/badge/License-MIT-green.svg