alita-sdk 0.3.429__tar.gz → 0.3.431__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of alita-sdk might be problematic. Click here for more details.

Files changed (374) hide show
  1. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/PKG-INFO +1 -1
  2. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/clients/mcp_discovery.py +1 -1
  3. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/clients/mcp_manager.py +1 -1
  4. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/models/mcp_models.py +1 -1
  5. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/toolkits/mcp.py +80 -95
  6. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/toolkits/tools.py +11 -1
  7. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk.egg-info/PKG-INFO +1 -1
  8. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/pyproject.toml +1 -1
  9. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/LICENSE +0 -0
  10. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/README.md +0 -0
  11. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/__init__.py +0 -0
  12. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/community/__init__.py +0 -0
  13. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/community/utils.py +0 -0
  14. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/__init__.py +0 -0
  15. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/ado.py +0 -0
  16. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/azure_search.py +0 -0
  17. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/bigquery.py +0 -0
  18. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/bitbucket.py +0 -0
  19. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/browser.py +0 -0
  20. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/carrier.py +0 -0
  21. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/confluence.py +0 -0
  22. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/delta_lake.py +0 -0
  23. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/embedding.py +0 -0
  24. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/figma.py +0 -0
  25. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/github.py +0 -0
  26. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/gitlab.py +0 -0
  27. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/google_places.py +0 -0
  28. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/jira.py +0 -0
  29. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/pgvector.py +0 -0
  30. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/postman.py +0 -0
  31. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/qtest.py +0 -0
  32. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/rally.py +0 -0
  33. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/report_portal.py +0 -0
  34. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/salesforce.py +0 -0
  35. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/service_now.py +0 -0
  36. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/sharepoint.py +0 -0
  37. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/slack.py +0 -0
  38. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/sonar.py +0 -0
  39. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/sql.py +0 -0
  40. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/testio.py +0 -0
  41. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/testrail.py +0 -0
  42. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/xray.py +0 -0
  43. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/zephyr.py +0 -0
  44. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/zephyr_enterprise.py +0 -0
  45. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/configurations/zephyr_essential.py +0 -0
  46. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/__init__.py +0 -0
  47. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/clients/__init__.py +0 -0
  48. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/clients/artifact.py +0 -0
  49. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/clients/client.py +0 -0
  50. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/clients/datasource.py +0 -0
  51. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/clients/prompt.py +0 -0
  52. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/clients/sandbox_client.py +0 -0
  53. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/__init__.py +0 -0
  54. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/agents/__init__.py +0 -0
  55. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/agents/xml_chat.py +0 -0
  56. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/assistant.py +0 -0
  57. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/chat_message_template.py +0 -0
  58. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/constants.py +0 -0
  59. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/document_loaders/AlitaBDDScenariosLoader.py +0 -0
  60. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/document_loaders/AlitaCSVLoader.py +0 -0
  61. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/document_loaders/AlitaConfluenceLoader.py +0 -0
  62. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/document_loaders/AlitaDirectoryLoader.py +0 -0
  63. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/document_loaders/AlitaDocxMammothLoader.py +0 -0
  64. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/document_loaders/AlitaExcelLoader.py +0 -0
  65. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/document_loaders/AlitaGitRepoLoader.py +0 -0
  66. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/document_loaders/AlitaImageLoader.py +0 -0
  67. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/document_loaders/AlitaJSONLoader.py +0 -0
  68. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/document_loaders/AlitaJiraLoader.py +0 -0
  69. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/document_loaders/AlitaMarkdownLoader.py +0 -0
  70. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/document_loaders/AlitaPDFLoader.py +0 -0
  71. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/document_loaders/AlitaPowerPointLoader.py +0 -0
  72. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/document_loaders/AlitaPythonLoader.py +0 -0
  73. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/document_loaders/AlitaQtestLoader.py +0 -0
  74. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/document_loaders/AlitaTableLoader.py +0 -0
  75. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/document_loaders/AlitaTextLoader.py +0 -0
  76. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/document_loaders/ImageParser.py +0 -0
  77. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/document_loaders/__init__.py +0 -0
  78. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/document_loaders/constants.py +0 -0
  79. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/document_loaders/utils.py +0 -0
  80. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/indexer.py +0 -0
  81. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/interfaces/__init__.py +0 -0
  82. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/interfaces/kwextractor.py +0 -0
  83. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/interfaces/llm_processor.py +0 -0
  84. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/interfaces/loaders.py +0 -0
  85. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/interfaces/splitters.py +0 -0
  86. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/langraph_agent.py +0 -0
  87. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/mixedAgentParser.py +0 -0
  88. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/mixedAgentRenderes.py +0 -0
  89. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/retrievers/AlitaRetriever.py +0 -0
  90. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/retrievers/VectorstoreRetriever.py +0 -0
  91. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/retrievers/__init__.py +0 -0
  92. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/store_manager.py +0 -0
  93. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/tools/__init__.py +0 -0
  94. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/tools/bdd_parser/__init__.py +0 -0
  95. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/tools/bdd_parser/bdd_exceptions.py +0 -0
  96. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/tools/bdd_parser/bdd_parser.py +0 -0
  97. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/tools/bdd_parser/feature_types.py +0 -0
  98. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/tools/bdd_parser/parser.py +0 -0
  99. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/tools/git.py +0 -0
  100. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/tools/log.py +0 -0
  101. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/tools/quota.py +0 -0
  102. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/tools/state.py +0 -0
  103. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/tools/utils.py +0 -0
  104. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/tools/vector.py +0 -0
  105. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/langchain/utils.py +0 -0
  106. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/llms/__init__.py +0 -0
  107. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/llms/preloaded.py +0 -0
  108. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/toolkits/__init__.py +0 -0
  109. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/toolkits/application.py +0 -0
  110. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/toolkits/artifact.py +0 -0
  111. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/toolkits/configurations.py +0 -0
  112. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/toolkits/datasource.py +0 -0
  113. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/toolkits/prompt.py +0 -0
  114. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/toolkits/subgraph.py +0 -0
  115. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/toolkits/vectorstore.py +0 -0
  116. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/tools/__init__.py +0 -0
  117. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/tools/agent.py +0 -0
  118. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/tools/application.py +0 -0
  119. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/tools/artifact.py +0 -0
  120. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/tools/datasource.py +0 -0
  121. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/tools/echo.py +0 -0
  122. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/tools/function.py +0 -0
  123. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/tools/graph.py +0 -0
  124. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/tools/image_generation.py +0 -0
  125. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/tools/indexer_tool.py +0 -0
  126. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/tools/llm.py +0 -0
  127. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/tools/loop.py +0 -0
  128. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/tools/loop_output.py +0 -0
  129. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/tools/mcp_inspect_tool.py +0 -0
  130. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/tools/mcp_server_tool.py +0 -0
  131. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/tools/pgvector_search.py +0 -0
  132. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/tools/prompt.py +0 -0
  133. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/tools/router.py +0 -0
  134. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/tools/sandbox.py +0 -0
  135. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/tools/tool.py +0 -0
  136. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/tools/vectorstore.py +0 -0
  137. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/tools/vectorstore_base.py +0 -0
  138. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/utils/AlitaCallback.py +0 -0
  139. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/utils/__init__.py +0 -0
  140. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/utils/constants.py +0 -0
  141. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/utils/evaluate.py +0 -0
  142. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/utils/logging.py +0 -0
  143. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/utils/save_dataframe.py +0 -0
  144. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/utils/streamlit.py +0 -0
  145. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/utils/toolkit_runtime.py +0 -0
  146. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/utils/toolkit_utils.py +0 -0
  147. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/runtime/utils/utils.py +0 -0
  148. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/__init__.py +0 -0
  149. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/ado/__init__.py +0 -0
  150. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/ado/repos/__init__.py +0 -0
  151. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/ado/repos/repos_wrapper.py +0 -0
  152. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/ado/test_plan/__init__.py +0 -0
  153. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/ado/test_plan/test_plan_wrapper.py +0 -0
  154. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/ado/utils.py +0 -0
  155. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/ado/wiki/__init__.py +0 -0
  156. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/ado/wiki/ado_wrapper.py +0 -0
  157. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/ado/work_item/__init__.py +0 -0
  158. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/ado/work_item/ado_wrapper.py +0 -0
  159. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/advanced_jira_mining/__init__.py +0 -0
  160. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/advanced_jira_mining/data_mining_wrapper.py +0 -0
  161. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/aws/__init__.py +0 -0
  162. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/aws/delta_lake/__init__.py +0 -0
  163. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/aws/delta_lake/api_wrapper.py +0 -0
  164. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/aws/delta_lake/schemas.py +0 -0
  165. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/aws/delta_lake/tool.py +0 -0
  166. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/azure_ai/__init__.py +0 -0
  167. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/azure_ai/search/__init__.py +0 -0
  168. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/azure_ai/search/api_wrapper.py +0 -0
  169. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/base/__init__.py +0 -0
  170. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/base/tool.py +0 -0
  171. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/base_indexer_toolkit.py +0 -0
  172. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/bitbucket/__init__.py +0 -0
  173. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/bitbucket/api_wrapper.py +0 -0
  174. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/bitbucket/bitbucket_constants.py +0 -0
  175. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/bitbucket/cloud_api_wrapper.py +0 -0
  176. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/browser/__init__.py +0 -0
  177. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/browser/crawler.py +0 -0
  178. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/browser/duck_duck_go_search.py +0 -0
  179. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/browser/google_search_rag.py +0 -0
  180. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/browser/utils.py +0 -0
  181. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/browser/wiki.py +0 -0
  182. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/carrier/__init__.py +0 -0
  183. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/carrier/api_wrapper.py +0 -0
  184. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/carrier/backend_reports_tool.py +0 -0
  185. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/carrier/backend_tests_tool.py +0 -0
  186. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/carrier/cancel_ui_test_tool.py +0 -0
  187. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/carrier/carrier_sdk.py +0 -0
  188. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/carrier/create_ui_excel_report_tool.py +0 -0
  189. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/carrier/create_ui_test_tool.py +0 -0
  190. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/carrier/excel_reporter.py +0 -0
  191. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/carrier/lighthouse_excel_reporter.py +0 -0
  192. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/carrier/run_ui_test_tool.py +0 -0
  193. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/carrier/tickets_tool.py +0 -0
  194. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/carrier/tools.py +0 -0
  195. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/carrier/ui_reports_tool.py +0 -0
  196. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/carrier/update_ui_test_schedule_tool.py +0 -0
  197. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/carrier/utils.py +0 -0
  198. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/__init__.py +0 -0
  199. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/code/__init__.py +0 -0
  200. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/code/codeparser.py +0 -0
  201. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/code/constants.py +0 -0
  202. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/code/treesitter/__init__.py +0 -0
  203. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/code/treesitter/treesitter.py +0 -0
  204. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/code/treesitter/treesitter_c.py +0 -0
  205. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/code/treesitter/treesitter_cpp.py +0 -0
  206. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/code/treesitter/treesitter_cs.py +0 -0
  207. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/code/treesitter/treesitter_go.py +0 -0
  208. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/code/treesitter/treesitter_hs.py +0 -0
  209. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/code/treesitter/treesitter_java.py +0 -0
  210. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/code/treesitter/treesitter_js.py +0 -0
  211. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/code/treesitter/treesitter_kt.py +0 -0
  212. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/code/treesitter/treesitter_py.py +0 -0
  213. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/code/treesitter/treesitter_rb.py +0 -0
  214. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/code/treesitter/treesitter_registry.py +0 -0
  215. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/code/treesitter/treesitter_rs.py +0 -0
  216. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/code/treesitter/treesitter_ts.py +0 -0
  217. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/models.py +0 -0
  218. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/sematic/__init__.py +0 -0
  219. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/sematic/base.py +0 -0
  220. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/sematic/json_chunker.py +0 -0
  221. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/sematic/markdown_chunker.py +0 -0
  222. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/sematic/proposal_chunker.py +0 -0
  223. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/sematic/statistical_chunker.py +0 -0
  224. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/chunkers/utils.py +0 -0
  225. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/cloud/__init__.py +0 -0
  226. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/cloud/aws/__init__.py +0 -0
  227. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/cloud/aws/api_wrapper.py +0 -0
  228. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/cloud/azure/__init__.py +0 -0
  229. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/cloud/azure/api_wrapper.py +0 -0
  230. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/cloud/gcp/__init__.py +0 -0
  231. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/cloud/gcp/api_wrapper.py +0 -0
  232. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/cloud/k8s/__init__.py +0 -0
  233. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/cloud/k8s/api_wrapper.py +0 -0
  234. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/code/__init__.py +0 -0
  235. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/code/linter/__init__.py +0 -0
  236. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/code/linter/api_wrapper.py +0 -0
  237. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/code/loaders/codesearcher.py +0 -0
  238. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/code/sonar/__init__.py +0 -0
  239. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/code/sonar/api_wrapper.py +0 -0
  240. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/code_indexer_toolkit.py +0 -0
  241. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/confluence/__init__.py +0 -0
  242. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/confluence/api_wrapper.py +0 -0
  243. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/confluence/loader.py +0 -0
  244. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/confluence/utils.py +0 -0
  245. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/custom_open_api/__init__.py +0 -0
  246. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/custom_open_api/api_wrapper.py +0 -0
  247. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/elastic/__init__.py +0 -0
  248. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/elastic/api_wrapper.py +0 -0
  249. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/elitea_base.py +0 -0
  250. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/figma/__init__.py +0 -0
  251. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/figma/api_wrapper.py +0 -0
  252. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/github/__init__.py +0 -0
  253. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/github/api_wrapper.py +0 -0
  254. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/github/github_client.py +0 -0
  255. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/github/graphql_client_wrapper.py +0 -0
  256. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/github/schemas.py +0 -0
  257. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/github/tool.py +0 -0
  258. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/github/tool_prompts.py +0 -0
  259. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/gitlab/__init__.py +0 -0
  260. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/gitlab/api_wrapper.py +0 -0
  261. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/gitlab/tools.py +0 -0
  262. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/gitlab/utils.py +0 -0
  263. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/gitlab_org/__init__.py +0 -0
  264. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/gitlab_org/api_wrapper.py +0 -0
  265. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/gmail/__init__.py +0 -0
  266. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/gmail/gmail_wrapper.py +0 -0
  267. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/gmail/utils.py +0 -0
  268. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/google/__init__.py +0 -0
  269. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/google/bigquery/__init__.py +0 -0
  270. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/google/bigquery/api_wrapper.py +0 -0
  271. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/google/bigquery/schemas.py +0 -0
  272. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/google/bigquery/tool.py +0 -0
  273. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/google_places/__init__.py +0 -0
  274. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/google_places/api_wrapper.py +0 -0
  275. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/jira/__init__.py +0 -0
  276. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/jira/api_wrapper.py +0 -0
  277. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/keycloak/__init__.py +0 -0
  278. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/keycloak/api_wrapper.py +0 -0
  279. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/llm/__init__.py +0 -0
  280. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/llm/img_utils.py +0 -0
  281. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/llm/llm_utils.py +0 -0
  282. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/localgit/__init__.py +0 -0
  283. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/localgit/local_git.py +0 -0
  284. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/localgit/tool.py +0 -0
  285. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/memory/__init__.py +0 -0
  286. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/non_code_indexer_toolkit.py +0 -0
  287. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/ocr/__init__.py +0 -0
  288. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/ocr/api_wrapper.py +0 -0
  289. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/ocr/text_detection.py +0 -0
  290. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/openapi/__init__.py +0 -0
  291. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/pandas/__init__.py +0 -0
  292. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/pandas/api_wrapper.py +0 -0
  293. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/pandas/dataframe/__init__.py +0 -0
  294. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/pandas/dataframe/errors.py +0 -0
  295. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/pandas/dataframe/executor/__init__.py +0 -0
  296. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/pandas/dataframe/executor/code_environment.py +0 -0
  297. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/pandas/dataframe/executor/code_executor.py +0 -0
  298. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/pandas/dataframe/generator/__init__.py +0 -0
  299. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/pandas/dataframe/generator/base.py +0 -0
  300. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/pandas/dataframe/generator/code_cleaning.py +0 -0
  301. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/pandas/dataframe/generator/code_validator.py +0 -0
  302. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/pandas/dataframe/prompts.py +0 -0
  303. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/pandas/dataframe/serializer.py +0 -0
  304. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/pandas/dataframe/utils.py +0 -0
  305. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/pandas/statsmodels/__init__.py +0 -0
  306. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/pandas/statsmodels/base_stats.py +0 -0
  307. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/pandas/statsmodels/descriptive.py +0 -0
  308. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/pandas/statsmodels/hypothesis_testing.py +0 -0
  309. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/pandas/statsmodels/regression.py +0 -0
  310. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/postman/__init__.py +0 -0
  311. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/postman/api_wrapper.py +0 -0
  312. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/postman/postman_analysis.py +0 -0
  313. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/pptx/__init__.py +0 -0
  314. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/pptx/pptx_wrapper.py +0 -0
  315. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/qtest/__init__.py +0 -0
  316. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/qtest/api_wrapper.py +0 -0
  317. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/qtest/tool.py +0 -0
  318. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/rally/__init__.py +0 -0
  319. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/rally/api_wrapper.py +0 -0
  320. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/report_portal/__init__.py +0 -0
  321. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/report_portal/api_wrapper.py +0 -0
  322. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/report_portal/report_portal_client.py +0 -0
  323. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/salesforce/__init__.py +0 -0
  324. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/salesforce/api_wrapper.py +0 -0
  325. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/salesforce/model.py +0 -0
  326. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/servicenow/__init__.py +0 -0
  327. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/servicenow/api_wrapper.py +0 -0
  328. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/servicenow/servicenow_client.py +0 -0
  329. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/sharepoint/__init__.py +0 -0
  330. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/sharepoint/api_wrapper.py +0 -0
  331. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/sharepoint/authorization_helper.py +0 -0
  332. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/sharepoint/utils.py +0 -0
  333. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/slack/__init__.py +0 -0
  334. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/slack/api_wrapper.py +0 -0
  335. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/sql/__init__.py +0 -0
  336. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/sql/api_wrapper.py +0 -0
  337. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/sql/models.py +0 -0
  338. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/testio/__init__.py +0 -0
  339. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/testio/api_wrapper.py +0 -0
  340. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/testrail/__init__.py +0 -0
  341. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/testrail/api_wrapper.py +0 -0
  342. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/utils/__init__.py +0 -0
  343. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/utils/available_tools_decorator.py +0 -0
  344. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/utils/content_parser.py +0 -0
  345. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/vector_adapters/VectorStoreAdapter.py +0 -0
  346. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/vector_adapters/__init__.py +0 -0
  347. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/xray/__init__.py +0 -0
  348. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/xray/api_wrapper.py +0 -0
  349. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/yagmail/__init__.py +0 -0
  350. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/yagmail/yagmail_wrapper.py +0 -0
  351. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/zephyr/Zephyr.py +0 -0
  352. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/zephyr/__init__.py +0 -0
  353. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/zephyr/api_wrapper.py +0 -0
  354. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/zephyr/rest_client.py +0 -0
  355. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/zephyr_enterprise/__init__.py +0 -0
  356. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/zephyr_enterprise/api_wrapper.py +0 -0
  357. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/zephyr_enterprise/zephyr_enterprise.py +0 -0
  358. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/zephyr_essential/__init__.py +0 -0
  359. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/zephyr_essential/api_wrapper.py +0 -0
  360. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/zephyr_essential/client.py +0 -0
  361. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/zephyr_scale/__init__.py +0 -0
  362. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/zephyr_scale/api_wrapper.py +0 -0
  363. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/zephyr_squad/__init__.py +0 -0
  364. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/zephyr_squad/api_wrapper.py +0 -0
  365. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk/tools/zephyr_squad/zephyr_squad_cloud_client.py +0 -0
  366. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk.egg-info/SOURCES.txt +0 -0
  367. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk.egg-info/dependency_links.txt +0 -0
  368. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk.egg-info/requires.txt +0 -0
  369. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/alita_sdk.egg-info/top_level.txt +0 -0
  370. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/setup.cfg +0 -0
  371. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/tests/test_ado_analysis.py +0 -0
  372. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/tests/test_github_analysis.py +0 -0
  373. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/tests/test_gitlab_analysis.py +0 -0
  374. {alita_sdk-0.3.429 → alita_sdk-0.3.431}/tests/test_jira_analysis.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: alita_sdk
