SparkMango

by arjunbhuptani

1 stars
6.4k downloads
Not rated
GitHub

About

Converts Solidity smart contracts into RESTful API implementations, enabling applications to interact with blockchain contracts without requiring deep blockchain knowledge.

Details

Author
arjunbhuptani
Repository
aryabhuptani/sparkmango
GitHub stars
1
Downloads
6,423
Categories
Developer Tools, Design, Workplace, File Management, AI, API, Frontend, Knowledge Base, Other
Tags
#integration

- Convert Solidity contracts to Python implementations
- Automatic server generation
- State management for contract variables
- RESTful API endpoints
- Event handling
- Comprehensive testing framework

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name SparkMango
    Command (node, npx, python, etc.) npx
    Arguments
    • Argument 1 -y
    • Argument 2 @highlight/mcp-server

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

1. Clone the repository:

git clone https://github.com/ArjunBhuptani/sparkmango.git
cd sparkmango

2. Install dependencies:

pip install -r requirements.txt
pip install -r requirements-test.txt

generate

Generate a server from a Solidity contract. Parameters: --contract (path to contract.json), --output (output directory)

start

Start the server. Parameters: --port (port number, default is 8000)

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "sparkmango": {
            "env": {},
            "args": [
                "-y",
                "@highlight/mcp-server"
            ],
            "command": "npx"
        }
    }
}

Linux

{
    "env": [],
    "args": [
        "-y",
        "@highlight/mcp-server"
    ],
    "command": "npx"
}

Macos

{
    "env": [],
    "args": [
        "-y",
        "@highlight/mcp-server"
    ],
    "command": "npx"
}

Windows

{
    "env": [],
    "args": [
        "/c",
        "npx",
        "-y",
        "@highlight/mcp-server"
    ],
    "command": "cmd"
}

SparkMango

SparkMango Logo

A Model Context Protocol (MCP) server that converts Solidity bytecode into a functional server implementation.

Overview

SparkMango provides a bridge between Solidity smart contracts and Python-based server applications. It automatically generates server implementations from Solidity contracts, making it easier to interact with blockchain contracts through a RESTful API.

Features

- Convert Solidity contracts to Python implementations
- Automatic server generation
- State management for contract variables
- RESTful API endpoints
- Event handling
- Comprehensive testing framework

Installation

pip install mcp-server

Usage

1. Generate a server from a Solidity contract:

mcp-server generate --contract path/to/contract.json --output output_directory

2. Start the server:

mcp-server start --port 8000

Development

Setup

1. Clone the repository:

git clone https://github.com/ArjunBhuptani/sparkmango.git
cd sparkmango

2. Install dependencies:

pip install -r requirements.txt
pip install -r requirements-test.txt

Testing

Run the test suite:

python -m pytest

Documentation

For detailed documentation, please refer to the docs directory.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Project Status

For current project status and upcoming features, see PROJECT_STATUS.md.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.