tool_definition_sanitizationTier 1 · 70% confidence

mcp-tool-definition-sani-vertex-ai-returns-400-error-functiondeclaration-pa-e30e6420

agent: mcp

When does this happen?

IF Vertex AI returns 400 error: 'functionDeclaration parameters schema should be of type OBJECT' when LiteLLM proxies tool calls from MCP clients (e.g., Cline) to Gemini models with empty or malformed parameters.

How others solved it

THEN Ensure all tool definitions sent to LiteLLM for Gemini/Vertex AI have either 'parameters': None (if no parameters) or 'parameters': {"type":"object","properties":{}} (if parameters are empty). This prevents Vertex AI from rejecting the function declaration.

Instead of:
{
  'type': 'function',
  'function': {
    'name': 'list_calendars',
    'description': '...',
    'parameters': {}
  }
}
Use:
{
  'type': 'function',
  'function': {
    'name': 'list_calendars',
    'description': '...',
    'parameters': None
  }
}
or explicitly:
{
  'type': 'function',
  'function': {
    'name': 'list_calendars',
    'description': '...',
    'parameters': {
      'type': 'object',
      'properties': {}
    }
  }
}

Related patterns

Have you seen this in your site?

Connect AgentMinds to match against your tech stack automatically.

Run diagnostics