-
Notifications
You must be signed in to change notification settings - Fork 846
Open
Labels
Description
What Happened?
Gemini3.0 / Gemini 2.5 - MCP tool params failing vertex ai tool schema validation
An error occurred: {"error":{"message":"vertex-ai error: Invalid JSON payload received. Unknown name \"exclusiveMinimum\" at 'tools[0].function_declarations[8].parameters.properties[2].value': Cannot find field.","type":"INVALID_ARGUMENT","param":null,"code":"400"},"provider":"vertex-ai"}
and the reason for that the tool definition does contain unexpected prop exclusiveMinimum
{
"name": "Framelink_Figma_MCP_download_figma_images",
"description": "Download SVG and PNG images used in a Figma file based on the IDs of image or icon nodes",
"parameters": {
"type": "object",
"properties": {
"fileKey": {
"type": "string",
"pattern": "^[a-zA-Z0-9]+$",
"description": "The key of the Figma file containing the images"
},
"nodes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"nodeId": {
"type": "string",
"pattern": "^I?\\d+[:|-]\\d+(?:;\\d+[:|-]\\d+)*$",
"description": "The ID of the Figma image node to fetch, formatted as 1234:5678"
},
"imageRef": {
"type": "string",
"description": "If a node has an imageRef fill, you must include this variable. Leave blank when downloading Vector SVG images."
},
"fileName": {
"type": "string",
"pattern": "^[a-zA-Z0-9_.-]+\\.(png|svg)$",
"description": "The local name for saving the fetched file, including extension. Either png or svg."
},
"needsCropping": {
"type": "boolean",
"description": "Whether this image needs cropping based on its transform matrix"
},
"cropTransform": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "number"
}
},
"description": "Figma transform matrix for image cropping"
},
"requiresImageDimensions": {
"type": "boolean",
"description": "Whether this image requires dimension information for CSS variables"
},
"filenameSuffix": {
"type": "string",
"description": "Suffix to add to filename for unique cropped images, provided in the Figma data (e.g., 'abc123')"
}
},
"required": [
"nodeId",
"fileName"
]
},
"description": "The nodes to fetch as images"
},
"pngScale": {
"type": "number",
"exclusiveMinimum": 0,
"default": 2,
"description": "Export scale for PNG images. Optional, defaults to 2 if not specified. Affects PNG images only."
},
"localPath": {
"type": "string",
"description": "The absolute path to the directory where images are stored in the project. If the directory does not exist, it will be created. The format of this path should respect the directory format of the operating system you are running on. Don't use any special character escaping in the path name either."
}
},
"required": [
"fileKey",
"nodes",
"localPath"
]
}
},after deleting this prop in
| delete obj.additionalProperties; |
same as for
additionalProperties everything works but that does not a proper fix because any other property could cause that in the future
What Should Have Happened?
https://docs.cloud.google.com/vertex-ai/generative-ai/docs/reference/rest/v1beta1/Schema
Relevant Code Snippet
use this figma mcp in order to reproduce the issue
{
"mcpServers": {
"Framelink Figma MCP": {
"command": "npx",
"args": [
"-y",
"figma-developer-mcp",
"--figma-api-key=****",
"--stdio"
]
}
}
}
Your Twitter/LinkedIn
No response