3
- Version: 0.3.429
3
+ Version: 0.3.431
4
4
  Summary: SDK for building langchain agents using resources from Alita
5
5
  Author-email: Artem Rozumenko <artyom.rozumenko@gmail.com>, Mikalai Biazruchka <mikalai_biazruchka@epam.com>, Roman Mitusov <roman_mitusov@epam.com>, Ivan Krakhmaliuk <lifedj27@gmail.com>, Artem Dubrovskiy <ad13box@gmail.com>
6
6
  License-Expression: Apache-2.0
@@ -232,7 +232,7 @@ class McpDiscoveryClient:
232
232
  name=tool_data.get("name", ""),
233
233
  description=tool_data.get("description", ""),
234
234
  server=server_info.name,
235
- schema=tool_data.get("inputSchema", {}),
235
+ input_schema=tool_data.get("inputSchema", {}),
236
236
  enabled=True
237
237
  )
238
238
  tools.append(tool_metadata)
@@ -119,7 +119,7 @@ class McpManager:
119
119
  name=tool_info.get('name', ''),
120
120
  description=tool_info.get('description', ''),
121
121
  server=server_name,
122
- schema=tool_info.get('inputSchema', {}),
122
+ input_schema=tool_info.get('inputSchema', {}),
123
123
  enabled=True
