关于 CereBro
CereBro 是面向 .NET 开发者的 AI Agent 封装,可将 MCP 工具用于基于 OpenAI 的应用。目前仅支持 OpenAI,也提供 Unity 软件包。
主要功能
- 01.NET AI Agent 封装
- 02配置 MCP 服务
- 03支持 OpenAI 模型
- 04自定义聊天分发器
- 05Unity 软件包
适用场景
- 01构建使用 MCP 工具的 .NET Agent
- 02在 Unity 项目中接入 CereBro
MCP 相关
CereBro 读取配置文件中的 MCP 服务列表,并向 Agent 提供其工具。它基于官方 C# SDK。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
CereBro
CereBro 是一个与模型无关的 .Net AI Agent 封装器。现在支持 🔥 Model Context Protocol 🔥,基于官方 C# SDK,你可以编写可用于不同 AI 模型的工具,而无需更改代码。
模型
以下是 CereBro 支持及计划支持的模型列表。
已支持:
计划支持:
安装
你可以使用以下命令从 NuGet 安装此包:
dotnet add package Rob1997.CereBro
dotnet add package Rob1997.CereBro.Open-AI
使用方法
步骤 1:创建 servers.json 文件
此文件用于配置你想使用的 MCP 服务。下面是 servers.json 文件的示例。
[
{
"Id": "everything-server",
"Name": "Everything",
"TransportType": "stdio",
"TransportOptions": {
"command": "npx",
"arguments": "-y @modelcontextprotocol/server-everything"
}
}
]
你可以在此处查看更多服务。
步骤 2:将 OpenAI API Key 添加到环境变量中
export OPEN_AI_API_KEY="your-api-key"
$env:OPEN_AI_API_KEY="your-api-key"
如果想永久设置,可以将其添加到 Linux 中的 .bashrc 或 .bash_profile 文件,或者在 PowerShell 中使用以下命令。
[Environment]::SetEnvironmentVariable("OPEN_AI_API_KEY", "your-api-key", "User")
步骤 3:将以下代码添加到 Program.cs(入口点)
public static async Task Main(string[] args)
{
var builder = Host.CreateApplicationBuilder(args);
builder.Services.UseOpenAI(Environment.GetEnvironmentVariable("OPEN_AI_API_KEY"), "gpt-4o-mini");
IHost cereBro = builder.BuildCereBro(new CereBroConfig{ ServersFilePath = "./servers.json" });
await cereBro.RunAsync();
}
CereBro 使用 Console 作为聊天分发器。你可以通过实现 IChatDispatcher 接口来创建自己的分发器,并使用 builder.BuildCereBro<IChatDispatcher>(config) 构建 CereBro 的主机。
步骤 4:运行应用程序
dotnet run
添加新模型
目前,CereBro 仅支持 OpenAI 的模型。要添加新模型,你需要实现 Microsoft.Extensions.AI.IChatClient;如果该接口尚不存在,Microsoft 已为部分模型提供了实现,例如 OpenAI 和 Ollama。
完成后,你可以创建一个实现 Microsoft.Extensions.AI.FunctionInvokingChatClient 的占位类型,例如此处所示。
最后,可以使用 UseChatClient<T>(this IServiceCollection services, IChatClient chatClient) where T : FunctionInvokingChatClient 扩展方法,将模型添加到服务集合中。
⚠️ 注意 ⚠️
目前,CereBro 不支持同时使用多个模型,因此若要使用其他模型,你需要从 Program.cs 文件中移除 UseOpenAI 方法。
CereBro.Unity
CereBro.Unity 是一个 Unity 包,可让你在 Unity 中使用 CereBro。README。
贡献
如果你想为此项目做出贡献,可以复刻此仓库并创建拉取请求。如果发现任何错误或有功能需求,也可以创建问题。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。