关于 Cairo Coder
Cairo Coder 是通过 Cairo Coder API 为 Cairo 和 Starknet 开发提供支持的 MCP 服务,面向编写或维护相关代码的开发者。它提供代码生成、重构和开发建议,并可连接官方 API 或本地自定义端点。
主要功能
- 01回答 Cairo 和 Starknet 开发问题
- 02生成 Cairo 代码和智能合约
- 03重构及优化现有代码
- 04实现指定功能
- 05提供生态与最佳实践信息
适用场景
- 01生成计数器等 Cairo 合约
- 02为现有代码寻求优化建议
- 03补全 TODO 或实现功能
MCP 相关
该 MCP 服务提供 assist_with_cairo 工具,将查询和可选代码上下文发送至 Cairo Coder API。可使用 API 密钥连接官方端点,或配置本地及自定义端点。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
1收录的工具列表 · 更新于 3 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| query | string | 是 | 用户关于编写、重构、调试或理解 Cairo 代码的技术问题。请尽可能具体,以便获得更好的结果(例如,“如何使用 OpenZeppelin 实现 ERC20 转账函数”,而不只是“ERC20”)。 |
| codeSnippets | array | 否 | 可选:用于提供上下文的代码片段。这有助于工具理解用户意图并给出更准确的回答。请尽可能提供与用户请求相关的代码。 |
| history | array | 否 | 可选:之前的对话历史。这有助于工具理解讨论的上下文并提供更准确的回答。 |
详细介绍
Cairo Coder MCP 服务
一个通过 Cairo Coder API 为 Cairo 和 Starknet 开发提供帮助的 Model Context Protocol(MCP)服务。
⚠️ 仓库已迁移/已弃用
此项目现已迁至 Ask Starknet 单体仓库
npm 包仍在此处发布
此仓库将不再更新。
快速开始
通过 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
注意:将 YOUR-API-KEY-HERE 替换为你从 cairo-coder.com 获取的实际 API 密钥
手动使用
使用 npx 直接运行此 MCP 服务:
npx -y @kasarlabs/cairo-coder-mcp
配置
此服务支持两种运行模式:
模式 1:Cairo Coder 公共 API(默认)
使用官方 Cairo Coder API 和你的 API 密钥。
环境变量:
CAIRO_CODER_API_KEY:你的 Cairo Coder API 密钥(必填)
MCP 客户端设置:
{
"mcpServers": {
"cairo-coder": {
"command": "npx",
"args": ["-y", "@kasarlabs/cairo-coder-mcp"],
"env": {
"CAIRO_CODER_API_KEY": "your-api-key-here"
}
}
}
}
模式 2:本地/自定义端点
使用本地或自定义的 Cairo Coder API 端点(无需 API 密钥)。
环境变量:
CAIRO_CODER_API_ENDPOINT:你的本地端点 URL(例如:"http://localhost:8000")
MCP 客户端设置:
{
"mcpServers": {
"cairo-coder": {
"command": "npx",
"args": ["-y", "@kasarlabs/cairo-coder-mcp"],
"env": {
"CAIRO_CODER_API_ENDPOINT": "http://localhost:8000"
}
}
}
}
**注意:**使用
CAIRO_CODER_API_ENDPOINT时,服务会自动切换到本地模式,无需也不会使用 API 密钥。
可用工具
assist_with_cairo
获取 Cairo 和 Starknet 开发任务方面的帮助。
参数:
query(字符串,必填):你的 Cairo/Starknet 开发问题context(字符串,可选):补充上下文或代码片段
示例:
// 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}"
}
你可以做什么
- 编写 Cairo 代码:生成智能合约和 Cairo 代码
- 重构代码:改进和优化现有代码
- 实现功能:完成 TODO 并实现特定功能
- 学习 Starknet:获取 Starknet 生态系统的背景信息
- 最佳实践:获取基于 Cairo/Starknet 文档的建议
提升效果的提示
- 使用具体的查询(例如,“使用 OpenZeppelin 构建 ERC20”,而不只是“ERC20”)
- 处理现有代码时,提供相关代码片段
- 提供必要的上下文,以获得更准确的回答
开发
先决条件
- Node.js >= 18
- npm 或 yarn
本地安装
git clone <repository-url>
cd cairo-coder-mcp
npm install
可用脚本
npm run build # Build the project
npm run dev # Start in development mode
npm start # Start in production mode
许可证
MIT
支持
如有问题或疑问:
- GitHub Issues:创建问题
- MCP 文档:Model Context Protocol
贡献
欢迎贡献!提交 PR 前,请查看贡献指南。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。