{"record":{"id":"36d954ba1934a0cd","repo":"googleapis/mcp-toolbox","slug":"invalid-collection-path-w","errorCode":null,"errorMessage":"invalid collection path: %w","messagePattern":"invalid collection path: %w","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"internal/tools/firestore/firestorequerycollection/firestorequerycollection.go","lineNumber":311,"sourceCode":"\tFilters        []FilterConfig\n\tOrderBy        *OrderByConfig\n\tLimit          int\n\tAnalyzeQuery   bool\n}\n\n// parseQueryParameters extracts and validates parameters from the input\nfunc (t Tool) parseQueryParameters(params parameters.ParamValues) (*queryParameters, error) {\n\tmapParams := params.AsMap()\n\n\t// Get collection path\n\tcollectionPath, ok := mapParams[collectionPathKey].(string)\n\tif !ok || collectionPath == \"\" {\n\t\treturn nil, fmt.Errorf(errMissingCollectionPath, collectionPathKey)\n\t}\n\n\t// Validate collection path\n\tif err := fsUtil.ValidateCollectionPath(collectionPath); err != nil {\n\t\treturn nil, fmt.Errorf(\"invalid collection path: %w\", err)\n\t}\n\n\tresult := &queryParameters{\n\t\tCollectionPath: collectionPath,\n\t\tLimit:          defaultLimit,\n\t\tAnalyzeQuery:   defaultAnalyze,\n\t}\n\n\t// Parse filters\n\tif filtersRaw, ok := mapParams[filtersKey]; ok && filtersRaw != nil {\n\t\tfilters, err := t.parseFilters(filtersRaw)\n\t\tif err != nil {\n\t\t\treturn nil, err\n\t\t}\n\t\tresult.Filters = filters\n\t}\n\n\t// Parse orderBy","sourceCodeStart":293,"sourceCodeEnd":329,"githubUrl":"https://github.com/googleapis/mcp-toolbox/blob/8cc6e09de2ad7b8bffc77751799585a1401a48eb/internal/tools/firestore/firestorequerycollection/firestorequerycollection.go#L293-L329","documentation":"Wrap of ValidateCollectionPath in parseQueryParameters: the supplied collection path failed structural validation (absolute path, wrong segment parity, empty or reserved segments, etc.). The wrapped error names the precise rule.","triggerScenarios":"Thrown at internal/tools/firestore/firestorequerycollection/firestorequerycollection.go:311 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Use a relative path with an odd number of slash-separated segments, e.g. 'users' or 'users/alice/tasks'","Do not prefix the path with projects/.../documents/","Avoid empty, whitespace-only, '.', '..' or '__'-prefixed segments"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"8cc6e09de2ad7b8bffc77751799585a1401a48eb","analyzedAt":"2026-09-05T01:10:36.887Z","contentChangedAt":"2026-09-05T01:10:36.887Z","schemaVersion":2},"datasetVersion":"2026-09-08T10:18:20.063Z"}