Token导航 LogoToken导航TokenDH.com
MCP Server Play logo
地图位置未说明官方级别未说明来源级核验

MCP Server Play

MCP Server

一个基于Rust的微服务,提供特定城市和国家的天气数据及当地时间信息。

工具数

2

提示词数

0

GitHub Stars

0

资源数

0
位置天气时间服务Rust微服务异步处理

安装说明

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

作者 / 组织

sergei-grigorev

提供方

sergei-grigorev

最后核验

2026/5/17 20:23

快速接入

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

详细介绍

MCP服务器:天气和时间信息服务

项目概述

此模型上下文协议(MCP)服务器是一个学习项目,它利用RMCP(Rust模型上下文协议)库来演示:

  • 使用tokio进行异步Rust编程
  • 实现灵活的微服务架构
  • 使用RMCP SDK构建可扩展工具

服务器提供两个主要工具:

  1. 天气信息:检索特定城市和国家的天气数据
  2. 本地时间:获取给定城市和国家的当前当地时间

关于RMCP

RMCP是用于模型上下文协议的现代Rust SDK,提供:

  • 使用tokio实现干净高效的异步运行时
  • 灵活且可扩展的工具实施
  • 与官方SDK相比,改进了数据类型处理
  • 支持各种运输机制

- 用于实时通信的服务器发送事件(SSE) - 轻量级且高效的单向服务器到客户端数据流 - 内置重新连接支持和事件跟踪

目的

该项目的主要目标是:

  • 学习Rust编程
  • 探索RMCP库功能

特性

  • 气象数据检索
  • 当地时间信息
  • 基于标准的沟通
  • 带跟踪的结构化日志记录

先决条件

  • Rust(最新稳定版本)
  • 货物包装经理
  • 仅仅 命令运行器

- 使用Homebrew安装: brew install just - 与货物一起安装: cargo install just

  • API密钥用于:

- WeatherAPI 获取天气数据 - IP地理定位API 时间数据

配置

可以使用以下环境变量配置服务器:

  • BIND_ADDRESS:将服务器绑定到的IP地址(默认值: 0.0.0.0)
  • PORT:要侦听的端口号(默认值: 8000)

示例用法:

# Bind to localhost on port 3000
BIND_ADDRESS=127.0.0.1 PORT=3000 cargo run

# Use default bind address but change port
PORT=8080 cargo run

环境设置

  1. 复制示例环境文件:
   cp .env.example .env
  1. 编辑 .env 文件,并将占位符值替换为实际的API键:

- WEATHER_API_KEY:从 WeatherAPI - IP_GEOLOCATION_API_KEY:从 IP地理定位API

  1. 您还可以选择配置:

- BIND_ADDRESS:将服务器绑定到的IP地址(默认值: 0.0.0.0) - PORT:要侦听的端口号(默认值: 8000)

安装

  1. 克隆存储库:
   git clone https://github.com/sergei-grigorev/mcp-server-play.git
   cd mcp-server-play
  1. 构建项目:
   cargo build

开发命令

该项目使用 仅仅 作为一名命令执行者。可用命令:

just                # List available commands
just build          # Build release artifact
just check          # Run checks (clippy, fmt, etc.)
just clean          # Clean build artifacts
just format         # Format code using rustfmt
just serve          # Run the server in development mode
just test           # Run tests

运行服务器

只需使用以下命令运行服务器:

just serve

项目结构

  • src/main.rs:入口点和服务器初始化
  • src/api/

- mod.rs:主服务器实现 - weather.rs:气象数据检索逻辑 - weather/response.rs:天气API响应模型 - time.rs:时间数据检索逻辑 - time/response.rs:时间API响应模型

  • src/models/

- mod.rs:模型模块定义 - weather.rs:天气请求/响应模型 - time.rs:时间请求/响应模型

工具和端点

天气信息

  • 端点: get_weather
  • 参数:

- city:城市名称 - country:国家代码 - unit:温度单位(可选) - 价值观: C (摄氏度)或 F (华氏) - 违约: C

本地时间

  • 端点: get_local_time
  • 参数:

- city:城市名称 - country:国家代码

许可证

麻省理工学院

目录标签

目录标签

位置天气时间服务Rust微服务异步处理天气服务本地部署Rust编程

接入字段

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

未说明

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

none

工具数量(toolCount,工具数)

2

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明none部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP