mindroot 9.11.0__py3-none-any.whl → 9.13.0__py3-none-any.whl

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 mindroot might be problematic. Click here for more details.

Files changed (417) hide show
  1. mindroot/coreplugins/admin/static/js/model-preferences-v2.js +1 -1
  2. mindroot/coreplugins/home/templates/home.jinja2 +1 -0
  3. mindroot/docs/Makefile +20 -0
  4. mindroot/docs/_build/doctrees/chat_with_assistant.doctree +0 -0
  5. mindroot/docs/_build/doctrees/developer_documentation.doctree +0 -0
  6. mindroot/docs/_build/doctrees/environment.pickle +0 -0
  7. mindroot/docs/_build/doctrees/getting_started.doctree +0 -0
  8. mindroot/docs/_build/doctrees/index.doctree +0 -0
  9. mindroot/docs/_build/doctrees/install_plugins_with_tools.doctree +0 -0
  10. mindroot/docs/_build/doctrees/installation.doctree +0 -0
  11. mindroot/docs/_build/doctrees/llm_api_key.doctree +0 -0
  12. mindroot/docs/_build/doctrees/llm_plugin_installation.doctree +0 -0
  13. mindroot/docs/_build/doctrees/programming_task.doctree +0 -0
  14. mindroot/docs/_build/doctrees/source/ahp.doctree +0 -0
  15. mindroot/docs/_build/doctrees/source/mindroot.coreplugins.admin.doctree +0 -0
  16. mindroot/docs/_build/doctrees/source/mindroot.coreplugins.api_keys.doctree +0 -0
  17. mindroot/docs/_build/doctrees/source/mindroot.coreplugins.chat.doctree +0 -0
  18. mindroot/docs/_build/doctrees/source/mindroot.coreplugins.chat_avatar.doctree +0 -0
  19. mindroot/docs/_build/doctrees/source/mindroot.coreplugins.check_list.doctree +0 -0
  20. mindroot/docs/_build/doctrees/source/mindroot.coreplugins.credits.doctree +0 -0
  21. mindroot/docs/_build/doctrees/source/mindroot.coreplugins.doctree +0 -0
  22. mindroot/docs/_build/doctrees/source/mindroot.coreplugins.email.doctree +0 -0
  23. mindroot/docs/_build/doctrees/source/mindroot.coreplugins.env_manager.doctree +0 -0
  24. mindroot/docs/_build/doctrees/source/mindroot.coreplugins.events.doctree +0 -0
  25. mindroot/docs/_build/doctrees/source/mindroot.coreplugins.index.doctree +0 -0
  26. mindroot/docs/_build/doctrees/source/mindroot.coreplugins.index.handlers.doctree +0 -0
  27. mindroot/docs/_build/doctrees/source/mindroot.coreplugins.jwt_auth.doctree +0 -0
  28. mindroot/docs/_build/doctrees/source/mindroot.coreplugins.l8n.doctree +0 -0
  29. mindroot/docs/_build/doctrees/source/mindroot.coreplugins.mcp_.doctree +0 -0
  30. mindroot/docs/_build/doctrees/source/mindroot.coreplugins.persona.doctree +0 -0
  31. mindroot/docs/_build/doctrees/source/mindroot.coreplugins.startup.doctree +0 -0
  32. mindroot/docs/_build/doctrees/source/mindroot.coreplugins.subscriptions.doctree +0 -0
  33. mindroot/docs/_build/doctrees/source/mindroot.coreplugins.usage.doctree +0 -0
  34. mindroot/docs/_build/doctrees/source/mindroot.coreplugins.user_service.doctree +0 -0
  35. mindroot/docs/_build/doctrees/source/mindroot.doctree +0 -0
  36. mindroot/docs/_build/doctrees/source/mindroot.lib.auth.doctree +0 -0
  37. mindroot/docs/_build/doctrees/source/mindroot.lib.doctree +0 -0
  38. mindroot/docs/_build/doctrees/source/mindroot.lib.json_str_block.doctree +0 -0
  39. mindroot/docs/_build/doctrees/source/mindroot.lib.plugins.doctree +0 -0
  40. mindroot/docs/_build/doctrees/source/mindroot.lib.providers.backup.doctree +0 -0
  41. mindroot/docs/_build/doctrees/source/mindroot.lib.providers.doctree +0 -0
  42. mindroot/docs/_build/doctrees/source/mindroot.registry.doctree +0 -0
  43. mindroot/docs/_build/doctrees/source/modules.doctree +0 -0
  44. mindroot/docs/_build/doctrees/source/mr_agent_expert_instr.doctree +0 -0
  45. mindroot/docs/_build/doctrees/starting_mindroot.doctree +0 -0
  46. mindroot/docs/_build/doctrees/user_documentation.doctree +0 -0
  47. mindroot/docs/_build/html/.buildinfo +4 -0
  48. mindroot/docs/_build/html/.buildinfo.bak +4 -0
  49. mindroot/docs/_build/html/_images/envvar.png +0 -0
  50. mindroot/docs/_build/html/_images/files.png +0 -0
  51. mindroot/docs/_build/html/_images/installopenrouter.png +0 -0
  52. mindroot/docs/_build/html/_images/mood.png +0 -0
  53. mindroot/docs/_build/html/_images/moon.png +0 -0
  54. mindroot/docs/_build/html/_images/openrouter.png +0 -0
  55. mindroot/docs/_build/html/_images/restart.png +0 -0
  56. mindroot/docs/_build/html/_modules/index.html +425 -0
  57. mindroot/docs/_build/html/_modules/mindroot/coreplugins/admin/agent_importer.html +292 -0
  58. mindroot/docs/_build/html/_modules/mindroot/coreplugins/admin/agent_router.html +620 -0
  59. mindroot/docs/_build/html/_modules/mindroot/coreplugins/admin/asset_manager.html +289 -0
  60. mindroot/docs/_build/html/_modules/mindroot/coreplugins/admin/command_router.html +518 -0
  61. mindroot/docs/_build/html/_modules/mindroot/coreplugins/admin/mcp_catalog_routes.html +275 -0
  62. mindroot/docs/_build/html/_modules/mindroot/coreplugins/admin/mcp_publish_routes.html +581 -0
  63. mindroot/docs/_build/html/_modules/mindroot/coreplugins/admin/mcp_registry_routes.html +623 -0
  64. mindroot/docs/_build/html/_modules/mindroot/coreplugins/admin/mcp_routes.html +347 -0
  65. mindroot/docs/_build/html/_modules/mindroot/coreplugins/admin/mod.html +163 -0
  66. mindroot/docs/_build/html/_modules/mindroot/coreplugins/admin/oauth_callback_router.html +188 -0
  67. mindroot/docs/_build/html/_modules/mindroot/coreplugins/admin/persona_handler.html +195 -0
  68. mindroot/docs/_build/html/_modules/mindroot/coreplugins/admin/persona_router.html +428 -0
  69. mindroot/docs/_build/html/_modules/mindroot/coreplugins/admin/plugin_manager.html +610 -0
  70. mindroot/docs/_build/html/_modules/mindroot/coreplugins/admin/plugin_router.html +146 -0
  71. mindroot/docs/_build/html/_modules/mindroot/coreplugins/admin/plugin_routes.html +230 -0
  72. mindroot/docs/_build/html/_modules/mindroot/coreplugins/admin/registry_settings_routes.html +253 -0
  73. mindroot/docs/_build/html/_modules/mindroot/coreplugins/admin/router.html +267 -0
  74. mindroot/docs/_build/html/_modules/mindroot/coreplugins/admin/server_router.html +271 -0
  75. mindroot/docs/_build/html/_modules/mindroot/coreplugins/admin/service_models.html +195 -0
  76. mindroot/docs/_build/html/_modules/mindroot/coreplugins/admin/settings_router.html +403 -0
  77. mindroot/docs/_build/html/_modules/mindroot/coreplugins/api_keys/api_key_manager.html +215 -0
  78. mindroot/docs/_build/html/_modules/mindroot/coreplugins/api_keys/mod.html +127 -0
  79. mindroot/docs/_build/html/_modules/mindroot/coreplugins/api_keys/router.html +170 -0
  80. mindroot/docs/_build/html/_modules/mindroot/coreplugins/chat/commands.html +565 -0
  81. mindroot/docs/_build/html/_modules/mindroot/coreplugins/chat/mod.html +118 -0
  82. mindroot/docs/_build/html/_modules/mindroot/coreplugins/chat/models.html +130 -0
  83. mindroot/docs/_build/html/_modules/mindroot/coreplugins/chat/router.html +571 -0
  84. mindroot/docs/_build/html/_modules/mindroot/coreplugins/chat/services.html +645 -0
  85. mindroot/docs/_build/html/_modules/mindroot/coreplugins/chat/widget_manager.html +258 -0
  86. mindroot/docs/_build/html/_modules/mindroot/coreplugins/chat/widget_routes.html +409 -0
  87. mindroot/docs/_build/html/_modules/mindroot/coreplugins/check_list/mod.html +460 -0
  88. mindroot/docs/_build/html/_modules/mindroot/coreplugins/credits/conversion.html +232 -0
  89. mindroot/docs/_build/html/_modules/mindroot/coreplugins/credits/ledger.html +283 -0
  90. mindroot/docs/_build/html/_modules/mindroot/coreplugins/credits/mod.html +355 -0
  91. mindroot/docs/_build/html/_modules/mindroot/coreplugins/credits/models.html +269 -0
  92. mindroot/docs/_build/html/_modules/mindroot/coreplugins/credits/router.html +306 -0
  93. mindroot/docs/_build/html/_modules/mindroot/coreplugins/credits/storage.html +257 -0
  94. mindroot/docs/_build/html/_modules/mindroot/coreplugins/email/email_provider.html +159 -0
  95. mindroot/docs/_build/html/_modules/mindroot/coreplugins/email/imap_handler.html +343 -0
  96. mindroot/docs/_build/html/_modules/mindroot/coreplugins/email/mod.html +210 -0
  97. mindroot/docs/_build/html/_modules/mindroot/coreplugins/email/services.html +172 -0
  98. mindroot/docs/_build/html/_modules/mindroot/coreplugins/email/smtp_handler.html +188 -0
  99. mindroot/docs/_build/html/_modules/mindroot/coreplugins/email/test_email_service.html +179 -0
  100. mindroot/docs/_build/html/_modules/mindroot/coreplugins/env_manager/mod.html +409 -0
  101. mindroot/docs/_build/html/_modules/mindroot/coreplugins/env_manager/router.html +147 -0
  102. mindroot/docs/_build/html/_modules/mindroot/coreplugins/events/router.html +201 -0
  103. mindroot/docs/_build/html/_modules/mindroot/coreplugins/index/handlers/agent_ops.html +195 -0
  104. mindroot/docs/_build/html/_modules/mindroot/coreplugins/index/handlers/index_ops.html +214 -0
  105. mindroot/docs/_build/html/_modules/mindroot/coreplugins/index/handlers/plugin_ops.html +263 -0
  106. mindroot/docs/_build/html/_modules/mindroot/coreplugins/index/handlers/publish.html +225 -0
  107. mindroot/docs/_build/html/_modules/mindroot/coreplugins/index/mod.html +120 -0
  108. mindroot/docs/_build/html/_modules/mindroot/coreplugins/index/models.html +148 -0
  109. mindroot/docs/_build/html/_modules/mindroot/coreplugins/index/router.html +184 -0
  110. mindroot/docs/_build/html/_modules/mindroot/coreplugins/index/utils.html +166 -0
  111. mindroot/docs/_build/html/_modules/mindroot/coreplugins/jwt_auth/middleware.html +400 -0
  112. mindroot/docs/_build/html/_modules/mindroot/coreplugins/jwt_auth/mod.html +153 -0
  113. mindroot/docs/_build/html/_modules/mindroot/coreplugins/jwt_auth/router.html +134 -0
  114. mindroot/docs/_build/html/_modules/mindroot/coreplugins/l8n/language_detection.html +296 -0
  115. mindroot/docs/_build/html/_modules/mindroot/coreplugins/l8n/middleware.html +258 -0
  116. mindroot/docs/_build/html/_modules/mindroot/coreplugins/l8n/mod.html +393 -0
  117. mindroot/docs/_build/html/_modules/mindroot/coreplugins/l8n/test_enhanced.html +408 -0
  118. mindroot/docs/_build/html/_modules/mindroot/coreplugins/l8n/test_l8n_standalone.html +379 -0
  119. mindroot/docs/_build/html/_modules/mindroot/coreplugins/l8n/test_middleware.html +394 -0
  120. mindroot/docs/_build/html/_modules/mindroot/coreplugins/l8n/utils.html +348 -0
  121. mindroot/docs/_build/html/_modules/mindroot/coreplugins/mcp_/catalog_commands.html +456 -0
  122. mindroot/docs/_build/html/_modules/mindroot/coreplugins/mcp_/catalog_manager.html +409 -0
  123. mindroot/docs/_build/html/_modules/mindroot/coreplugins/mcp_/dynamic_commands.html +267 -0
  124. mindroot/docs/_build/html/_modules/mindroot/coreplugins/mcp_/mcp_manager.html +1186 -0
  125. mindroot/docs/_build/html/_modules/mindroot/coreplugins/mcp_/mod.html +510 -0
  126. mindroot/docs/_build/html/_modules/mindroot/coreplugins/mcp_/oauth_storage.html +260 -0
  127. mindroot/docs/_build/html/_modules/mindroot/coreplugins/mcp_/server_installer.html +195 -0
  128. mindroot/docs/_build/html/_modules/mindroot/coreplugins/mcp_/testmcpclient.html +217 -0
  129. mindroot/docs/_build/html/_modules/mindroot/coreplugins/persona/init_persona.html +117 -0
  130. mindroot/docs/_build/html/_modules/mindroot/coreplugins/persona/mod.html +276 -0
  131. mindroot/docs/_build/html/_modules/mindroot/coreplugins/startup/mod.html +122 -0
  132. mindroot/docs/_build/html/_modules/mindroot/coreplugins/subscriptions/credit_integration.html +163 -0
  133. mindroot/docs/_build/html/_modules/mindroot/coreplugins/subscriptions/mod.html +1089 -0
  134. mindroot/docs/_build/html/_modules/mindroot/coreplugins/subscriptions/models.html +261 -0
  135. mindroot/docs/_build/html/_modules/mindroot/coreplugins/subscriptions/router.html +502 -0
  136. mindroot/docs/_build/html/_modules/mindroot/coreplugins/subscriptions/storage.html +413 -0
  137. mindroot/docs/_build/html/_modules/mindroot/coreplugins/subscriptions/stripe_integration.html +178 -0
  138. mindroot/docs/_build/html/_modules/mindroot/coreplugins/subscriptions/subscription_manager.html +289 -0
  139. mindroot/docs/_build/html/_modules/mindroot/coreplugins/subscriptions/webhook_handler.html +327 -0
  140. mindroot/docs/_build/html/_modules/mindroot/coreplugins/usage/handlers.html +157 -0
  141. mindroot/docs/_build/html/_modules/mindroot/coreplugins/usage/mod.html +253 -0
  142. mindroot/docs/_build/html/_modules/mindroot/coreplugins/usage/models.html +141 -0
  143. mindroot/docs/_build/html/_modules/mindroot/coreplugins/usage/reporting.html +226 -0
  144. mindroot/docs/_build/html/_modules/mindroot/coreplugins/usage/router.html +228 -0
  145. mindroot/docs/_build/html/_modules/mindroot/coreplugins/usage/storage.html +264 -0
  146. mindroot/docs/_build/html/_modules/mindroot/coreplugins/user_service/admin_init.html +234 -0
  147. mindroot/docs/_build/html/_modules/mindroot/coreplugins/user_service/email_service.html +204 -0
  148. mindroot/docs/_build/html/_modules/mindroot/coreplugins/user_service/mod.html +260 -0
  149. mindroot/docs/_build/html/_modules/mindroot/coreplugins/user_service/models.html +148 -0
  150. mindroot/docs/_build/html/_modules/mindroot/coreplugins/user_service/password_reset_service.html +336 -0
  151. mindroot/docs/_build/html/_modules/mindroot/coreplugins/user_service/role_service.html +183 -0
  152. mindroot/docs/_build/html/_modules/mindroot/coreplugins/user_service/router.html +202 -0
  153. mindroot/docs/_build/html/_modules/mindroot/lib/auth/api_key.html +129 -0
  154. mindroot/docs/_build/html/_modules/mindroot/lib/auth/auth.html +203 -0
  155. mindroot/docs/_build/html/_modules/mindroot/lib/buchatlog.html +259 -0
  156. mindroot/docs/_build/html/_modules/mindroot/lib/buchatlog2.html +500 -0
  157. mindroot/docs/_build/html/_modules/mindroot/lib/butemplates.html +415 -0
  158. mindroot/docs/_build/html/_modules/mindroot/lib/chatcontext.html +401 -0
  159. mindroot/docs/_build/html/_modules/mindroot/lib/chatlog.html +619 -0
  160. mindroot/docs/_build/html/_modules/mindroot/lib/chatlog_optimized.html +655 -0
  161. mindroot/docs/_build/html/_modules/mindroot/lib/json_escape.html +138 -0
  162. mindroot/docs/_build/html/_modules/mindroot/lib/json_str_block/json_str_block.html +213 -0
  163. mindroot/docs/_build/html/_modules/mindroot/lib/parent_templates.html +181 -0
  164. mindroot/docs/_build/html/_modules/mindroot/lib/plugins/installation.html +481 -0
  165. mindroot/docs/_build/html/_modules/mindroot/lib/plugins/l8n_static_handler.html +347 -0
  166. mindroot/docs/_build/html/_modules/mindroot/lib/plugins/loader.html +403 -0
  167. mindroot/docs/_build/html/_modules/mindroot/lib/plugins/loader_with_l8n.html +391 -0
  168. mindroot/docs/_build/html/_modules/mindroot/lib/plugins/manifest.html +450 -0
  169. mindroot/docs/_build/html/_modules/mindroot/lib/plugins/mapping.html +127 -0
  170. mindroot/docs/_build/html/_modules/mindroot/lib/plugins/paths.html +215 -0
  171. mindroot/docs/_build/html/_modules/mindroot/lib/plugins_install.html +171 -0
  172. mindroot/docs/_build/html/_modules/mindroot/lib/providers/commands.html +125 -0
  173. mindroot/docs/_build/html/_modules/mindroot/lib/providers/hooks.html +117 -0
  174. mindroot/docs/_build/html/_modules/mindroot/lib/providers/missing.html +169 -0
  175. mindroot/docs/_build/html/_modules/mindroot/lib/providers/model_preferences_v2.html +291 -0
  176. mindroot/docs/_build/html/_modules/mindroot/lib/providers/services.html +122 -0
  177. mindroot/docs/_build/html/_modules/mindroot/lib/providers.html +465 -0
  178. mindroot/docs/_build/html/_modules/mindroot/lib/route_decorators.html +175 -0
  179. mindroot/docs/_build/html/_modules/mindroot/lib/session_files.html +142 -0
  180. mindroot/docs/_build/html/_modules/mindroot/lib/streamcmd.html +246 -0
  181. mindroot/docs/_build/html/_modules/mindroot/lib/templates.html +677 -0
  182. mindroot/docs/_build/html/_modules/mindroot/lib/token_counter.html +326 -0
  183. mindroot/docs/_build/html/_modules/mindroot/migrate.html +153 -0
  184. mindroot/docs/_build/html/_modules/mindroot/registry/component_manager.html +140 -0
  185. mindroot/docs/_build/html/_modules/mindroot/registry/data_access.html +302 -0
  186. mindroot/docs/_build/html/_modules/mindroot/server.html +317 -0
  187. mindroot/docs/_build/html/_modules/mindroot/server_missing_normal_args.html +322 -0
  188. mindroot/docs/_build/html/_modules/mindroot/server_prev.html +298 -0
  189. mindroot/docs/_build/html/_sources/chat_with_assistant.rst.txt +14 -0
  190. mindroot/docs/_build/html/_sources/developer_documentation.rst.txt +26 -0
  191. mindroot/docs/_build/html/_sources/getting_started.rst.txt +139 -0
  192. mindroot/docs/_build/html/_sources/index.rst.txt +38 -0
  193. mindroot/docs/_build/html/_sources/install_plugins_with_tools.rst.txt +25 -0
  194. mindroot/docs/_build/html/_sources/installation.rst.txt +21 -0
  195. mindroot/docs/_build/html/_sources/llm_api_key.rst.txt +22 -0
  196. mindroot/docs/_build/html/_sources/llm_plugin_installation.rst.txt +27 -0
  197. mindroot/docs/_build/html/_sources/programming_task.rst.txt +10 -0
  198. mindroot/docs/_build/html/_sources/source/ahp.rst.txt +7 -0
  199. mindroot/docs/_build/html/_sources/source/mindroot.coreplugins.admin.rst.txt +189 -0
  200. mindroot/docs/_build/html/_sources/source/mindroot.coreplugins.api_keys.rst.txt +45 -0
  201. mindroot/docs/_build/html/_sources/source/mindroot.coreplugins.chat.rst.txt +93 -0
  202. mindroot/docs/_build/html/_sources/source/mindroot.coreplugins.chat_avatar.rst.txt +10 -0
  203. mindroot/docs/_build/html/_sources/source/mindroot.coreplugins.check_list.rst.txt +21 -0
  204. mindroot/docs/_build/html/_sources/source/mindroot.coreplugins.credits.rst.txt +61 -0
  205. mindroot/docs/_build/html/_sources/source/mindroot.coreplugins.email.rst.txt +77 -0
  206. mindroot/docs/_build/html/_sources/source/mindroot.coreplugins.env_manager.rst.txt +29 -0
  207. mindroot/docs/_build/html/_sources/source/mindroot.coreplugins.events.rst.txt +29 -0
  208. mindroot/docs/_build/html/_sources/source/mindroot.coreplugins.index.handlers.rst.txt +45 -0
  209. mindroot/docs/_build/html/_sources/source/mindroot.coreplugins.index.rst.txt +53 -0
  210. mindroot/docs/_build/html/_sources/source/mindroot.coreplugins.jwt_auth.rst.txt +45 -0
  211. mindroot/docs/_build/html/_sources/source/mindroot.coreplugins.l8n.rst.txt +109 -0
  212. mindroot/docs/_build/html/_sources/source/mindroot.coreplugins.mcp_.rst.txt +93 -0
  213. mindroot/docs/_build/html/_sources/source/mindroot.coreplugins.persona.rst.txt +29 -0
  214. mindroot/docs/_build/html/_sources/source/mindroot.coreplugins.rst.txt +35 -0
  215. mindroot/docs/_build/html/_sources/source/mindroot.coreplugins.startup.rst.txt +21 -0
  216. mindroot/docs/_build/html/_sources/source/mindroot.coreplugins.subscriptions.rst.txt +85 -0
  217. mindroot/docs/_build/html/_sources/source/mindroot.coreplugins.usage.rst.txt +61 -0
  218. mindroot/docs/_build/html/_sources/source/mindroot.coreplugins.user_service.rst.txt +69 -0
  219. mindroot/docs/_build/html/_sources/source/mindroot.lib.auth.rst.txt +29 -0
  220. mindroot/docs/_build/html/_sources/source/mindroot.lib.json_str_block.rst.txt +21 -0
  221. mindroot/docs/_build/html/_sources/source/mindroot.lib.plugins.rst.txt +69 -0
  222. mindroot/docs/_build/html/_sources/source/mindroot.lib.providers.backup.rst.txt +10 -0
  223. mindroot/docs/_build/html/_sources/source/mindroot.lib.providers.rst.txt +61 -0
  224. mindroot/docs/_build/html/_sources/source/mindroot.lib.rst.txt +152 -0
  225. mindroot/docs/_build/html/_sources/source/mindroot.registry.rst.txt +29 -0
  226. mindroot/docs/_build/html/_sources/source/mindroot.rst.txt +54 -0
  227. mindroot/docs/_build/html/_sources/source/modules.rst.txt +7 -0
  228. mindroot/docs/_build/html/_sources/source/mr_agent_expert_instr.rst.txt +7 -0
  229. mindroot/docs/_build/html/_sources/starting_mindroot.rst.txt +12 -0
  230. mindroot/docs/_build/html/_sources/user_documentation.rst.txt +16 -0
  231. mindroot/docs/_build/html/_static/_sphinx_javascript_frameworks_compat.js +123 -0
  232. mindroot/docs/_build/html/_static/basic.css +906 -0
  233. mindroot/docs/_build/html/_static/css/badge_only.css +1 -0
  234. mindroot/docs/_build/html/_static/css/fonts/Roboto-Slab-Bold.woff +0 -0
  235. mindroot/docs/_build/html/_static/css/fonts/Roboto-Slab-Bold.woff2 +0 -0
  236. mindroot/docs/_build/html/_static/css/fonts/Roboto-Slab-Regular.woff +0 -0
  237. mindroot/docs/_build/html/_static/css/fonts/Roboto-Slab-Regular.woff2 +0 -0
  238. mindroot/docs/_build/html/_static/css/fonts/fontawesome-webfont.eot +0 -0
  239. mindroot/docs/_build/html/_static/css/fonts/fontawesome-webfont.svg +2671 -0
  240. mindroot/docs/_build/html/_static/css/fonts/fontawesome-webfont.ttf +0 -0
  241. mindroot/docs/_build/html/_static/css/fonts/fontawesome-webfont.woff +0 -0
  242. mindroot/docs/_build/html/_static/css/fonts/fontawesome-webfont.woff2 +0 -0
  243. mindroot/docs/_build/html/_static/css/fonts/lato-bold-italic.woff +0 -0
  244. mindroot/docs/_build/html/_static/css/fonts/lato-bold-italic.woff2 +0 -0
  245. mindroot/docs/_build/html/_static/css/fonts/lato-bold.woff +0 -0
  246. mindroot/docs/_build/html/_static/css/fonts/lato-bold.woff2 +0 -0
  247. mindroot/docs/_build/html/_static/css/fonts/lato-normal-italic.woff +0 -0
  248. mindroot/docs/_build/html/_static/css/fonts/lato-normal-italic.woff2 +0 -0
  249. mindroot/docs/_build/html/_static/css/fonts/lato-normal.woff +0 -0
  250. mindroot/docs/_build/html/_static/css/fonts/lato-normal.woff2 +0 -0
  251. mindroot/docs/_build/html/_static/css/theme.css +4 -0
  252. mindroot/docs/_build/html/_static/custom.css +19 -0
  253. mindroot/docs/_build/html/_static/debug.css +69 -0
  254. mindroot/docs/_build/html/_static/doctools.js +149 -0
  255. mindroot/docs/_build/html/_static/documentation_options.js +13 -0
  256. mindroot/docs/_build/html/_static/file.png +0 -0
  257. mindroot/docs/_build/html/_static/fonts/Lato/lato-bold.eot +0 -0
  258. mindroot/docs/_build/html/_static/fonts/Lato/lato-bold.ttf +0 -0
  259. mindroot/docs/_build/html/_static/fonts/Lato/lato-bold.woff +0 -0
  260. mindroot/docs/_build/html/_static/fonts/Lato/lato-bold.woff2 +0 -0
  261. mindroot/docs/_build/html/_static/fonts/Lato/lato-bolditalic.eot +0 -0
  262. mindroot/docs/_build/html/_static/fonts/Lato/lato-bolditalic.ttf +0 -0
  263. mindroot/docs/_build/html/_static/fonts/Lato/lato-bolditalic.woff +0 -0
  264. mindroot/docs/_build/html/_static/fonts/Lato/lato-bolditalic.woff2 +0 -0
  265. mindroot/docs/_build/html/_static/fonts/Lato/lato-italic.eot +0 -0
  266. mindroot/docs/_build/html/_static/fonts/Lato/lato-italic.ttf +0 -0
  267. mindroot/docs/_build/html/_static/fonts/Lato/lato-italic.woff +0 -0
  268. mindroot/docs/_build/html/_static/fonts/Lato/lato-italic.woff2 +0 -0
  269. mindroot/docs/_build/html/_static/fonts/Lato/lato-regular.eot +0 -0
  270. mindroot/docs/_build/html/_static/fonts/Lato/lato-regular.ttf +0 -0
  271. mindroot/docs/_build/html/_static/fonts/Lato/lato-regular.woff +0 -0
  272. mindroot/docs/_build/html/_static/fonts/Lato/lato-regular.woff2 +0 -0
  273. mindroot/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.eot +0 -0
  274. mindroot/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.ttf +0 -0
  275. mindroot/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff +0 -0
  276. mindroot/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff2 +0 -0
  277. mindroot/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.eot +0 -0
  278. mindroot/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.ttf +0 -0
  279. mindroot/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff +0 -0
  280. mindroot/docs/_build/html/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff2 +0 -0
  281. mindroot/docs/_build/html/_static/jquery.js +2 -0
  282. mindroot/docs/_build/html/_static/js/badge_only.js +1 -0
  283. mindroot/docs/_build/html/_static/js/theme.js +1 -0
  284. mindroot/docs/_build/html/_static/js/versions.js +228 -0
  285. mindroot/docs/_build/html/_static/language_data.js +192 -0
  286. mindroot/docs/_build/html/_static/minus.png +0 -0
  287. mindroot/docs/_build/html/_static/plus.png +0 -0
  288. mindroot/docs/_build/html/_static/pygments.css +232 -0
  289. mindroot/docs/_build/html/_static/scripts/furo-extensions.js +0 -0
  290. mindroot/docs/_build/html/_static/scripts/furo.js +3 -0
  291. mindroot/docs/_build/html/_static/scripts/furo.js.LICENSE.txt +7 -0
  292. mindroot/docs/_build/html/_static/scripts/furo.js.map +1 -0
  293. mindroot/docs/_build/html/_static/searchtools.js +635 -0
  294. mindroot/docs/_build/html/_static/skeleton.css +296 -0
  295. mindroot/docs/_build/html/_static/sphinx_highlight.js +154 -0
  296. mindroot/docs/_build/html/_static/styles/furo-extensions.css +2 -0
  297. mindroot/docs/_build/html/_static/styles/furo-extensions.css.map +1 -0
  298. mindroot/docs/_build/html/_static/styles/furo.css +2 -0
  299. mindroot/docs/_build/html/_static/styles/furo.css.map +1 -0
  300. mindroot/docs/_build/html/chat_with_assistant.html +329 -0
  301. mindroot/docs/_build/html/developer_documentation.html +338 -0
  302. mindroot/docs/_build/html/genindex.html +4690 -0
  303. mindroot/docs/_build/html/getting_started.html +423 -0
  304. mindroot/docs/_build/html/index.html +357 -0
  305. mindroot/docs/_build/html/install_plugins_with_tools.html +336 -0
  306. mindroot/docs/_build/html/installation.html +330 -0
  307. mindroot/docs/_build/html/llm_api_key.html +337 -0
  308. mindroot/docs/_build/html/llm_plugin_installation.html +338 -0
  309. mindroot/docs/_build/html/objects.inv +0 -0
  310. mindroot/docs/_build/html/programming_task.html +326 -0
  311. mindroot/docs/_build/html/py-modindex.html +1307 -0
  312. mindroot/docs/_build/html/search.html +307 -0
  313. mindroot/docs/_build/html/searchindex.js +1 -0
  314. mindroot/docs/_build/html/source/ahp.html +302 -0
  315. mindroot/docs/_build/html/source/mindroot.coreplugins.admin.html +2212 -0
  316. mindroot/docs/_build/html/source/mindroot.coreplugins.api_keys.html +532 -0
  317. mindroot/docs/_build/html/source/mindroot.coreplugins.chat.html +1185 -0
  318. mindroot/docs/_build/html/source/mindroot.coreplugins.chat_avatar.html +311 -0
  319. mindroot/docs/_build/html/source/mindroot.coreplugins.check_list.html +441 -0
  320. mindroot/docs/_build/html/source/mindroot.coreplugins.credits.html +879 -0
  321. mindroot/docs/_build/html/source/mindroot.coreplugins.email.html +554 -0
  322. mindroot/docs/_build/html/source/mindroot.coreplugins.env_manager.html +447 -0
  323. mindroot/docs/_build/html/source/mindroot.coreplugins.events.html +338 -0
  324. mindroot/docs/_build/html/source/mindroot.coreplugins.html +1785 -0
  325. mindroot/docs/_build/html/source/mindroot.coreplugins.index.handlers.html +481 -0
  326. mindroot/docs/_build/html/source/mindroot.coreplugins.index.html +696 -0
  327. mindroot/docs/_build/html/source/mindroot.coreplugins.jwt_auth.html +432 -0
  328. mindroot/docs/_build/html/source/mindroot.coreplugins.l8n.html +933 -0
  329. mindroot/docs/_build/html/source/mindroot.coreplugins.mcp_.html +1271 -0
  330. mindroot/docs/_build/html/source/mindroot.coreplugins.persona.html +386 -0
  331. mindroot/docs/_build/html/source/mindroot.coreplugins.startup.html +327 -0
  332. mindroot/docs/_build/html/source/mindroot.coreplugins.subscriptions.html +1631 -0
  333. mindroot/docs/_build/html/source/mindroot.coreplugins.usage.html +677 -0
  334. mindroot/docs/_build/html/source/mindroot.coreplugins.user_service.html +681 -0
  335. mindroot/docs/_build/html/source/mindroot.html +811 -0
  336. mindroot/docs/_build/html/source/mindroot.lib.auth.html +407 -0
  337. mindroot/docs/_build/html/source/mindroot.lib.html +2027 -0
  338. mindroot/docs/_build/html/source/mindroot.lib.json_str_block.html +344 -0
  339. mindroot/docs/_build/html/source/mindroot.lib.plugins.html +1050 -0
  340. mindroot/docs/_build/html/source/mindroot.lib.providers.backup.html +324 -0
  341. mindroot/docs/_build/html/source/mindroot.lib.providers.html +572 -0
  342. mindroot/docs/_build/html/source/mindroot.registry.html +501 -0
  343. mindroot/docs/_build/html/source/modules.html +377 -0
  344. mindroot/docs/_build/html/source/mr_agent_expert_instr.html +302 -0
  345. mindroot/docs/_build/html/starting_mindroot.html +325 -0
  346. mindroot/docs/_build/html/user_documentation.html +333 -0
  347. mindroot/docs/_static/custom.css +19 -0
  348. mindroot/docs/chat_with_assistant.rst +14 -0
  349. mindroot/docs/conf.py +54 -0
  350. mindroot/docs/data/agents/local/Assistant/agent.json +27 -0
  351. mindroot/docs/data/agents/local/SysAdmin/agent.json +33 -0
  352. mindroot/docs/data/equivalent_flags.json +1 -0
  353. mindroot/docs/data/mcp/servers.json +9 -0
  354. mindroot/docs/data/models.json +57 -0
  355. mindroot/docs/data/plugin_manifest.json +95 -0
  356. mindroot/docs/data/preferred_models.json +12 -0
  357. mindroot/docs/data/providers.json +62 -0
  358. mindroot/docs/developer_documentation.rst +26 -0
  359. mindroot/docs/envvar.png +0 -0
  360. mindroot/docs/files.png +0 -0
  361. mindroot/docs/getting_started.rst +139 -0
  362. mindroot/docs/index.rst +38 -0
  363. mindroot/docs/install_plugins_with_tools.rst +25 -0
  364. mindroot/docs/installation.rst +21 -0
  365. mindroot/docs/installopenrouter.png +0 -0
  366. mindroot/docs/llm_api_key.rst +22 -0
  367. mindroot/docs/llm_plugin_installation.rst +27 -0
  368. mindroot/docs/make.bat +35 -0
  369. mindroot/docs/mood.png +0 -0
  370. mindroot/docs/moon.png +0 -0
  371. mindroot/docs/openrouter.png +0 -0
  372. mindroot/docs/personas/local/Assistant/avatar.png +0 -0
  373. mindroot/docs/personas/local/Assistant/faceref.png +0 -0
  374. mindroot/docs/personas/local/Assistant/persona.json +7 -0
  375. mindroot/docs/programming_task.rst +10 -0
  376. mindroot/docs/restart.png +0 -0
  377. mindroot/docs/source/ahp.rst +7 -0
  378. mindroot/docs/source/mindroot.coreplugins.admin.rst +189 -0
  379. mindroot/docs/source/mindroot.coreplugins.api_keys.rst +45 -0
  380. mindroot/docs/source/mindroot.coreplugins.chat.rst +93 -0
  381. mindroot/docs/source/mindroot.coreplugins.chat_avatar.rst +10 -0
  382. mindroot/docs/source/mindroot.coreplugins.check_list.rst +21 -0
  383. mindroot/docs/source/mindroot.coreplugins.credits.rst +61 -0
  384. mindroot/docs/source/mindroot.coreplugins.email.rst +77 -0
  385. mindroot/docs/source/mindroot.coreplugins.env_manager.rst +29 -0
  386. mindroot/docs/source/mindroot.coreplugins.events.rst +29 -0
  387. mindroot/docs/source/mindroot.coreplugins.index.handlers.rst +45 -0
  388. mindroot/docs/source/mindroot.coreplugins.index.rst +53 -0
  389. mindroot/docs/source/mindroot.coreplugins.jwt_auth.rst +45 -0
  390. mindroot/docs/source/mindroot.coreplugins.l8n.rst +109 -0
  391. mindroot/docs/source/mindroot.coreplugins.mcp_.rst +93 -0
  392. mindroot/docs/source/mindroot.coreplugins.persona.rst +29 -0
  393. mindroot/docs/source/mindroot.coreplugins.rst +35 -0
  394. mindroot/docs/source/mindroot.coreplugins.startup.rst +21 -0
  395. mindroot/docs/source/mindroot.coreplugins.subscriptions.rst +85 -0
  396. mindroot/docs/source/mindroot.coreplugins.usage.rst +61 -0
  397. mindroot/docs/source/mindroot.coreplugins.user_service.rst +69 -0
  398. mindroot/docs/source/mindroot.lib.auth.rst +29 -0
  399. mindroot/docs/source/mindroot.lib.json_str_block.rst +21 -0
  400. mindroot/docs/source/mindroot.lib.plugins.rst +69 -0
  401. mindroot/docs/source/mindroot.lib.providers.backup.rst +10 -0
  402. mindroot/docs/source/mindroot.lib.providers.rst +61 -0
  403. mindroot/docs/source/mindroot.lib.rst +152 -0
  404. mindroot/docs/source/mindroot.registry.rst +29 -0
  405. mindroot/docs/source/mindroot.rst +54 -0
  406. mindroot/docs/source/modules.rst +7 -0
  407. mindroot/docs/source/mr_agent_expert_instr.rst +7 -0
  408. mindroot/docs/starting_mindroot.rst +12 -0
  409. mindroot/docs/user_documentation.rst +16 -0
  410. mindroot/lib/providers/model_preferences_v2.py +5 -3
  411. mindroot/server.py +10 -1
  412. {mindroot-9.11.0.dist-info → mindroot-9.13.0.dist-info}/METADATA +1 -1
  413. {mindroot-9.11.0.dist-info → mindroot-9.13.0.dist-info}/RECORD +417 -10
  414. {mindroot-9.11.0.dist-info → mindroot-9.13.0.dist-info}/WHEEL +0 -0
  415. {mindroot-9.11.0.dist-info → mindroot-9.13.0.dist-info}/entry_points.txt +0 -0
  416. {mindroot-9.11.0.dist-info → mindroot-9.13.0.dist-info}/licenses/LICENSE +0 -0
  417. {mindroot-9.11.0.dist-info → mindroot-9.13.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,267 @@
1
+
2
+
3
+ <!DOCTYPE html>
4
+ <html class="writer-html5" lang="en" data-content_root="../../../../">
5
+ <head>
6
+ <meta charset="utf-8" />
7
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
8
+ <title>mindroot.coreplugins.mcp_.dynamic_commands &mdash; MindRoot 9.10.0 documentation</title>
9
+ <link rel="stylesheet" type="text/css" href="../../../../_static/pygments.css?v=b86133f3" />
10
+ <link rel="stylesheet" type="text/css" href="../../../../_static/css/theme.css?v=e59714d7" />
11
+
12
+
13
+ <script src="../../../../_static/jquery.js?v=5d32c60e"></script>
14
+ <script src="../../../../_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
15
+ <script src="../../../../_static/documentation_options.js?v=3c16008f"></script>
16
+ <script src="../../../../_static/doctools.js?v=9bcbadda"></script>
17
+ <script src="../../../../_static/sphinx_highlight.js?v=dc90522c"></script>
18
+ <script src="../../../../_static/js/theme.js"></script>
19
+ <link rel="index" title="Index" href="../../../../genindex.html" />
20
+ <link rel="search" title="Search" href="../../../../search.html" />
21
+ </head>
22
+
23
+ <body class="wy-body-for-nav">
24
+ <div class="wy-grid-for-nav">
25
+ <nav data-toggle="wy-nav-shift" class="wy-nav-side">
26
+ <div class="wy-side-scroll">
27
+ <div class="wy-side-nav-search" style="background: #343131" >
28
+
29
+
30
+
31
+ <a href="../../../../index.html" class="icon icon-home">
32
+ MindRoot
33
+ </a>
34
+ <div role="search">
35
+ <form id="rtd-search-form" class="wy-form" action="../../../../search.html" method="get">
36
+ <input type="text" name="q" placeholder="Search docs" aria-label="Search docs" />
37
+ <input type="hidden" name="check_keywords" value="yes" />
38
+ <input type="hidden" name="area" value="default" />
39
+ </form>
40
+ </div>
41
+ </div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
42
+ <!-- Local TOC -->
43
+ <div class="local-toc"></div>
44
+ </div>
45
+ </div>
46
+ </nav>
47
+
48
+ <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" style="background: #343131" >
49
+ <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
50
+ <a href="../../../../index.html">MindRoot</a>
51
+ </nav>
52
+
53
+ <div class="wy-nav-content">
54
+ <div class="rst-content">
55
+ <div role="navigation" aria-label="Page navigation">
56
+ <ul class="wy-breadcrumbs">
57
+ <li><a href="../../../../index.html" class="icon icon-home" aria-label="Home"></a></li>
58
+ <li class="breadcrumb-item"><a href="../../../index.html">Module code</a></li>
59
+ <li class="breadcrumb-item active">mindroot.coreplugins.mcp_.dynamic_commands</li>
60
+ <li class="wy-breadcrumbs-aside">
61
+ </li>
62
+ </ul>
63
+ <hr/>
64
+ </div>
65
+ <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
66
+ <div itemprop="articleBody">
67
+
68
+ <h1>Source code for mindroot.coreplugins.mcp_.dynamic_commands</h1><div class="highlight"><pre>
69
+ <span></span><span class="kn">from</span><span class="w"> </span><span class="nn">typing</span><span class="w"> </span><span class="kn">import</span> <span class="n">Dict</span><span class="p">,</span> <span class="n">List</span><span class="p">,</span> <span class="n">Any</span>
70
+ <span class="kn">import</span><span class="w"> </span><span class="nn">json</span>
71
+ <span class="kn">import</span><span class="w"> </span><span class="nn">inspect</span>
72
+ <span class="kn">from</span><span class="w"> </span><span class="nn">lib.providers.commands</span><span class="w"> </span><span class="kn">import</span> <span class="n">command_manager</span>
73
+
74
+ <div class="viewcode-block" id="MCPDynamicCommands">
75
+ <a class="viewcode-back" href="../../../../source/mindroot.coreplugins.mcp_.html#mindroot.coreplugins.mcp_.dynamic_commands.MCPDynamicCommands">[docs]</a>
76
+ <span class="k">class</span><span class="w"> </span><span class="nc">MCPDynamicCommands</span><span class="p">:</span>
77
+ <span class="w"> </span><span class="sd">&quot;&quot;&quot;Handles dynamic registration of MCP tools as MindRoot commands&quot;&quot;&quot;</span>
78
+
79
+ <span class="k">def</span><span class="w"> </span><span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
80
+ <span class="bp">self</span><span class="o">.</span><span class="n">registered_commands</span><span class="p">:</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="nb">str</span><span class="p">]</span> <span class="o">=</span> <span class="p">{}</span> <span class="c1"># cmd_name -&gt; server_name</span>
81
+ <span class="bp">self</span><span class="o">.</span><span class="n">sessions</span><span class="p">:</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">]</span> <span class="o">=</span> <span class="p">{}</span> <span class="c1"># Reference to sessions</span>
82
+
83
+ <div class="viewcode-block" id="MCPDynamicCommands.set_sessions">
84
+ <a class="viewcode-back" href="../../../../source/mindroot.coreplugins.mcp_.html#mindroot.coreplugins.mcp_.dynamic_commands.MCPDynamicCommands.set_sessions">[docs]</a>
85
+ <span class="k">def</span><span class="w"> </span><span class="nf">set_sessions</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">sessions</span><span class="p">:</span> <span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">]):</span>
86
+ <span class="w"> </span><span class="sd">&quot;&quot;&quot;Set reference to MCP sessions&quot;&quot;&quot;</span>
87
+ <span class="bp">self</span><span class="o">.</span><span class="n">sessions</span> <span class="o">=</span> <span class="n">sessions</span></div>
88
+
89
+
90
+ <div class="viewcode-block" id="MCPDynamicCommands.register_tools">
91
+ <a class="viewcode-back" href="../../../../source/mindroot.coreplugins.mcp_.html#mindroot.coreplugins.mcp_.dynamic_commands.MCPDynamicCommands.register_tools">[docs]</a>
92
+ <span class="k">async</span> <span class="k">def</span><span class="w"> </span><span class="nf">register_tools</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">server_name</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span> <span class="n">tools</span><span class="p">:</span> <span class="n">List</span><span class="p">[</span><span class="n">Any</span><span class="p">]):</span>
93
+ <span class="w"> </span><span class="sd">&quot;&quot;&quot;Register MCP tools as dynamic MindRoot commands&quot;&quot;&quot;</span>
94
+ <span class="k">for</span> <span class="n">tool</span> <span class="ow">in</span> <span class="n">tools</span><span class="p">:</span>
95
+ <span class="k">try</span><span class="p">:</span>
96
+ <span class="n">tool_name</span> <span class="o">=</span> <span class="n">tool</span><span class="o">.</span><span class="n">name</span>
97
+ <span class="c1">#cmd_name = f&quot;mcp_{server_name}_{tool_name}&quot;</span>
98
+ <span class="n">cmd_name</span> <span class="o">=</span> <span class="s2">&quot;mcp_&quot;</span><span class="o">+</span><span class="n">tool_name</span>
99
+
100
+ <span class="bp">self</span><span class="o">.</span><span class="n">registered_commands</span><span class="p">[</span><span class="n">cmd_name</span><span class="p">]</span> <span class="o">=</span> <span class="n">server_name</span>
101
+
102
+ <span class="c1"># Create wrapper function with closure to capture current values</span>
103
+ <span class="k">def</span><span class="w"> </span><span class="nf">create_wrapper</span><span class="p">(</span><span class="n">srv_name</span><span class="p">,</span> <span class="n">tl_name</span><span class="p">):</span>
104
+ <span class="k">async</span> <span class="k">def</span><span class="w"> </span><span class="nf">mcp_tool_wrapper</span><span class="p">(</span><span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="n">context</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
105
+ <span class="k">if</span> <span class="n">srv_name</span> <span class="ow">not</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">sessions</span><span class="p">:</span>
106
+ <span class="k">return</span> <span class="sa">f</span><span class="s2">&quot;MCP server </span><span class="si">{</span><span class="n">srv_name</span><span class="si">}</span><span class="s2"> not connected&quot;</span>
107
+
108
+ <span class="n">session</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">sessions</span><span class="p">[</span><span class="n">srv_name</span><span class="p">]</span>
109
+
110
+ <span class="c1"># Convert arguments to MCP format</span>
111
+ <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">args</span><span class="p">)</span> <span class="o">==</span> <span class="mi">1</span> <span class="ow">and</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">args</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="nb">dict</span><span class="p">):</span>
112
+ <span class="n">arguments</span> <span class="o">=</span> <span class="n">args</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span>
113
+ <span class="k">elif</span> <span class="n">kwargs</span><span class="p">:</span>
114
+ <span class="c1"># Filter out context from kwargs</span>
115
+ <span class="n">arguments</span> <span class="o">=</span> <span class="p">{</span><span class="n">k</span><span class="p">:</span> <span class="n">v</span> <span class="k">for</span> <span class="n">k</span><span class="p">,</span> <span class="n">v</span> <span class="ow">in</span> <span class="n">kwargs</span><span class="o">.</span><span class="n">items</span><span class="p">()</span> <span class="k">if</span> <span class="n">k</span> <span class="o">!=</span> <span class="s1">&#39;context&#39;</span><span class="p">}</span>
116
+ <span class="k">else</span><span class="p">:</span>
117
+ <span class="n">arguments</span> <span class="o">=</span> <span class="p">{}</span>
118
+
119
+ <span class="k">try</span><span class="p">:</span>
120
+ <span class="n">result</span> <span class="o">=</span> <span class="k">await</span> <span class="n">session</span><span class="o">.</span><span class="n">call_tool</span><span class="p">(</span><span class="n">tl_name</span><span class="p">,</span> <span class="n">arguments</span><span class="p">)</span>
121
+
122
+ <span class="c1"># Extract content from CallToolResult object</span>
123
+ <span class="k">if</span> <span class="nb">hasattr</span><span class="p">(</span><span class="n">result</span><span class="p">,</span> <span class="s1">&#39;content&#39;</span><span class="p">):</span>
124
+ <span class="k">if</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">result</span><span class="o">.</span><span class="n">content</span><span class="p">,</span> <span class="nb">list</span><span class="p">)</span> <span class="ow">and</span> <span class="nb">len</span><span class="p">(</span><span class="n">result</span><span class="o">.</span><span class="n">content</span><span class="p">)</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">:</span>
125
+ <span class="c1"># Return the text content of the first item</span>
126
+ <span class="n">first_item</span> <span class="o">=</span> <span class="n">result</span><span class="o">.</span><span class="n">content</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span>
127
+ <span class="k">return</span> <span class="n">first_item</span><span class="o">.</span><span class="n">text</span> <span class="k">if</span> <span class="nb">hasattr</span><span class="p">(</span><span class="n">first_item</span><span class="p">,</span> <span class="s1">&#39;text&#39;</span><span class="p">)</span> <span class="k">else</span> <span class="nb">str</span><span class="p">(</span><span class="n">first_item</span><span class="p">)</span>
128
+ <span class="k">else</span><span class="p">:</span>
129
+ <span class="k">return</span> <span class="nb">str</span><span class="p">(</span><span class="n">result</span><span class="o">.</span><span class="n">content</span><span class="p">)</span>
130
+ <span class="k">else</span><span class="p">:</span>
131
+ <span class="k">return</span> <span class="nb">str</span><span class="p">(</span><span class="n">result</span><span class="p">)</span>
132
+ <span class="k">except</span> <span class="ne">Exception</span> <span class="k">as</span> <span class="n">e</span><span class="p">:</span>
133
+ <span class="k">return</span> <span class="sa">f</span><span class="s2">&quot;Error calling MCP tool </span><span class="si">{</span><span class="n">tl_name</span><span class="si">}</span><span class="s2">: </span><span class="si">{</span><span class="nb">str</span><span class="p">(</span><span class="n">e</span><span class="p">)</span><span class="si">}</span><span class="s2">&quot;</span>
134
+
135
+ <span class="k">return</span> <span class="n">mcp_tool_wrapper</span>
136
+
137
+ <span class="n">wrapper</span> <span class="o">=</span> <span class="n">create_wrapper</span><span class="p">(</span><span class="n">server_name</span><span class="p">,</span> <span class="n">tool_name</span><span class="p">)</span>
138
+
139
+ <span class="c1"># Create docstring with parameter information</span>
140
+ <span class="n">description</span> <span class="o">=</span> <span class="nb">getattr</span><span class="p">(</span><span class="n">tool</span><span class="p">,</span> <span class="s1">&#39;description&#39;</span><span class="p">,</span> <span class="s1">&#39;No description available&#39;</span><span class="p">)</span>
141
+
142
+ <span class="c1"># Extract parameter schema if available</span>
143
+ <span class="n">param_info</span> <span class="o">=</span> <span class="s2">&quot;&quot;</span>
144
+ <span class="n">example_args</span> <span class="o">=</span> <span class="p">{}</span>
145
+
146
+ <span class="k">if</span> <span class="nb">hasattr</span><span class="p">(</span><span class="n">tool</span><span class="p">,</span> <span class="s1">&#39;inputSchema&#39;</span><span class="p">)</span> <span class="ow">and</span> <span class="n">tool</span><span class="o">.</span><span class="n">inputSchema</span><span class="p">:</span>
147
+ <span class="n">schema</span> <span class="o">=</span> <span class="n">tool</span><span class="o">.</span><span class="n">inputSchema</span>
148
+ <span class="k">if</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">schema</span><span class="p">,</span> <span class="nb">dict</span><span class="p">)</span> <span class="ow">and</span> <span class="s1">&#39;properties&#39;</span> <span class="ow">in</span> <span class="n">schema</span><span class="p">:</span>
149
+ <span class="n">properties</span> <span class="o">=</span> <span class="n">schema</span><span class="p">[</span><span class="s1">&#39;properties&#39;</span><span class="p">]</span>
150
+ <span class="n">required</span> <span class="o">=</span> <span class="n">schema</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;required&#39;</span><span class="p">,</span> <span class="p">[])</span>
151
+
152
+ <span class="n">param_lines</span> <span class="o">=</span> <span class="p">[]</span>
153
+ <span class="k">for</span> <span class="n">param_name</span><span class="p">,</span> <span class="n">param_def</span> <span class="ow">in</span> <span class="n">properties</span><span class="o">.</span><span class="n">items</span><span class="p">():</span>
154
+ <span class="n">param_type</span> <span class="o">=</span> <span class="n">param_def</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;type&#39;</span><span class="p">,</span> <span class="s1">&#39;any&#39;</span><span class="p">)</span>
155
+ <span class="n">param_desc</span> <span class="o">=</span> <span class="n">param_def</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;description&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">)</span>
156
+ <span class="n">is_required</span> <span class="o">=</span> <span class="n">param_name</span> <span class="ow">in</span> <span class="n">required</span>
157
+ <span class="n">req_text</span> <span class="o">=</span> <span class="s1">&#39; (required)&#39;</span> <span class="k">if</span> <span class="n">is_required</span> <span class="k">else</span> <span class="s1">&#39; (optional)&#39;</span>
158
+ <span class="n">param_lines</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot; </span><span class="si">{</span><span class="n">param_name</span><span class="si">}</span><span class="s2"> (</span><span class="si">{</span><span class="n">param_type</span><span class="si">}</span><span class="s2">)</span><span class="si">{</span><span class="n">req_text</span><span class="si">}</span><span class="s2">: </span><span class="si">{</span><span class="n">param_desc</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</span>
159
+
160
+ <span class="c1"># Create example value based on type</span>
161
+ <span class="k">if</span> <span class="n">param_type</span> <span class="o">==</span> <span class="s1">&#39;string&#39;</span><span class="p">:</span>
162
+ <span class="n">example_args</span><span class="p">[</span><span class="n">param_name</span><span class="p">]</span> <span class="o">=</span> <span class="sa">f</span><span class="s2">&quot;example_</span><span class="si">{</span><span class="n">param_name</span><span class="si">}</span><span class="s2">&quot;</span>
163
+ <span class="k">elif</span> <span class="n">param_type</span> <span class="o">==</span> <span class="s1">&#39;number&#39;</span><span class="p">:</span>
164
+ <span class="n">example_args</span><span class="p">[</span><span class="n">param_name</span><span class="p">]</span> <span class="o">=</span> <span class="mi">42</span>
165
+ <span class="k">elif</span> <span class="n">param_type</span> <span class="o">==</span> <span class="s1">&#39;boolean&#39;</span><span class="p">:</span>
166
+ <span class="n">example_args</span><span class="p">[</span><span class="n">param_name</span><span class="p">]</span> <span class="o">=</span> <span class="kc">True</span>
167
+ <span class="k">else</span><span class="p">:</span>
168
+ <span class="n">example_args</span><span class="p">[</span><span class="n">param_name</span><span class="p">]</span> <span class="o">=</span> <span class="sa">f</span><span class="s2">&quot;value_for_</span><span class="si">{</span><span class="n">param_name</span><span class="si">}</span><span class="s2">&quot;</span>
169
+
170
+ <span class="k">if</span> <span class="n">param_lines</span><span class="p">:</span>
171
+ <span class="n">param_info</span> <span class="o">=</span> <span class="s2">&quot;</span><span class="se">\n\n</span><span class="s2">Parameters:</span><span class="se">\n</span><span class="s2">&quot;</span> <span class="o">+</span> <span class="s2">&quot;</span><span class="se">\n</span><span class="s2">&quot;</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">param_lines</span><span class="p">)</span>
172
+
173
+ <span class="c1"># Use actual parameter names in example if available</span>
174
+ <span class="n">example_json</span> <span class="o">=</span> <span class="n">json</span><span class="o">.</span><span class="n">dumps</span><span class="p">(</span><span class="n">example_args</span><span class="p">,</span> <span class="n">indent</span><span class="o">=</span><span class="mi">2</span><span class="p">)</span> <span class="k">if</span> <span class="n">example_args</span> <span class="k">else</span> <span class="s1">&#39;{&quot;arg1&quot;: &quot;value1&quot;}&#39;</span>
175
+
176
+ <span class="n">docstring</span> <span class="o">=</span> <span class="sa">f</span><span class="s2">&quot;&quot;&quot;MCP Tool: </span><span class="si">{</span><span class="n">tool_name</span><span class="si">}</span><span class="s2"> from </span><span class="si">{</span><span class="n">server_name</span><span class="si">}</span>
177
+
178
+ <span class="si">{</span><span class="n">description</span><span class="si">}{</span><span class="n">param_info</span><span class="si">}</span>
179
+
180
+ <span class="si">{</span><span class="n">description</span><span class="si">}</span>
181
+
182
+ <span class="s2">Example:</span>
183
+ <span class="se">{{</span><span class="s2"> &quot;</span><span class="si">{</span><span class="n">cmd_name</span><span class="si">}</span><span class="s2">&quot;: </span><span class="si">{</span><span class="n">example_json</span><span class="si">}</span><span class="s2"> </span><span class="se">}}</span>
184
+ <span class="s2">&quot;&quot;&quot;</span>
185
+
186
+ <span class="c1"># Register with command manager</span>
187
+ <span class="k">try</span><span class="p">:</span>
188
+ <span class="n">command_manager</span><span class="o">.</span><span class="n">register_function</span><span class="p">(</span>
189
+ <span class="n">name</span><span class="o">=</span><span class="n">cmd_name</span><span class="p">,</span>
190
+ <span class="n">provider</span><span class="o">=</span><span class="s2">&quot;mcp&quot;</span><span class="p">,</span>
191
+ <span class="n">implementation</span><span class="o">=</span><span class="n">wrapper</span><span class="p">,</span>
192
+ <span class="n">signature</span><span class="o">=</span><span class="n">inspect</span><span class="o">.</span><span class="n">signature</span><span class="p">(</span><span class="n">wrapper</span><span class="p">),</span>
193
+ <span class="n">docstring</span><span class="o">=</span><span class="n">docstring</span><span class="p">,</span>
194
+ <span class="n">flags</span><span class="o">=</span><span class="p">[]</span>
195
+ <span class="p">)</span>
196
+ <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Registered MCP command: </span><span class="si">{</span><span class="n">cmd_name</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</span>
197
+
198
+ <span class="c1"># Verify registration</span>
199
+ <span class="k">if</span> <span class="n">cmd_name</span> <span class="ow">in</span> <span class="n">command_manager</span><span class="o">.</span><span class="n">functions</span><span class="p">:</span>
200
+ <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot; ✅ Verified: </span><span class="si">{</span><span class="n">cmd_name</span><span class="si">}</span><span class="s2"> is in command manager&quot;</span><span class="p">)</span>
201
+ <span class="k">else</span><span class="p">:</span>
202
+ <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot; ❌ Warning: </span><span class="si">{</span><span class="n">cmd_name</span><span class="si">}</span><span class="s2"> not found in command manager after registration&quot;</span><span class="p">)</span>
203
+ <span class="k">except</span> <span class="ne">Exception</span> <span class="k">as</span> <span class="n">e</span><span class="p">:</span>
204
+ <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Error registering </span><span class="si">{</span><span class="n">cmd_name</span><span class="si">}</span><span class="s2">: </span><span class="si">{</span><span class="n">e</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</span>
205
+
206
+ <span class="k">except</span> <span class="ne">Exception</span> <span class="k">as</span> <span class="n">e</span><span class="p">:</span>
207
+ <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Error processing tool </span><span class="si">{</span><span class="nb">getattr</span><span class="p">(</span><span class="n">tool</span><span class="p">,</span><span class="w"> </span><span class="s1">&#39;name&#39;</span><span class="p">,</span><span class="w"> </span><span class="s1">&#39;unknown&#39;</span><span class="p">)</span><span class="si">}</span><span class="s2">: </span><span class="si">{</span><span class="n">e</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</span>
208
+ <span class="k">continue</span></div>
209
+
210
+
211
+ <div class="viewcode-block" id="MCPDynamicCommands.unregister_server_tools">
212
+ <a class="viewcode-back" href="../../../../source/mindroot.coreplugins.mcp_.html#mindroot.coreplugins.mcp_.dynamic_commands.MCPDynamicCommands.unregister_server_tools">[docs]</a>
213
+ <span class="k">async</span> <span class="k">def</span><span class="w"> </span><span class="nf">unregister_server_tools</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">server_name</span><span class="p">:</span> <span class="nb">str</span><span class="p">):</span>
214
+ <span class="w"> </span><span class="sd">&quot;&quot;&quot;Unregister all tools for a server&quot;&quot;&quot;</span>
215
+ <span class="n">commands_to_remove</span> <span class="o">=</span> <span class="p">[]</span>
216
+ <span class="k">for</span> <span class="n">cmd_name</span><span class="p">,</span> <span class="n">srv_name</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">registered_commands</span><span class="o">.</span><span class="n">items</span><span class="p">():</span>
217
+ <span class="k">if</span> <span class="n">srv_name</span> <span class="o">==</span> <span class="n">server_name</span><span class="p">:</span>
218
+ <span class="n">commands_to_remove</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">cmd_name</span><span class="p">)</span>
219
+
220
+ <span class="k">for</span> <span class="n">cmd_name</span> <span class="ow">in</span> <span class="n">commands_to_remove</span><span class="p">:</span>
221
+ <span class="k">try</span><span class="p">:</span>
222
+ <span class="k">if</span> <span class="n">cmd_name</span> <span class="ow">in</span> <span class="n">command_manager</span><span class="o">.</span><span class="n">functions</span><span class="p">:</span>
223
+ <span class="k">del</span> <span class="n">command_manager</span><span class="o">.</span><span class="n">functions</span><span class="p">[</span><span class="n">cmd_name</span><span class="p">]</span>
224
+ <span class="k">del</span> <span class="bp">self</span><span class="o">.</span><span class="n">registered_commands</span><span class="p">[</span><span class="n">cmd_name</span><span class="p">]</span>
225
+ <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Unregistered MCP command: </span><span class="si">{</span><span class="n">cmd_name</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</span>
226
+ <span class="k">except</span> <span class="ne">Exception</span> <span class="k">as</span> <span class="n">e</span><span class="p">:</span>
227
+ <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Error unregistering </span><span class="si">{</span><span class="n">cmd_name</span><span class="si">}</span><span class="s2">: </span><span class="si">{</span><span class="n">e</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</span></div>
228
+
229
+
230
+ <div class="viewcode-block" id="MCPDynamicCommands.get_registered_commands">
231
+ <a class="viewcode-back" href="../../../../source/mindroot.coreplugins.mcp_.html#mindroot.coreplugins.mcp_.dynamic_commands.MCPDynamicCommands.get_registered_commands">[docs]</a>
232
+ <span class="k">def</span><span class="w"> </span><span class="nf">get_registered_commands</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="n">List</span><span class="p">[</span><span class="nb">str</span><span class="p">]:</span>
233
+ <span class="w"> </span><span class="sd">&quot;&quot;&quot;Get list of registered command names&quot;&quot;&quot;</span>
234
+ <span class="k">return</span> <span class="nb">list</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">registered_commands</span><span class="o">.</span><span class="n">keys</span><span class="p">())</span></div>
235
+ </div>
236
+
237
+
238
+ </pre></div>
239
+
240
+ </div>
241
+ </div>
242
+ <footer>
243
+
244
+ <hr/>
245
+
246
+ <div role="contentinfo">
247
+ <p>&#169; Copyright 2025, Jason Livesay.</p>
248
+ </div>
249
+
250
+ Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
251
+ <a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
252
+ provided by <a href="https://readthedocs.org">Read the Docs</a>.
253
+
254
+
255
+ </footer>
256
+ </div>
257
+ </div>
258
+ </section>
259
+ </div>
260
+ <script>
261
+ jQuery(function () {
262
+ SphinxRtdTheme.Navigation.enable(true);
263
+ });
264
+ </script>
265
+
266
+ </body>
267
+ </html>