About Cairo Coder
Cairo Coder is an MCP server that supports Cairo and Starknet development through the Cairo Coder API. It is for developers writing or maintaining related code, and can connect to either the public API or a local custom endpoint.
Key features
- 01Answers Cairo and Starknet development questions
- 02Generates Cairo code and smart contracts
- 03Refactors and optimizes existing code
- 04Implements requested functionality
- 05Provides ecosystem and best-practice guidance
Use cases
- 01Generating a Cairo contract such as a counter
- 02Seeking optimization advice for existing code
- 03Completing TODOs or implementing features
MCP support
The MCP server provides the assist_with_cairo tool, sending queries and optional code context to the Cairo Coder API. It can use an API key with the public endpoint or be configured with a local or custom endpoint.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
1Saved tool list · updated 3w ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| query | string | Yes | The user's technical question about writing, refactoring, debugging, or understanding Cairo code. Be as specific as possible for better results (e.g., 'How to implement an ERC20 transfer function with OpenZeppelin' rather than just 'ERC20'). |
| codeSnippets | array | No | Optional: Code snippets for context. This will help the tool understand the user's intent and provide more accurate answers. Provide as much relevant code as possible to fit the user's request. |
| history | array | No | Optional: The preceding conversation history. This can help the tool understand the context of the discussion and provide more accurate answers. |
Details
From the project READMECairo Coder MCP Server
A Model Context Protocol (MCP) server for Cairo and Starknet development assistance via the Cairo Coder API.
⚠️ Repository Moved / Deprecated
This project now lives in the Ask Starknet monorepo
The npm package remains published here
This repo will not receive further updates.
Quick Start
Install via Claude Code
# Install Cairo Coder MCP
claude mcp add cairo-coder -e CAIRO_CODER_API_KEY=YOUR-API-KEY-HERE -- npx -y @kasarlabs/cairo-coder-mcp
Note: Replace YOUR-API-KEY-HERE with your actual API key from cairo-coder.com
Manual Usage
Use this MCP server directly with npx:
npx -y @kasarlabs/cairo-coder-mcp
Configuration
The server supports two modes of operation:
Mode 1: Public Cairo Coder API (Default)
Use the official Cairo Coder API with your API key.
Environment Variables:
CAIRO_CODER_API_KEY: Your Cairo Coder API key (required)
MCP Client Setup:
{
"mcpServers": {
"cairo-coder": {
"command": "npx",
"args": ["-y", "@kasarlabs/cairo-coder-mcp"],
"env": {
"CAIRO_CODER_API_KEY": "your-api-key-here"
}
}
}
}
Mode 2: Local/Custom Endpoint
Use a local or custom Cairo Coder API endpoint (no API key required).
Environment Variables:
CAIRO_CODER_API_ENDPOINT: Your local endpoint URL (e.g., "http://localhost:8000")
MCP Client Setup:
{
"mcpServers": {
"cairo-coder": {
"command": "npx",
"args": ["-y", "@kasarlabs/cairo-coder-mcp"],
"env": {
"CAIRO_CODER_API_ENDPOINT": "http://localhost:8000"
}
}
}
}
Note: When using
CAIRO_CODER_API_ENDPOINT, the server automatically switches to local mode and no API key is required or used.
Available Tools
assist_with_cairo
Get help with Cairo and Starknet development tasks.
Parameters:
query(string, required): Your Cairo/Starknet development questioncontext(string, optional): Additional context or code snippets
Examples:
// Simple request
{
"query": "Write a simple Cairo contract that implements a counter"
}
// With context
{
"query": "How can I optimize this contract?",
"context": "#[starknet::contract]\nmod Counter {\n // existing code here\n}"
}
What You Can Do
- Write Cairo code: Generate smart contracts and Cairo code
- Refactor code: Improve and optimize existing code
- Implement features: Complete TODOs and implement specific functionality
- Learn Starknet: Get contextual information about the Starknet ecosystem
- Best practices: Receive advice based on Cairo/Starknet documentation
Tips for Better Results
- Use specific queries (e.g., "Using OpenZeppelin to build an ERC20" instead of just "ERC20")
- Include relevant code snippets when working with existing code
- Provide necessary context for more accurate responses
Development
Prerequisites
- Node.js >= 18
- npm or yarn
Local Installation
git clone <repository-url>
cd cairo-coder-mcp
npm install
Available Scripts
npm run build # Build the project
npm run dev # Start in development mode
npm start # Start in production mode
License
MIT
Support
For issues and questions:
- GitHub Issues: Create an issue
- MCP Documentation: Model Context Protocol
Contributing
Contributions are welcome! Please check the contribution guidelines before submitting a PR.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.