changedOutput schema / (root)
Previous value: -nullNew value: +{
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "additionalProperties": false,
+ "properties": {
+ "responsePagination": {
+ "additionalProperties": false,
+ "description": "Pagination metadata for top-level bulk response pagination across results[]",
+ "properties": {
+ "charLength": {
+ "description": "Character length of the current page",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "charOffset": {
+ "description": "Character offset of the current page",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "currentPage": {
+ "description": "Current page number (1-indexed)",
+ "exclusiveMinimum": 0,
+ "maximum": 9007199254740991,
+ "type": "integer"
+ },
+ "hasMore": {
+ "description": "Whether more pages are available after the current page",
+ "type": "boolean"
+ },
+ "totalChars": {
+ "description": "Total number of characters in the full output",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "totalPages": {
+ "description": "Total number of pages available",
+ "exclusiveMinimum": 0,
+ "maximum": 9007199254740991,
+ "type": "integer"
+ }
+ },
+ "required": [
+ "currentPage",
+ "totalPages",
+ "hasMore",
+ "charOffset",
+ "charLength",
+ "totalChars"
+ ],
+ "type": "object"
+ },
+ "results": {
+ "description": "Array of results, one per input query, discriminated by status",
+ "items": {
+ "anyOf": [
+ {
+ "additionalProperties": false,
+ "properties": {
+ "data": {
+ "additionalProperties": false,
+ "description": "The tool-specific result data",
+ "properties": {
+ "hints": {
+ "description": "Contextual hints and suggestions for next steps or better queries",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "outputPagination": {
+ "additionalProperties": false,
+ "description": "Payload pagination metadata when the result body was size-paginated",
+ "properties": {
+ "charLength": {
+ "description": "Character length of the current page",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "charOffset": {
+ "description": "Character offset of the current page",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "currentPage": {
+ "description": "Current page number (1-indexed)",
+ "exclusiveMinimum": 0,
+ "maximum": 9007199254740991,
+ "type": "integer"
+ },
+ "hasMore": {
+ "description": "Whether more pages are available after the current page",
+ "type": "boolean"
+ },
+ "totalChars": {
+ "description": "Total number of characters in the full output",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "totalPages": {
+ "description": "Total number of pages available",
+ "exclusiveMinimum": 0,
+ "maximum": 9007199254740991,
+ "type": "integer"
+ }
+ },
+ "required": [
+ "currentPage",
+ "totalPages",
+ "hasMore",
+ "charOffset",
+ "charLength",
+ "totalChars"
+ ],
+ "type": "object"
+ },
+ "pagination": {
+ "additionalProperties": false,
+ "description": "Pagination info for navigating through repository results",
+ "properties": {
+ "currentPage": {
+ "description": "Current page number (1-indexed)",
+ "exclusiveMinimum": 0,
+ "maximum": 9007199254740991,
+ "type": "integer"
+ },
+ "hasMore": {
+ "description": "Whether more pages are available after the current page",
+ "type": "boolean"
+ },
+ "perPage": {
+ "description": "Results returned per page",
+ "exclusiveMinimum": 0,
+ "maximum": 9007199254740991,
+ "type": "integer"
+ },
+ "totalMatches": {
+ "description": "Total matching results across all pages",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "totalPages": {
+ "description": "Total number of pages available",
+ "exclusiveMinimum": 0,
+ "maximum": 9007199254740991,
+ "type": "integer"
+ }
+ },
+ "required": [
+ "currentPage",
+ "totalPages",
+ "hasMore",
+ "perPage",
+ "totalMatches"
+ ],
+ "type": "object"
+ },
+ "repositories": {
+ "description": "Matching repositories",
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "createdAt": {
+ "description": "Creation timestamp",
+ "type": "string"
+ },
+ "defaultBranch": {
+ "description": "Default branch of the repository",
+ "type": "string"
+ },
+ "description": {
+ "description": "Repository description",
+ "type": "string"
+ },
+ "forksCount": {
+ "description": "Fork count",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "language": {
+ "description": "Primary programming language of the repository",
+ "type": "string"
+ },
+ "openIssuesCount": {
+ "description": "Open issues count",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "owner": {
+ "description": "Repository owner",
+ "type": "string"
+ },
+ "pushedAt": {
+ "description": "Last push timestamp",
+ "type": "string"
+ },
+ "repo": {
+ "description": "Repository name",
+ "type": "string"
+ },
+ "stars": {
+ "description": "Star count",
+ "maximum": 9007199254740991,
+ "minimum": 0,
+ "type": "integer"
+ },
+ "topics": {
+ "description": "Repository topics",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "updatedAt": {
+ "description": "Last update timestamp",
+ "type": "string"
+ },
+ "url": {
+ "description": "Web URL for the repository",
+ "type": "string"
+ },
+ "visibility": {
+ "description": "Repository visibility",
+ "enum": [
+ "public",
+ "private",
+ "internal"
+ ],
+ "type": "string"
+ }
+ },
+ "required": [
+ "owner",
+ "repo",
+ "stars",
+ "description",
+ "url",
+ "createdAt",
+ "updatedAt",
+ "pushedAt"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "repositories"
+ ],
+ "type": "object"
+ },
+ "id": {
+ "description": "Stable query identifier matching the input query id",
+ "minLength": 1,
+ "type": "string"
+ },
+ "status": {
+ "const": "hasResults",
+ "description": "Indicates the query returned results successfully",
+ "type": "string"
+ }
+ },
+ "required": [
+ "id",
+ "status",
+ "data"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "properties": {
+ "data": {
+ "additionalProperties": {},
+ "description": "Empty result metadata (may contain hints or paging details)",
+ "properties": {},
+ "type": "object"
+ },
+ "id": {
+ "description": "Stable query identifier matching the input query id",
+ "minLength": 1,
+ "type": "string"
+ },
+ "status": {
+ "const": "empty",
+ "description": "Indicates the query returned no matching results",
+ "type": "string"
+ }
+ },
+ "required": [
+ "id",
+ "status",
+ "data"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "properties": {
+ "data": {
+ "additionalProperties": false,
+ "description": "Error details including message, type, and recovery hints",
+ "properties": {
+ "cwd": {
+ "description": "Working directory relevant to the error",
+ "type": "string"
+ },
+ "error": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "additionalProperties": false,
+ "properties": {
+ "error": {
+ "description": "GitHub API error message",
+ "type": "string"
+ },
+ "hints": {
+ "description": "Provider-specific hints",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "rateLimitRemaining": {
+ "description": "Remaining API requests in the current rate limit window",
+ "type": "number"
+ },
+ "rateLimitReset": {
+ "description": "Rate limit reset time in milliseconds since epoch",
+ "type": "number"
+ },
+ "retryAfter": {
+ "description": "Retry-after delay in seconds",
+ "type": "number"
+ },
+ "scopesSuggestion": {
+ "description": "Suggested scopes needed to resolve the error",
+ "type": "string"
+ },
+ "status": {
+ "description": "HTTP status code",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "type": {
+ "description": "GitHub API error category",
+ "enum": [
+ "http",
+ "graphql",
+ "network",
+ "unknown"
+ ],
+ "type": "string"
+ }
+ },
+ "required": [
+ "error",
+ "type"
+ ],
+ "type": "object"
+ }
+ ],
+ "description": "Error message or API error object"
+ },
+ "errorCode": {
+ "description": "Tool error code",
+ "type": "string"
+ },
+ "errorType": {
+ "description": "Tool-specific error type (e.g. symbol_not_found, size_limit)",
+ "type": "string"
+ },
+ "hints": {
+ "description": "Recovery hints",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "resolvedPath": {
+ "description": "Resolved filesystem path involved in the error",
+ "type": "string"
+ },
+ "searchRadius": {
+ "description": "LSP search radius when symbol not found",
+ "type": "number"
+ }
+ },
+ "required": [
+ "error"
+ ],
+ "type": "object"
+ },
+ "id": {
+ "description": "Stable query identifier matching the input query id",
+ "minLength": 1,
+ "type": "string"
+ },
+ "status": {
+ "const": "error",
+ "description": "Indicates the query encountered an error",
+ "type": "string"
+ }
+ },
+ "required": [
+ "id",
+ "status",
+ "data"
+ ],
+ "type": "object"
+ }
+ ]
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "results"
+ ],
+ "type": "object"
+}