124
124
  )
125
125
  tools.append(metadata)
@@ -53,5 +53,5 @@ class McpToolMetadata(BaseModel):
53
53
  name: str = Field(description="Tool name")
54
54
  description: str = Field(description="Tool description")
55
55
  server: str = Field(description="Source server name")
56
- schema: Dict[str, Any] = Field(description="Tool input schema")
56
+ input_schema: Dict[str, Any] = Field(description="Tool input schema")
57
57
  enabled: bool = Field(default=True, description="Whether tool is enabled")
@@ -28,7 +28,7 @@ class McpToolkit(BaseToolkit):
28
28
  """
29
29
 
30
30
  tools: List[BaseTool] = []
31
- server_name: Optional[str] = None
31
+ toolkit_name: Optional[str] = None
32
32
 
33
33
  # Class variable (not Pydantic field) for tool name length limit
34
34
  toolkit_max_length: ClassVar[int] = 0 # No limit for MCP tool names
@@ -63,15 +63,6 @@ class McpToolkit(BaseToolkit):
63
63
 
64
64
  return create_model(
65
65
  'mcp',
66
- server_name=(
67
- str,
68
- Field(
69
- description="MCP server name/identifier",
70
- json_schema_extra={
71
- 'tooltip': 'Unique identifier for this MCP server'
72
- }
73
- )
74
- ),
75
66
  url=(
76
67
  str,
77
68
  Field(
@@ -104,7 +95,7 @@ class McpToolkit(BaseToolkit):
104
95
  discovery_mode=(
105
96
  Literal['static', 'dynamic', 'hybrid'],
106
97
  Field(
107
- default="hybrid",
98
+ default="dynamic",
108
99
  description="Discovery mode",
109
100
  json_schema_extra={
110
101
  'tooltip': 'static: use registry, dynamic: live discovery, hybrid: try dynamic first'
@@ -147,10 +138,10 @@ class McpToolkit(BaseToolkit):
147
138
  __config__=ConfigDict(
148
139
  json_schema_extra={
149
140
  'metadata': {
150
- "label": "mcp",
151
- "icon_url": "mcp-icon.svg",
152
- "categories": ["integration", "tools"],
153
- "extra_categories": ["mcp", "remote tools", "protocol", "http"],
141
+ "label": "Remove MCP",
142
+ "icon_url": None,
143
+ "categories": ["other"],
144
+ "extra_categories": ["remote tools", "sse", "http"],
154
145
  "description": "Connect to a remote Model Context Protocol (MCP) server via HTTP to access tools"
155
146
  }
156
147
  }
@@ -160,7 +151,6 @@ class McpToolkit(BaseToolkit):
160
151
  @classmethod
161
152
  def get_toolkit(
162
153
  cls,
163
- server_name: str,
164
154
  url: str,
165
155
  headers: Optional[Dict[str, str]] = None,
166
156
  timeout: int = 60,
@@ -169,7 +159,7 @@ class McpToolkit(BaseToolkit):
169
159
  selected_tools: List[str] = None,
170
160
  enable_caching: bool = True,
171
161
  cache_ttl: int = 300,
172
- toolkit_name: Optional[str] = None,
162
+ toolkit_name: str = None,
173
163
  client = None,
174
164
  **kwargs
175
165
  ) -> 'McpToolkit':
@@ -183,7 +173,6 @@ class McpToolkit(BaseToolkit):
183
173
  4. Return all tools via get_tools() method
184
174
 
185
175
  Args:
186
- server_name: MCP server name/identifier
187
176
  url: MCP server HTTP URL
188
177
  headers: HTTP headers for authentication
189
178
  timeout: Request timeout in seconds
@@ -192,7 +181,7 @@ class McpToolkit(BaseToolkit):
192
181
  selected_tools: List of specific tools to enable (empty = all tools)
193
182
  enable_caching: Whether to enable caching
194
183
  cache_ttl: Cache TTL in seconds
195
- toolkit_name: Optional name prefix for tools
184
+ toolkit_name: Toolkit name/identifier and prefix for tools
196
185
  client: Alita client for MCP communication
197
186
  **kwargs: Additional configuration options
198
187
 
@@ -201,8 +190,11 @@ class McpToolkit(BaseToolkit):
201
190
  """
