LLM交互协议服务器

MCPKit是一个Xojo模块,用于将Xojo控制台应用程序转换为MCP服务器,便于与大型语言模型(LLM)通过标准化协议交互。

  • by gkjpettet
  • Xojo
  • 本地部署
  • 6 星标
  • 更新于
在 GitHub 查看 gkjpettet/MCPKit

使用说明

MCPKit

用于与LLM交互的模型上下文协议服务器的易于使用的Xojo实现。

什么是MCP服务器?

模型上下文协议(MCP)服务器是一种通过标准化协议将工具暴露给大型语言模型(LLM)的应用程序。MCP协议由Anthropic创建 证据充分的 并且得到了主要的专有LLM供应商以及LM Studio等开源解决方案的支持。

关于MCPKit

MCPKit 是一个Xojo模块,其中包含转换Xojo所需的一切 ConsoleApplication 进入MCP服务器。只需将模块放入Xojo控制台项目中,更改 App 反对 MCPKit.ServerApplication 你可以走了。

该模块支持命令行选项和自定义工具。有关更彻底的实施,请参阅我的 MCP网站 GitHub项目提供基于Kagi的本地LLM网络搜索:

MCPKit服务器应用程序生命周期

这 MCPKit.ServerApplication 公开了三个事件定义:

  • WillParseOptions
  • DidParseOptions
  • Configure

你不需要实施 Run 事件,因为服务器将立即启动并自动处理传入的响应。

如果要为服务器指定命令行参数,请在 WillParseOptions 像这样:

// Add a single required option for an API key to be passed to the server.
Self.CommandLineParser.AddOption("k", "apikey", "The API key to use.", _
MCPKit.OptionTypes.String, True)

一旦解析了命令行参数 DidParseOptions 事件被触发,因此您可以通过应用程序的 CommandLineParser 对象。它们可以在你的应用程序的其他地方使用,但直到 DidParseOptions 已引发事件,表明它们已被验证。

如果未将所需的选项传递给应用程序或出现其他错误,则服务器会将此记录到stderr,并通过MCP向调用LLM正确报告发生了问题。

一旦解析了命令行选项,但在服务器实际开始运行之前 Configure 事件被提出。使用此事件注册您要向LLM公开的任何工具。工具可以接收任意数量的命名参数,并将其传递给工具 Run 方法。在此方法中编写Xojo代码,并以字符串的形式返回对LLM的响应。

如果你看看我的 MCP网站 您将看到一个名为的类 KagiSearchTool 这是一个子类 MCPKit.Tool 并说明了向LLM公开参数、描述工具然后执行Xojo代码并返回响应是多么容易。事实上,不计算网络搜索代码 KagiSearchTool 类,只需要6行Xojo代码就可以在 mcpweb 项目!