Token导航 LogoToken导航TokenDH.com
rust MCP server example logo
AI代理未说明官方级别未说明来源级核验

rust MCP server example

MCP Server

一个基于Rust实现的轻量级Model Context Protocol (MCP)服务器,通过STDIO进行通信,提供简单的问候工具。

工具数

1

提示词数

0

GitHub Stars

0

资源数

0
异步处理Rust工具集成本地部署

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

matthew-sayer

提供方

matthew-sayer

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

Rust MCP服务器模板(STDIO)

此存储库提供了一个简单的示例 模型上下文协议(MCP) 用Rust实现的服务器。 这与STDIO一起运行。

服务器使用 prism_mcp_rs crate创建一个基本的MCP服务器,使用一个工具根据用户的输入向用户致意。

特性

  • MCP服务器:使用 prism_mcp_rs 机箱。
  • Hello工具:一个简单的工具,它以用户的名字作为输入,并以个性化的问候语作为回应。
  • 异步执行:由 tokio 用于处理异步操作的运行时。
  • 标准运输:服务器使用标准输入/输出(Stdio)进行通信,使其易于与其他工具或脚本集成。

运作原理

  1. 服务器已用名称初始化(HelloToolServer)和版本(1.0.0).
  2. 单个工具, hello,已向服务器注册。此工具:

- 接受JSON输入 name 现场。 - 回复问候信息,如 Hello, !.

  1. 服务器使用标准输入/输出(Stdio)作为其通信传输机制。

代码概述

main.rs

main.rs 文件包含以下关键组件:

  • 工具处理核心:一个实现 ToolHandler 特质,它定义了 hello 工具。在Rust中,我们创建结构来保存要使用的数据,类似于Python __初始化__ 在类内,但不实际初始化任何东西,只存储数据。然后,我们使用实现为它们添加行为,就像我们在这里为ToolHandler所做的那样,而不是像Python那样在类中添加函数。我们还在空结构体上方有#\[derive(Clone)\],允许我们为工具的多个实现克隆它。
  • MCP服务器初始化:服务器已创建 hello 添加了工具及其模式和处理程序。
  • 服务器启动:服务器已使用启动 StdioServerTransport.

添加工具

在主功能中,使用以下工具编写更多工具: server.addtool(工具名、描述、json对象、结构体(工具句柄核心)),并确保等待它,否则它不会拿起工具(此服务器中的函数是异步的)。

示例工具: hello

hello 工具定义如下:

  • 输入架构:
  {
      "type": "object",
      "properties": {
          "name": {
              "type": "string",
              "description": "The name of the person to greet."
          }
      }
  }
    server.add_tool(
        "hello".to_string(), // NAME
        Some("Says hello to the specified user.".to_string()), // DESCRIPTION
        json!({
            "type": "object",
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the person to greet."
                }
            }
        }), // JSON INPUT SCHEMA
        ToolHandlerCore, // CORE STRUCT
    ).await?;

依赖项

Cargo.toml中的所有内容,以及CMake的安装。

如何使用它?

使用cargo Build-release构建它,然后使用cargo run-release。然后,它将在“目标”文件夹中创建一个发布文件夹,您可以将其中的exe作为STDIO服务器使用。

用于VSCode的mcp.json示例

{
  "servers": {
    "RustMCPServer": {
      "type": "stdio",
      "command": "target\\release\\rust_mcp_template.exe",
      "args": ["--mode", "vscode"],
      "env": {
        "VSCODE_WORKSPACE": "${workspaceFolder}"
      }
    }
  }
}

目录标签

目录标签

异步处理Rust工具集成本地部署MCP协议STDIO通信

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

1

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP