flipped-aurora/gin-vue-admin · error

参数错误:generatedFiles 必须提供

Error message

参数错误:generatedFiles 必须提供

What it means

The gva_review tool requires a 'generatedFiles' argument containing a JSON-encoded array of file paths to review. If the key is absent from the tool arguments, Handle returns this error. Without the file list the reviewer cannot construct the adjustment prompt.

Source

Thrown at server/mcp/gva_review.go:76

}

// Handle 处理审查请求
func (g *GVAReviewer) Handle(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error) {
	// 获取用户需求
	userRequirementData, ok := request.GetArguments()["userRequirement"]
	if !ok {
		return nil, errors.New("参数错误:userRequirement 必须提供")
	}

	userRequirement, ok := userRequirementData.(string)
	if !ok {
		return nil, errors.New("参数错误:userRequirement 必须是字符串类型")
	}

	// 获取生成的文件列表
	generatedFilesData, ok := request.GetArguments()["generatedFiles"]
	if !ok {
		return nil, errors.New("参数错误:generatedFiles 必须提供")
	}

	generatedFilesStr, ok := generatedFilesData.(string)
	if !ok {
		return nil, errors.New("参数错误:generatedFiles 必须是JSON字符串")
	}

	// 解析JSON字符串为字符串数组
	var generatedFiles []string
	err := json.Unmarshal([]byte(generatedFilesStr), &generatedFiles)
	if err != nil {
		return nil, fmt.Errorf("解析generatedFiles失败: %v", err)
	}

	if len(generatedFiles) == 0 {
		return nil, errors.New("参数错误:generatedFiles 不能为空")
	}

View on GitHub (pinned to 3136500ef3)

Solutions

  1. Include 'generatedFiles' as a JSON string array of the files to review, e.g. "[\"server/api/a.go\"]".
  2. Ensure both 'userRequirement' and 'generatedFiles' are present in the same call.
  3. Check the tool definition to confirm all required inputs before calling.
  4. If no files exist yet, pass an explicit list of the files you intend to create and review them after generation.

Example fix

// before
{"userRequirement": "添加登录页"}
// after
{"userRequirement": "添加登录页", "generatedFiles": "[\"web/src/views/login.vue\"]"}
Defensive patterns

Strategy: validation

Validate before calling

if _, ok := args["generatedFiles"]; !ok {
    return errors.New("generatedFiles is required: pass a JSON-encoded string array of file paths")
}

Type guard

func hasArg(args map[string]any, key string) bool {
    _, ok := args[key]
    return ok
}

Prevention

When it happens

Trigger: Invoking gva_review with 'userRequirement' provided but 'generatedFiles' omitted from the arguments map.

Common situations: Caller assumes the tool reviews everything by default; partial argument construction after a previous error fix; schema drift between client and server where generatedFiles was made optional on the client side.

Understand the failure class

Background: Missing required parameter errors: what 'X is required' and 'the required X param is missing' mean, and how to fix them — this error's family across 27 libraries.

Related errors


AI-assisted analysis of flipped-aurora/gin-vue-admin@3136500ef3 (2026-08-31). Data as JSON: /api/errors/ec8c99da7fdaa1ee. Report an issue: GitHub.