-
Notifications
You must be signed in to change notification settings - Fork 17
Description
Gemini CLI has been updated from v0.1.12 to v0.1.13. This update appears to have changed the inputSchema expected for inputting arguments to the MCP server. Unfortunately, the current version (v0.1.13) does not seem to support JSON schema for inputSchema.
For instance, with get_values_from_google_sheets, I previously used the following schema. This schema worked correctly until v0.1.12, and my testing confirmed that only this tool was affected by the change.
{
name: "get_values_from_google_sheets",
description: "Use this to get cell values from Google Sheets.",
inputSchema: {
type: "object",
properties: {
spreadsheetId: { type: "string", description: "Spreadsheet ID of Google Sheets." },
spreadsheetUrl: { type: "string", description: "Spreadsheet URL of Google Sheets." },
sheetName: { type: "string", description: "Sheet name in the Google Sheets. If both sheetName, sheetId, and sheetIndex are not provided, the values are retrieved from the 1st sheet on Google Sheets." },
sheetId: { type: "string", description: "Sheet ID of the sheet in Google Sheets. If both sheetName, sheetId, and sheetIndex are not provided, the values are retrieved from the 1st sheet on Google Sheets." },
sheetIndex: { type: "number", description: "Sheet index (The 1st sheet is 0.) of the sheet in Google Sheets. If both sheetName, sheetId, and sheetIndex are not provided, the values are retrieved from the 1st sheet on Google Sheets." },
range: { type: "string", description: "Range as A1Notation. The values are retrieved from this range. If this is not used, the data range is automatically used." },
},
oneOf: [{ required: ["spreadsheetId"] }, { required: ["spreadsheetUrl"] }]
}
}
However, after updating Gemini CLI to v0.1.13, using the above tool results in the following error:
✕ [API Error: {"error":{"message":"{\n \"error\": {\n \"code\": 400,\n \"message\": \"schema at anyOf.0 requires unspecified property 'spreadsheetId'\",\n \"status\": \"INVALID_ARGUMENT\"\n }\n}\n","code":400,"status":"Bad Request"}}]
This error message, specifically "schema at anyOf.0 requires unspecified property 'spreadsheetId'," is confusing because my schema uses oneOf, not anyOf.
Even when I modify oneOf to anyOf, the same error occurs.
For example, when I modify oneOf: [{ required: ["spreadsheetId"] }, { required: ["spreadsheetUrl"] }] to required: ["spreadsheetId"], no error occurs, and the tool works fine.
Given this unexpected behavior, and the uncertainty about whether this change in v0.1.13 is a permanent specification, I am hesitant to update my MCP server tools. Therefore, I am currently continuing to use Gemini CLI v0.1.12.
It's also worth noting that v0.1.13 no longer supports complex schemas that were compatible with v0.1.12. Ref