๐ Starknet MCP Server
A Model Context Protocol (MCP) server that enables AI models to interact with Starknet.
๐ Features
- ๐ Get the latest block from Starknet
๐ทโโ๏ธ TODOs
- Add tools to be able to interact with smart contracts on Starknet
๐ Prerequisites
- Node.js 18+
๐ ๏ธ Installation
Installing via Smithery
To install Starknet MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @AbdelStark/starknet-mcp --client claude
Manual Installation
- Clone the repository:
git clone https://github.com/AbdelStark/starknet-mcp
cd starknet-mcp
- Install dependencies:
npm install
- Create a
.env
file:
๐ก You can copy the
.env.example
file and modify it as needed.
# Log level (debug, info, warn, error)
LOG_LEVEL=debug
# Node environment (development, production)
NODE_ENV=development
# Server mode (stdio or sse)
SERVER_MODE=sse
# Port for SSE mode
PORT=9000
# Starknet RPC URL
STAKNET_RPC_URL=https://...
๐ฆ Usage
Starting the Server
# Development mode with hot reload
npm run dev
# Production mode
npm start
Available Tools
get_block
Gets the latest block from the Starknet blockchain.
Example input:
{
"blockNumber": 1234567890
}
๐ง Development
Project Structure
starknet-mcp/
โโโ src/
โ โโโ index.ts # Main server entry point
โ โโโ types.ts # TypeScript type definitions
โโโ .env # Environment configuration
โโโ tsconfig.json # TypeScript configuration
Running Tests
npm test
๐ค Contributing
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Resources
- Starknet Docs
- Starknetjs Docs
- Model Context Protocol
- Visual testing tool for MCP servers
- Awesome MCP Servers
- Awesome MCP Clients
- MCP TypeScript SDK
๐ฌ Contact
Feel free to follow me if you'd like, using my public key:
npub1hr6v96g0phtxwys4x0tm3khawuuykz6s28uzwtj5j0zc7lunu99snw2e29
Or just scan this QR code to find me: