使用说明
项目简介
Aica 是一个 AI 代码分析工具,它不仅可以作为独立的编码助手和代码审查工具使用,还能以 MCP 服务器的模式运行,为支持 MCP 协议的客户端提供代码分析服务。作为 MCP 服务器,Aica 能够托管和管理代码资源,注册和执行代码分析工具,并支持 Prompt 模板定制,从而为 LLM 应用提供强大的上下文服务框架。
主要功能点
- MCP 服务器实现: 实现了 Model Context Protocol 协议,可以作为 MCP 服务器运行,与 MCP 客户端进行通信。
- 资源管理: 托管和管理代码资源,允许客户端通过 MCP 协议访问代码文件内容。
- 工具注册与执行: 注册并提供代码分析工具(例如 'start_task'),允许 LLM 客户端调用这些工具执行代码相关任务。
- Prompt 模板: 支持 Prompt 模板定制(虽然文档中没有明确提及 Prompt 模板,但 MCP 服务器定义包含此功能)。
- 多种传输协议支持: 支持 stdio 和 SSE 传输协议,方便客户端连接。
- 代码分析能力: 内置代码审查、代码总结、代码补全等 AI 代码分析功能,可通过 MCP 协议提供给客户端使用。
安装步骤
-
安装 Bun: 确保已安装 Bun 运行时环境,参考 Bun 官方安装文档。
-
克隆仓库: 使用 Git 克隆 aica 仓库到本地:
git clone https://github.com/dotneet/aica.git cd aica -
安装依赖并构建: 运行以下命令安装依赖并构建可执行文件:
bun install bun run build -
复制可执行文件: 将构建生成的可执行文件 'aica' 复制到你的可执行文件目录,例如 '/usr/local/bin' 或 '~/bin':
cp ./dist/aica /usr/local/bin # 或其他目录 -
设置 GitHub Token (可选): 如果需要使用 GitHub 相关功能(例如创建 PR),请设置 'GITHUB_TOKEN' 环境变量或确保 'gh auth token' 命令可以获取到 Token。
-
配置 LLM (可选): 如果需要使用 AI 功能,请配置 LLM 提供商 API 密钥,支持 Anthropic、OpenAI、Gemini,可以通过环境变量或 'aica.toml' 文件配置。
服务器配置
MCP 客户端需要配置 'mcp.json' 文件来连接 Aica MCP 服务器。以下是一个基于 stdio 传输协议的配置示例,假设 'aica' 可执行文件已添加到 PATH 环境变量中:
[ { "name": "aica-server", // MCP 服务器名称,客户端用于识别 "type": "stdio", // 传输协议类型,这里使用 stdio "command": "aica", // 启动 MCP 服务器的命令,这里假设 'aica' 命令已在 PATH 中 "args": ["mcp", "server"] // 启动命令的参数,这里指定 'mcp server' 子命令启动 MCP 服务器 } ]
配置参数说明:
- 'name': MCP 服务器的名称,客户端使用此名称来标识和连接服务器。
- 'type': 传输协议类型,'stdio' 表示使用标准输入输出流进行通信。
- 'command': 启动 MCP 服务器的命令行命令。
- 'args': 传递给 'command' 的命令行参数,用于指定 Aica 以 MCP 服务器模式启动。
将以上 JSON 配置保存为 'mcp.json' 文件,并在 MCP 客户端中配置该文件路径,即可连接到 Aica MCP 服务器。
基本使用方法
-
启动 MCP 服务器: 在终端中运行以下命令启动 Aica MCP 服务器:
aica mcp server可以使用 '--config aica.toml' 参数指定配置文件路径。
-
客户端连接: 配置 MCP 客户端,使其加载 'mcp.json' 配置文件,客户端将根据配置信息连接到 Aica MCP 服务器。
-
客户端请求: 客户端可以通过 JSON-RPC 协议向 Aica MCP 服务器发送请求,例如调用注册的工具 ('start_task') 或读取托管的资源(代码文件)。
注意: 启动 'aica mcp server' 命令后,服务器将在后台运行,并通过 stdio 或 SSE 等协议等待客户端连接和请求。
信息
分类
开发者工具