202
191
  if selected_tools is None:
203
192
  selected_tools = []
193
+
194
+ if not toolkit_name:
195
+ raise ValueError("toolkit_name is required")
204
196
 
205
- logger.info(f"Creating MCP toolkit for server: {server_name}")
197
+ logger.info(f"Creating MCP toolkit: {toolkit_name}")
206
198
 
207
199
  # Parse headers if they're provided as a JSON string
208
200
  parsed_headers = headers
@@ -232,15 +224,14 @@ class McpToolkit(BaseToolkit):
232
224
  raise ValueError(f"Invalid MCP connection configuration: {e}")
233
225
 
234
226
  # Create toolkit instance
235
- toolkit = cls(server_name=server_name)
227
+ toolkit = cls(toolkit_name=toolkit_name)
236
228
 
237
229
  # Generate tools from the MCP server
238
230
  toolkit.tools = cls._create_tools_from_server(
239
- server_name=server_name,
231
+ toolkit_name=toolkit_name,
240
232
  connection_config=connection_config,
241
233
  timeout=timeout,
242
234
  selected_tools=selected_tools,
243
- toolkit_name=toolkit_name,
244
235
  client=client,
245
236
  discovery_mode=discovery_mode
246
237
  )
@@ -250,13 +241,12 @@ class McpToolkit(BaseToolkit):
250
241
  @classmethod
