The ethereum-mcp library provides Go packages to make creating Model Context Protocol servers for Ethereum block-chains easier.
Include this library in your project using the following command:
go get github.com/selesy/ethereum-mcpThe /pkg/scheam package provides "augmented" JSONSchema files and their associated Go embeddings in a format that's suitable for use as a "Raw Schema" with the mcp-go library's NewToolWithRawSchema constructor.
Full documentation for this library including examples is available as Go docs.
This project happily accepts both code and non-code contributions. For code and documentation submissions, please open a PR. Otherwise, see the links in the Community section below to submit bug reports or to discuss a proposed feature or use-case.
- Please report issues using https://github.com/selesy/ethereum-mcp/issues[GitHub Issues].
- PRs are happily considered when submitted to https://github.com/selesy/ethereum-mcp/pulls[GitHub Pull requests].
- Other questions or discussions can be submitted to https://github.com/selesy/ethereum-mcp/discussions[GitHub Discussions].
This project strives to follow the tenets below:
- Maintain minimal external dependencies: If you have a feature that requires specific libraries, let's discuss whether a new Go module should be created in a sub-directory.
- Conventional commits: Releases numbers and release notes are generated from the commit message "title".
- Local checks: Install the pre-commit hooks as described below. If a commit passes on your workstation, it should also pass when checked by GitHub actions.
- Code style: Generally follows the Uber Go Style Guide. The
.golangci-lintconfiguration andpre-commithooks help support the ideas in this document.
The tools required to develop this project and to run the pre-commit checks are defined in the .tool-versions file. If you're using asdf, simply run asdf install. Otherwise, install the listed tools in the manner required by your operating system. Once the required tools are installed, install the pre-commit hooks by running pre-commit install --install-hooks. Test your environment by running pre-commit run --all-files.
This project is distributed under the https://github.com/selesy/ethereum-mcp/blob/main/LICENSE[Apache 2.0 License].