无人机研究协调服务

一个双向MCP服务器,用于在GCP的Cloud Run上协调研究无人机群。

  • by glassBead-tc
  • Go
  • 本地部署
  • 7 星标
  • 更新于
在 GitHub 查看 glassBead-tc/widescreen-research

使用说明

宽屏研究

在GCP(谷歌云平台)的Cloud Run上,双向MCP服务器协调管理着一支研究无人机大军。

仓库状态

  • 主要实现:Go语言(用于协调器和无人机)
  • 示例:节点(位于示例/节点目录下)

克隆

git clone https://github.com/glassBead-tc/widescreen-research.git
cd widescreen-research

快速入门(Go)

go version  # require 1.23+
go mod download

# terminal 1
LOG_LEVEL=debug go run ./cmd/coordinator

# terminal 2
DRONE_TYPE=research EXA_API_KEY=your-local-only-key LOG_LEVEL=debug go run ./cmd/drone

打开 http://localhost:8080 并获取 /health 路径。

Docker(Go语言实现)

docker build -t widescreen/coordinator:dev .
docker run --rm -p 8080:8080 widescreen/coordinator:dev

部署到 Cloud Run(Go 语言)

优选:从Secret Manager注入密钥。示例:

gcloud run deploy widescreen-coordinator \
  --source . \
  --region=us-central1 \
  --allow-unauthenticated \
  --set-env-vars=LOG_LEVEL=info \
  --set-secrets=EXA_API_KEY=exa_api_key:latest

节点示例(可选)

Node 项目存放在 ./examples/node/ 目录下,仅作为示例提供。

  • 需要 Node 18+ LTS 版本
  • 请参阅每个示例的README文件了解使用方法

建筑与设计

看 project_spec.md(项目规格说明文件) 对于规范的架构、角色和协议。

目录布局

  • cmd/coordinatorGo 协调器服务(二进制文件)
  • cmd/droneGo语言编写的无人机工作程序(二进制文件)
  • pkg/...可重用的Go包
  • examples/node/...节点示例:MCP服务器和模板

运营/操作

  • 端点:GET /(信息),GET /health(就绪状态)
  • 日志记录:结构化日志;通过LOG_LEVEL进行控制
  • 建议:启用OpenTelemetry以连接至云监控(后续工作)

贡献;助力

请参阅CONTRIBUTING.md(即将推出)。在提交PR之前,请在本地运行go fmt/go vet并执行测试。