251
242
  def _create_tools_from_server(
252
243
  cls,
253
- server_name: str,
244
+ toolkit_name: str,
254
245
  connection_config: McpConnectionConfig,
255
246
  timeout: int,
256
247
  selected_tools: List[str],
257
- toolkit_name: Optional[str],
258
248
  client,
259
- discovery_mode: str = "hybrid"
249
+ discovery_mode: str = "dynamic"
260
250
  ) -> List[BaseTool]:
261
251
  """
262
252
  Create tools from a single MCP server. Always performs live discovery when connection config is provided.
@@ -265,11 +255,11 @@ class McpToolkit(BaseToolkit):
265
255
 
266
256
  # First, try direct HTTP discovery since we have valid connection config
267
257
  try:
268
- logger.info(f"Discovering tools from MCP server '{server_name}' at {connection_config.url}")
258
+ logger.info(f"Discovering tools from MCP toolkit '{toolkit_name}' at {connection_config.url}")
269
259
 
270
260
  # Use synchronous HTTP discovery for toolkit initialization
271
261
  tool_metadata_list = cls._discover_tools_sync(
272
- server_name=server_name,
262
+ toolkit_name=toolkit_name,
273
263
  connection_config=connection_config,
274
264
  timeout=timeout
275
265
  )
@@ -286,8 +276,7 @@ class McpToolkit(BaseToolkit):
286
276
  for tool_metadata in tool_metadata_list:
287
277
  server_tool = cls._create_tool_from_dict(
288
278
  tool_dict=tool_metadata,
289
- server_name=server_name,
290
- toolkit_name=toolkit_name or server_name,
279
+ toolkit_name=toolkit_name,
291
280
  timeout=timeout,
292
281
  client=client
293
282
  )
@@ -295,34 +284,33 @@ class McpToolkit(BaseToolkit):
295
284
  if server_tool:
296
285
  tools.append(server_tool)
297
286
 
298
- logger.info(f"Successfully created {len(tools)} MCP tools from server '{server_name}' via direct discovery")
287
+ logger.info(f"Successfully created {len(tools)} MCP tools from toolkit '{toolkit_name}' via direct discovery")
299
288
 
300
289
  except Exception as e:
301
- logger.error(f"Direct discovery failed for MCP server '{server_name}': {e}")
290
+ logger.error(f"Direct discovery failed for MCP toolkit '{toolkit_name}': {e}")
302
291
 
303
292
  # Fallback to static mode if available and not already static
304
293
  if client and discovery_mode != "static":
305
- logger.info(f"Falling back to static discovery for server '{server_name}'")
306
- tools = cls._create_tools_static(server_name, selected_tools, toolkit_name, timeout, client)
294
+ logger.info(f"Falling back to static discovery for toolkit '{toolkit_name}'")
295
+ tools = cls._create_tools_static(toolkit_name, selected_tools, timeout, client)
307
296
  else:
308
- logger.warning(f"No fallback available for server '{server_name}' - returning empty tools list")
297
+ logger.warning(f"No fallback available for toolkit '{toolkit_name}' - returning empty tools list")
309
298
 
310
299
  # Always add the inspection tool (not subject to selected_tools filtering)
311
300
  inspection_tool = cls._create_inspection_tool(
312
- server_name=server_name,
313
- connection_config=connection_config,
314
- toolkit_name=toolkit_name or server_name
301
+ toolkit_name=toolkit_name,
302
+ connection_config=connection_config
315
303
  )
316
304
  if inspection_tool:
317
305
  tools.append(inspection_tool)
318
- logger.info(f"Added MCP inspection tool for server '{server_name}'")
306
+ logger.info(f"Added MCP inspection tool for toolkit '{toolkit_name}'")
319
307
 
320
308
  return tools
321
309
 
322
310
  @classmethod
323
311
  def _discover_tools_sync(
324
312
  cls,
325
- server_name: str,
313
+ toolkit_name: str,
326
314
  connection_config: McpConnectionConfig,
327
315
  timeout: int
328
316
  ) -> List[Dict[str, Any]]:
@@ -340,7 +328,10 @@ class McpToolkit(BaseToolkit):
340
328
  "params": {}
341
329
  }
342
330
 
343
- headers = {"Content-Type": "application/json"}
331
+ headers = {
332
+ "Content-Type": "application/json",
333
+ "Accept": "application/json, text/event-stream"
334
+ }
344
335
  if connection_config.headers:
345
336
  headers.update(connection_config.headers)
346
337
 
@@ -362,19 +353,18 @@ class McpToolkit(BaseToolkit):
362
353
 
363
354
  # Parse MCP response and extract tools
364
355
  tools_data = data.get("result", {}).get("tools", [])
365
- logger.info(f"Discovered {len(tools_data)} tools from MCP server '{server_name}'")
356
+ logger.info(f"Discovered {len(tools_data)} tools from MCP toolkit '{toolkit_name}'")
366
357
 
367
358
  return tools_data
368
359
 
369
360
  except Exception as e:
370
- logger.error(f"Failed to discover tools from MCP server '{server_name}': {e}")
361
+ logger.error(f"Failed to discover tools from MCP toolkit '{toolkit_name}': {e}")
371
362
  raise
372
363
 
373
364
  @classmethod
374
365
  def _create_tool_from_dict(
375
366
  cls,
376
367
  tool_dict: Dict[str, Any],
377
- server_name: str,
378
368
  toolkit_name: str,
379
369
  timeout: int,
380
370
  client
@@ -384,31 +374,30 @@ class McpToolkit(BaseToolkit):
384
374
  # Store toolkit_max_length in local variable to avoid contextual access issues
385
375
  max_length_value = cls.toolkit_max_length
386
376
 
387
- # Clean server name for prefixing (use server_name instead of toolkit_name)
388
- clean_prefix = clean_string(server_name, max_length_value)
377
+ # Clean toolkit name for prefixing
378
+ clean_prefix = clean_string(toolkit_name, max_length_value)
389
379
 
390
380
  full_tool_name = f'{clean_prefix}{TOOLKIT_SPLITTER}{tool_dict.get("name", "unknown")}'
391
381
 
392
382
  return McpServerTool(
393
383
  name=full_tool_name,
394
- description=f"MCP tool '{tool_dict.get('name')}' from server '{server_name}': {tool_dict.get('description', '')}",
384
+ description=f"MCP tool '{tool_dict.get('name')}' from toolkit '{toolkit_name}': {tool_dict.get('description', '')}",
395
385
  args_schema=McpServerTool.create_pydantic_model_from_schema(
396
386
  tool_dict.get("inputSchema", {})
397
387
  ),
398
388
  client=client,
399
- server=server_name,
389
+ server=toolkit_name,
400
390
  tool_timeout_sec=timeout
401
391
  )
402
392
  except Exception as e:
403
- logger.error(f"Failed to create MCP tool '{tool_dict.get('name')}' from server '{server_name}': {e}")
393
+ logger.error(f"Failed to create MCP tool '{tool_dict.get('name')}' from toolkit '{toolkit_name}': {e}")
404
394
  return None
405
395
 
406
396
  @classmethod
407
397
  def _create_tools_static(
408
398
  cls,
409
- server_name: str,
399
+ toolkit_name: str,
410
400
  selected_tools: List[str],
411
- toolkit_name: Optional[str],
412
401
  timeout: int,
413
402
  client
414
403
  ) -> List[BaseTool]:
@@ -421,10 +410,10 @@ class McpToolkit(BaseToolkit):
421
410
 
422
411
  try:
423
412
  all_toolkits = client.get_mcp_toolkits()
424
- server_toolkit = next((tk for tk in all_toolkits if tk.get('name') == server_name), None)
413
+ server_toolkit = next((tk for tk in all_toolkits if tk.get('name') == toolkit_name), None)
425
414
 
426
415
  if not server_toolkit:
427
- logger.warning(f"MCP server '{server_name}' not found in available toolkits")
416
+ logger.warning(f"MCP toolkit '{toolkit_name}' not found in available toolkits")
428
417
  return tools
429
418
 
430
419
  # Extract tools from the toolkit
@@ -440,8 +429,7 @@ class McpToolkit(BaseToolkit):
440
429
 
441
430
  # Create the tool
442
431
  server_tool = cls._create_single_tool(
443
- server_name=server_name,
444
- toolkit_name=toolkit_name or server_name,
432
+ toolkit_name=toolkit_name,
445
433
  available_tool=available_tool,
446
434
  timeout=timeout,
447
435
  client=client
@@ -450,7 +438,7 @@ class McpToolkit(BaseToolkit):
450
438
  if server_tool:
451
439
  tools.append(server_tool)
452
440
 
453
- logger.info(f"Successfully created {len(tools)} MCP tools from server '{server_name}' using static mode")
441
+ logger.info(f"Successfully created {len(tools)} MCP tools from toolkit '{toolkit_name}' using static mode")
454
442
 
455
443
  except Exception as e:
456
444
  logger.error(f"Error in static tool creation: {e}")
@@ -461,15 +449,15 @@ class McpToolkit(BaseToolkit):
461
449
  # We don't have full connection config in static mode, so create a basic one
462
450
  # The inspection tool will work as long as the server is accessible
463
451
  inspection_tool = McpInspectTool(
464
- name=f"{clean_string(server_name, 50)}{TOOLKIT_SPLITTER}mcp_inspect",
465
- server_name=server_name,
452
+ name=f"{clean_string(toolkit_name, 50)}{TOOLKIT_SPLITTER}mcp_inspect",
453
+ server_name=toolkit_name,
466
454
  server_url="", # Will be populated by the client if available
467
- description=f"Inspect available tools, prompts, and resources from MCP server '{server_name}'"
455
+ description=f"Inspect available tools, prompts, and resources from MCP toolkit '{toolkit_name}'"
468
456
  )
469
457
  tools.append(inspection_tool)
470
- logger.info(f"Added MCP inspection tool for server '{server_name}' (static mode)")
458
+ logger.info(f"Added MCP inspection tool for toolkit '{toolkit_name}' (static mode)")
471
459
  except Exception as e:
472
- logger.warning(f"Failed to create inspection tool for {server_name}: {e}")
460
+ logger.warning(f"Failed to create inspection tool for {toolkit_name}: {e}")
473
461
 
474
462
  return tools
475
463
 
@@ -493,7 +481,7 @@ class McpToolkit(BaseToolkit):
493
481
  return McpServerTool(
494
482
  name=full_tool_name,
495
483
  description=f"MCP tool '{tool_metadata.name}' from server '{tool_metadata.server}': {tool_metadata.description}",
496
- args_schema=McpServerTool.create_pydantic_model_from_schema(tool_metadata.schema),
484
+ args_schema=McpServerTool.create_pydantic_model_from_schema(tool_metadata.input_schema),
497
485
  client=client,
498
486
  server=tool_metadata.server,
499
487
  tool_timeout_sec=timeout
@@ -505,7 +493,6 @@ class McpToolkit(BaseToolkit):
505
493
  @classmethod
506
494
  def _create_single_tool(
507
495
  cls,
508
- server_name: str,
509
496
  toolkit_name: str,
510
497
  available_tool: Dict[str, Any],
511
498
  timeout: int,
@@ -516,51 +503,50 @@ class McpToolkit(BaseToolkit):
516
503
  # Store toolkit_max_length in local variable to avoid contextual access issues
517
504
  max_length_value = cls.toolkit_max_length
518
505
 
519
- # Clean server name for prefixing (use server_name instead of toolkit_name)
520
- clean_prefix = clean_string(server_name, max_length_value)
506
+ # Clean toolkit name for prefixing
507
+ clean_prefix = clean_string(toolkit_name, max_length_value)
521
508
 
522
509
  full_tool_name = f'{clean_prefix}{TOOLKIT_SPLITTER}{available_tool["name"]}'
523
510
 
524
511
  return McpServerTool(
525
512
  name=full_tool_name,
526
- description=f"MCP tool '{available_tool['name']}' from server '{server_name}': {available_tool.get('description', '')}",
513
+ description=f"MCP tool '{available_tool['name']}' from toolkit '{toolkit_name}': {available_tool.get('description', '')}",
527
514
  args_schema=McpServerTool.create_pydantic_model_from_schema(
528
515
  available_tool.get("inputSchema", {})
529
516
  ),
530
517
  client=client,
531
- server=server_name,
518
+ server=toolkit_name,
532
519
  tool_timeout_sec=timeout
533
520
  )
534
521
  except Exception as e:
535
- logger.error(f"Failed to create MCP tool '{available_tool.get('name')}' from server '{server_name}': {e}")
522
+ logger.error(f"Failed to create MCP tool '{available_tool.get('name')}' from toolkit '{toolkit_name}': {e}")
536
523
  return None
537
524
 
538
525
  @classmethod
539
526
  def _create_inspection_tool(
540
527
  cls,
541
- server_name: str,
542
- connection_config: McpConnectionConfig,
543
- toolkit_name: str
528
+ toolkit_name: str,
529
+ connection_config: McpConnectionConfig
544
530
  ) -> Optional[BaseTool]:
545
- """Create the inspection tool for the MCP server."""
531
+ """Create the inspection tool for the MCP toolkit."""
546
532
  try:
547
533
  # Store toolkit_max_length in local variable to avoid contextual access issues
548
534
  max_length_value = cls.toolkit_max_length
549
535
 
550
- # Clean server name for prefixing (use server_name instead of toolkit_name)
551
- clean_prefix = clean_string(server_name, max_length_value)
536
+ # Clean toolkit name for prefixing
537
+ clean_prefix = clean_string(toolkit_name, max_length_value)
552
538
 
553
539
  full_tool_name = f'{clean_prefix}{TOOLKIT_SPLITTER}mcp_inspect'
554
540
 
555
541
  return McpInspectTool(
556
542
  name=full_tool_name,
557
- server_name=server_name,
543
+ server_name=toolkit_name,
558
544
  server_url=connection_config.url,
559
545
  server_headers=connection_config.headers,
560
- description=f"Inspect available tools, prompts, and resources from MCP server '{server_name}'"
546
+ description=f"Inspect available tools, prompts, and resources from MCP toolkit '{toolkit_name}'"
561
547
  )
562
548
  except Exception as e:
563
- logger.error(f"Failed to create MCP inspection tool for server '{server_name}': {e}")
549
+ logger.error(f"Failed to create MCP inspection tool for toolkit '{toolkit_name}': {e}")
564
550
  return None
565
551
 
566
552
  def get_tools(self) -> List[BaseTool]:
@@ -568,31 +554,31 @@ class McpToolkit(BaseToolkit):
568
554
  return self.tools
569
555
 
570
556
  async def refresh_tools(self):
571
- """Manually refresh tools from the MCP server."""
572
- if not self.server_name:
573
- logger.warning("Cannot refresh tools: server_name not set")
557
+ """Manually refresh tools from the MCP toolkit."""
558
+ if not self.toolkit_name:
559
+ logger.warning("Cannot refresh tools: toolkit_name not set")
574
560
  return
575
561
 
576
562
  try:
577
563
  from ..clients.mcp_manager import get_mcp_manager
578
564
  manager = get_mcp_manager()
579
- await manager.refresh_server(self.server_name)
580
- logger.info(f"Successfully refreshed tools for server {self.server_name}")
565
+ await manager.refresh_server(self.toolkit_name)
566
+ logger.info(f"Successfully refreshed tools for toolkit {self.toolkit_name}")
581
567
  except Exception as e:
582
- logger.error(f"Failed to refresh tools for server {self.server_name}: {e}")
568
+ logger.error(f"Failed to refresh tools for toolkit {self.toolkit_name}: {e}")
583
569
 
584
570
  async def get_server_health(self) -> Dict[str, Any]:
585
- """Get health status of the configured MCP server."""
586
- if not self.server_name:
571
+ """Get health status of the configured MCP toolkit."""
572
+ if not self.toolkit_name:
587
573
  return {"status": "not_configured"}
588
574
 
589
575
  try:
590
576
  from ..clients.mcp_manager import get_mcp_manager
591
577
  manager = get_mcp_manager()
592
- health_info = await manager.get_server_health(self.server_name)
578
+ health_info = await manager.get_server_health(self.toolkit_name)
593
579
  return health_info
594
580
  except Exception as e:
595
- logger.error(f"Failed to get server health for {self.server_name}: {e}")
581
+ logger.error(f"Failed to get server health for {self.toolkit_name}: {e}")
596
582
  return {"status": "error", "error": str(e)}
597
583
 
598
584
 
@@ -611,14 +597,14 @@ def get_tools(tool_config: dict, alita_client, llm=None, memory_store=None) -> L
611
597
  List of configured MCP tools
612
598
  """
