INNER CODE UNIT · Go
MCPServer
wgpsec/cloudsword · cmd/mcpServer.go:57
func MCPServer(transport string, addr string) {
s := server.NewMCPServer(
global.Name,
global.Version,
)
modes := Modules()
for _, mode := range modes {
opts := make([]mcp.ToolOption, 0)
// 添加调用model的描述
opts = append(opts, mcp.WithDescription(mode.Desc))
// 批量增加调用model需要的参数的名称、描述、是否必须
for _, opt := range mode.BasicOptions {
optTemp := []mcp.PropertyOption{mcp.Description(opt.Introduce)}
if opt.Required {
optTemp = append(optTemp, mcp.Required())
}
opts = append(opts, mcp.WithString(opt.Key, optTemp...))
}