tmplateMcpCode.txt
package main
import (
"context"
"errors"
"fmt"
"github.com/mark3labs/mcp-go/mcp"
"github.com/mark3labs/mcp-go/server")
func main() {
// Create MCP server
s := server.NewMCPServer(
"Demo 🚀",
"1.0.0",
)
// Add tool
planTool := mcp.NewTool("createMcp", //mcp名称
mcp.WithDescription("MCP功能描述,如可以用于查询场次详情"),
mcp.WithString("param1", //,mcp接收字段
mcp.Required(),
mcp.Description("mcp接收字段的描述"),
),
mcp.WithString("param2", //,mcp接收字段
mcp.Required(),
mcp.Description("mcp接收字段的描述"),
),
)
s.AddTool(planTool, createMcpHandler) //,mcp处理函数
// Start the stdio server
if err := server.ServeStdio(s); err != nil {
fmt.Printf("Server error: %v\n", err)
}}
func createMcpHandler(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error) {
param1, ok := request.Params.Arguments["param1"].(string)
if !ok {
return nil, errors.New("param1 must be a string")
}
param2, ok := request.Params.Arguments["param2"].(string)
if !ok {
return nil, errors.New("param2 must be a string")
}
return mcp.NewToolResultText(fmt.Sprintf("接收的参数: param1: %s, param2: %s", param1, param2)), nil}
作者:admin 创建时间:2025-04-17 21:26
最后编辑:admin 更新时间:2025-04-17 21:26
最后编辑:admin 更新时间:2025-04-17 21:26