mirror of
https://github.com/BerriAI/litellm.git
synced 2026-09-06 08:16:43 +00:00
The mcp_tool_search virtual tool only did substring token matching, so a native MCP client asking for "FX" could not find a tool described as "foreign exchange rates" even though the same catalog is ranked by embeddings on /responses and /chat/completions. Adds litellm_settings.mcp_tool_search (embedding_model, top_k, similarity_threshold, core_tools). With an embedding model the caller's authorized catalog from _list_mcp_tools is ranked by cosine similarity of name plus description; configured core tools the caller can reach come first and do not consume top_k. Without an embedding model the keyword fallback keeps the old behavior. Settings are hot-reloadable from the DB, exposed on /get and /update mcp_tool_search_settings, and editable from the Admin UI under MCP Servers > Tool Search. The embedding index is shared with agent_search via a new SemanticTextIndex. Resolves LIT-6751 Co-authored-by: yassin <yassin@berri.ai> Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
146 lines
2.4 KiB
JSON
146 lines
2.4 KiB
JSON
{
|
|
"reportAny": {
|
|
"limit": 14074
|
|
},
|
|
"reportArgumentType": {
|
|
"limit": 2216
|
|
},
|
|
"reportAssignmentType": {
|
|
"limit": 319
|
|
},
|
|
"reportAttributeAccessIssue": {
|
|
"limit": 480
|
|
},
|
|
"reportCallIssue": {
|
|
"limit": 112
|
|
},
|
|
"reportConstantRedefinition": {
|
|
"limit": 40
|
|
},
|
|
"reportDeprecated": {
|
|
"limit": 211
|
|
},
|
|
"reportDuplicateImport": {
|
|
"limit": 19
|
|
},
|
|
"reportExplicitAny": {
|
|
"limit": 4125
|
|
},
|
|
"reportFunctionMemberAccess": {
|
|
"limit": 7
|
|
},
|
|
"reportGeneralTypeIssues": {
|
|
"limit": 101
|
|
},
|
|
"reportIncompatibleMethodOverride": {
|
|
"limit": 56
|
|
},
|
|
"reportIncompatibleVariableOverride": {
|
|
"limit": 8
|
|
},
|
|
"reportInconsistentOverload": {
|
|
"limit": 12
|
|
},
|
|
"reportIndexIssue": {
|
|
"limit": 25
|
|
},
|
|
"reportInvalidTypeForm": {
|
|
"limit": 34
|
|
},
|
|
"reportInvalidTypeVarUse": {
|
|
"limit": 2
|
|
},
|
|
"reportMatchNotExhaustive": {
|
|
"limit": 0
|
|
},
|
|
"reportMissingParameterType": {
|
|
"limit": 5601
|
|
},
|
|
"reportMissingTypeArgument": {
|
|
"limit": 15306
|
|
},
|
|
"reportMissingTypeStubs": {
|
|
"limit": 40
|
|
},
|
|
"reportOperatorIssue": {
|
|
"limit": 0
|
|
},
|
|
"reportOptionalCall": {
|
|
"limit": 0
|
|
},
|
|
"reportOptionalIterable": {
|
|
"limit": 0
|
|
},
|
|
"reportOptionalMemberAccess": {
|
|
"limit": 0
|
|
},
|
|
"reportOptionalOperand": {
|
|
"limit": 0
|
|
},
|
|
"reportOptionalSubscript": {
|
|
"limit": 0
|
|
},
|
|
"reportPossiblyUnboundVariable": {
|
|
"limit": 56
|
|
},
|
|
"reportPrivateUsage": {
|
|
"limit": 1808
|
|
},
|
|
"reportRedeclaration": {
|
|
"limit": 8
|
|
},
|
|
"reportReturnType": {
|
|
"limit": 181
|
|
},
|
|
"reportTypedDictNotRequiredAccess": {
|
|
"limit": 24
|
|
},
|
|
"reportUndefinedVariable": {
|
|
"limit": 0
|
|
},
|
|
"reportUnknownArgumentType": {
|
|
"limit": 44364
|
|
},
|
|
"reportUnknownLambdaType": {
|
|
"limit": 109
|
|
},
|
|
"reportUnknownMemberType": {
|
|
"limit": 38350
|
|
},
|
|
"reportUnknownParameterType": {
|
|
"limit": 19625
|
|
},
|
|
"reportUnknownVariableType": {
|
|
"limit": 29877
|
|
},
|
|
"reportUnnecessaryCast": {
|
|
"limit": 111
|
|
},
|
|
"reportUnnecessaryComparison": {
|
|
"limit": 692
|
|
},
|
|
"reportUnnecessaryContains": {
|
|
"limit": 5
|
|
},
|
|
"reportUnnecessaryIsInstance": {
|
|
"limit": 826
|
|
},
|
|
"reportUntypedBaseClass": {
|
|
"limit": 0
|
|
},
|
|
"reportUntypedFunctionDecorator": {
|
|
"limit": 27
|
|
},
|
|
"reportUnusedClass": {
|
|
"limit": 21
|
|
},
|
|
"reportUnusedFunction": {
|
|
"limit": 138
|
|
},
|
|
"reportUnusedImport": {
|
|
"limit": 542
|
|
},
|
|
"reportUnusedVariable": {
|
|
"limit": 137
|
|
}
|
|
}
|