613
599
  settings = tool_config.get('settings', {})
600
+ toolkit_name = tool_config.get('toolkit_name')
614
601
 
615
602
  # Extract required fields
616
- server_name = settings.get('server_name')
617
603
  url = settings.get('url')
618
604
  headers = settings.get('headers')
619
605
 
620
- if not server_name:
621
- logger.error("MCP toolkit configuration missing required 'server_name'")
606
+ if not toolkit_name:
607
+ logger.error("MCP toolkit configuration missing required 'toolkit_name'")
622
608
  return []
623
609
 
624
610
  if not url:
@@ -626,16 +612,15 @@ def get_tools(tool_config: dict, alita_client, llm=None, memory_store=None) -> L
626
612
  return []
627
613
 
628
614
  return McpToolkit.get_toolkit(
629
- server_name=server_name,
630
615
  url=url,
631
616
  headers=headers,
632
617
  timeout=settings.get('timeout', 60),
633
- discovery_mode=settings.get('discovery_mode', 'hybrid'),
618
+ discovery_mode=settings.get('discovery_mode', 'dynamic'),
634
619
  discovery_interval=settings.get('discovery_interval', 300),
635
620
  selected_tools=settings.get('selected_tools', []),
636
621
  enable_caching=settings.get('enable_caching', True),
637
622
  cache_ttl=settings.get('cache_ttl', 300),
638
- toolkit_name=tool_config.get('toolkit_name'),
623
+ toolkit_name=toolkit_name,
639
624
  client=alita_client
640
625
  ).get_tools()
