#28766 [Bug]: Semantic MCP Tool Filtering emits invalid OpenAI tool schema
### Check for existing issues
- [x] I have searched the existing issues and checked that my issue is not a duplicate.
### What happened?
Semantic MCP tool filtering appears to reconstruct filtered tools incorrectly, causing invalid OpenAI tool payloads to be sent to the backend model.
Tested with latest llama.cpp as provider
### Steps to Reproduce
1. Add MCP tools 2. Test in webui playground without semantic search to ensure they work 3. Enable semantic search 4. Test in webui playground
### Relevant log output
```shell 2026-05-25 15:01:07 - LiteLLM - INFO - mcp_server_manager.py:3060 - reload_servers_from_database() - Found 4 MCP servers in database 15:01:07 - LiteLLM Proxy:INFO: proxy_server.py:6372 - Loading 0 search tool(s) from database into router 2026-05-25 15:01:07 - LiteLLM Proxy - INFO - proxy_server.py:6372 - _init_search_tools_in_db() - Loading 0 search tool(s) from database into router 15:01:07 - LiteLLM Proxy:INFO: tool_registry_writer.py:329 - ToolPolicyRegistry: synced 41 tool policies and 0 object permissions from DB 2026-05-25 15:01:07 - LiteLLM Proxy - INFO - tool_registry_writer.py:329 - sync_tool_policy_from_db() - ToolPolicyRegistry: synced 41 tool pol…