项目简介

Dinos MCPServer (DMCPServer) 是一个用Delphi语言实现的Model Context Protocol (MCP) 服务器,旨在帮助Delphi开发者轻松构建与LLM(如Claude AI)集成的后端服务。它允许您将Delphi中编写的业务逻辑(如获取天气、处理订单)作为工具(Tools)发布,并将数据文件或特定信息作为资源(Resources)提供给LLM,从而增强LLM的外部功能和实时上下文理解能力。

主要功能点

  • 工具注册与执行: 将您的Delphi函数注册为LLM可调用的工具,支持参数定义和错误处理。
  • 资源管理: 托管并向LLM提供各种外部资源(如CSV文件、数据模板),作为其决策和生成内容的上下文。
  • 多协议支持: 支持通过HTTP和STDIO协议进行通信,方便与多种LLM客户端集成。
  • 会话管理: 管理LLM与服务器之间的交互会话。
  • 日志记录: 提供日志功能,便于调试和监控服务器操作。

安装步骤

该项目是一个Delphi库,您可以通过HashLoad的'boss'包管理器进行安装。

  1. 确保您的Delphi环境中已安装'boss'。
  2. 打开命令行或终端。
  3. 执行以下命令进行安装:
    boss install github.com/Daniel09Fernandes/DMCPServer

安装完成后,您可以在Delphi项目中引用DMCPServer库来构建您的MCP服务器应用。

服务器配置 (供MCP客户端使用)

MCP客户端(如Claude AI)需要配置服务器的启动命令和相关参数。以下是配置示例:

{
  "servers": [
    {
      "server_name": "DinosMCPServer",
      "command": "path/to/your/compiled/DMCPServer.exe",
      "args": [],
      "protocol": "stdio"
    }
  ]
}
  • 'server_name': 服务器的名称,此示例中为 "DinosMCPServer"。
  • 'command': 您的DMCPServer编译后的可执行文件路径。例如,如果您的Delphi项目编译出了'MyDMCPServer.exe',并且它位于'C:\MyApps',则这里填写'C:\MyApps\MyDMCPServer.exe'。
  • 'args': 启动服务器时所需的命令行参数列表,通常为空或包含特定端口等信息。
  • 'protocol': 服务器支持的通信协议,可以是'stdio'(标准输入输出)或'http'。请根据您的实际部署选择。

基本使用方法

  1. 定义工具 (Action): 在Delphi代码中编写业务逻辑,例如获取天气的功能,并将其封装在一个'TMCPAction'类型的匿名方法中。
  2. 注册工具和资源: 使用'TDMCPServerRegister'实例来注册您定义的工具(Action),同时定义其名称、描述和输入Schema(参数类型、是否必需等)。您还可以通过'Resources'方法注册需要提供给LLM的数据资源(如文件URI、名称和描述)。
  3. 配置服务器信息: 设置服务器的名称、版本等元数据。
  4. 运行服务器: 调用'lDMCP.Run'方法启动MCP服务器,使其开始监听来自LLM客户端的请求。
  5. 集成到LLM客户端: 在LLM客户端(如Claude AI的开发者设置)中,按照上述“服务器配置”的方式添加您的DMCPServer配置,并选择对应的传输协议(STDIO或HTTP)。

通过以上步骤,您的Delphi应用程序即可作为LLM的外部功能提供者和上下文信息源。

信息

分类

开发者工具