641
626
 
@@ -653,11 +638,11 @@ async def stop_global_discovery():
653
638
  await shutdown_discovery_service()
654
639
 
655
640
 
656
- async def register_mcp_server_for_discovery(server_name: str, connection_config):
641
+ async def register_mcp_server_for_discovery(toolkit_name: str, connection_config):
657
642
  """Register an MCP server for global discovery."""
658
643
  from ..clients.mcp_discovery import get_discovery_service
659
644
  service = get_discovery_service()
660
- await service.register_server(server_name, connection_config)
645
+ await service.register_server(toolkit_name, connection_config)
661
646
 
662
647
 
663
648
  def get_all_discovered_servers():
@@ -128,7 +128,8 @@ def get_tools(tools_list: list, alita_client, llm, memory_store: BaseStore = Non
128
128
  tools += community_tools(tools_list, alita_client, llm)
129
129
  # Add alita tools
130
130
  tools += alita_tools(tools_list, alita_client, llm, memory_store)
131
- # Add MCP tools
131
+ # Add MCP tools registered via alita-mcp CLI (static registry)
132
+ # Note: Tools with type='mcp' are already handled in main loop above
132
133
  tools += _mcp_tools(tools_list, alita_client)
133
134
 
134
135
  # Sanitize tool names to meet OpenAI's function naming requirements
@@ -183,6 +184,10 @@ def _sanitize_tool_names(tools: list) -> list:
183
184
 
184
185
 
185
186
  def _mcp_tools(tools_list, alita):
187
+ """
188
+ Handle MCP tools registered via alita-mcp CLI (static registry).
189
+ Skips tools with type='mcp' as those are handled by dynamic discovery.
190
+ """
186
191
  try:
187
192
  all_available_toolkits = alita.get_mcp_toolkits()
188
193
  toolkit_lookup = {tk["name"]: tk for tk in all_available_toolkits}
@@ -190,6 +195,11 @@ def _mcp_tools(tools_list, alita):
190
195
  #
191
196
  for selected_toolkit in tools_list:
192
197
  server_toolkit_name = selected_toolkit['type']
198
+
199
+ # Skip tools with type='mcp' - they're handled by dynamic discovery
200
+ if server_toolkit_name == 'mcp':
201
+ continue
202
+
193
203
  toolkit_conf = toolkit_lookup.get(server_toolkit_name)
194
204
  #
195
205
  if not toolkit_conf:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: alita_sdk
3
- Version: 0.3.429
3
+ Version: 0.3.431
4
4
  Summary: SDK for building langchain agents using resources from Alita
5
5
  Author-email: Artem Rozumenko <artyom.rozumenko@gmail.com>, Mikalai Biazruchka <mikalai_biazruchka@epam.com>, Roman Mitusov <roman_mitusov@epam.com>, Ivan Krakhmaliuk <lifedj27@gmail.com>, Artem Dubrovskiy <ad13box@gmail.com>
6
6
  License-Expression: Apache-2.0
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "alita_sdk"
7
- version = "0.3.429"
7
+ version = "0.3.431"
8
8
  description = "SDK for building langchain agents using resources from Alita"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
File without changes
File without changes