universal-mcp 0.1.11__tar.gz → 0.1.12__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.
Files changed (149) hide show
  1. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/PKG-INFO +1 -1
  2. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/pyproject.toml +1 -1
  3. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/falai/app.py +8 -8
  4. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/cli.py +0 -1
  5. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/.github/workflows/publish-pypi.yml +0 -0
  6. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/.github/workflows/pull-request-checks.yml +0 -0
  7. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/.github/workflows/shared.yml +0 -0
  8. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/.gitignore +0 -0
  9. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/.pre-commit-config.yaml +0 -0
  10. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/.python-version +0 -0
  11. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/CONTRIBUTING.md +0 -0
  12. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/README.md +0 -0
  13. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/bump_and_release.sh +0 -0
  14. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/local_config.json.example +0 -0
  15. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/playground/README.md +0 -0
  16. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/playground/__init__.py +0 -0
  17. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/playground/__main__.py +0 -0
  18. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/playground/agents/react.py +0 -0
  19. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/playground/client.py +0 -0
  20. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/playground/memory/__init__.py +0 -0
  21. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/playground/memory/sqlite.py +0 -0
  22. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/playground/schema.py +0 -0
  23. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/playground/service.py +0 -0
  24. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/playground/settings.py +0 -0
  25. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/playground/streamlit.py +0 -0
  26. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/playground/utils.py +0 -0
  27. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/tests/__init__.py +0 -0
  28. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/tests/conftest.py +0 -0
  29. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/tests/test_api_generator.py +0 -0
  30. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/tests/test_api_integration.py +0 -0
  31. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/tests/test_applications.py +0 -0
  32. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/tests/test_localserver.py +0 -0
  33. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/tests/test_stores.py +0 -0
  34. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/tests/test_tool.py +0 -0
  35. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/tests/test_zenquotes.py +0 -0
  36. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/__init__.py +0 -0
  37. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/analytics.py +0 -0
  38. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/__init__.py +0 -0
  39. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/ahrefs/README.md +0 -0
  40. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/ahrefs/__init__.py +0 -0
  41. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/ahrefs/app.py +0 -0
  42. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/application.py +0 -0
  43. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/cal_com_v2/README.md +0 -0
  44. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/cal_com_v2/__init__.py +0 -0
  45. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/cal_com_v2/app.py +0 -0
  46. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/calendly/README.md +0 -0
  47. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/calendly/__init__.py +0 -0
  48. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/calendly/app.py +0 -0
  49. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/clickup/README.md +0 -0
  50. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/clickup/__init__.py +0 -0
  51. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/clickup/app.py +0 -0
  52. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/coda/README.md +0 -0
  53. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/coda/__init__.py +0 -0
  54. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/coda/app.py +0 -0
  55. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/e2b/README.md +0 -0
  56. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/e2b/app.py +0 -0
  57. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/elevenlabs/README.md +0 -0
  58. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/elevenlabs/__init__.py +0 -0
  59. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/elevenlabs/app.py +0 -0
  60. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/falai/README.md +0 -0
  61. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/falai/__init__.py +0 -0
  62. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/figma/README.md +0 -0
  63. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/figma/__init__.py +0 -0
  64. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/figma/app.py +0 -0
  65. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/firecrawl/README.md +0 -0
  66. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/firecrawl/app.py +0 -0
  67. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/github/README.md +0 -0
  68. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/github/app.py +0 -0
  69. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/gong/README.md +0 -0
  70. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/gong/__init__.py +0 -0
  71. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/gong/app.py +0 -0
  72. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/google_calendar/app.py +0 -0
  73. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/google_docs/README.md +0 -0
  74. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/google_docs/app.py +0 -0
  75. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/google_drive/README.md +0 -0
  76. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/google_drive/app.py +0 -0
  77. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/google_mail/README.md +0 -0
  78. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/google_mail/app.py +0 -0
  79. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/google_sheet/README.md +0 -0
  80. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/google_sheet/app.py +0 -0
  81. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/hashnode/app.py +0 -0
  82. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/hashnode/prompt.md +0 -0
  83. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/heygen/README.md +0 -0
  84. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/heygen/__init__.py +0 -0
  85. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/heygen/app.py +0 -0
  86. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/mailchimp/README.md +0 -0
  87. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/mailchimp/__init__.py +0 -0
  88. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/mailchimp/app.py +0 -0
  89. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/markitdown/app.py +0 -0
  90. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/notion/README.md +0 -0
  91. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/notion/__init__.py +0 -0
  92. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/notion/app.py +0 -0
  93. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/perplexity/README.md +0 -0
  94. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/perplexity/app.py +0 -0
  95. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/reddit/README.md +0 -0
  96. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/reddit/app.py +0 -0
  97. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/replicate/README.md +0 -0
  98. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/replicate/__init__.py +0 -0
  99. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/replicate/app.py +0 -0
  100. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/resend/README.md +0 -0
  101. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/resend/app.py +0 -0
  102. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/retell_ai/README.md +0 -0
  103. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/retell_ai/__init__.py +0 -0
  104. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/retell_ai/app.py +0 -0
  105. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/rocketlane/README.md +0 -0
  106. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/rocketlane/__init__.py +0 -0
  107. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/rocketlane/app.py +0 -0
  108. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/serpapi/README.md +0 -0
  109. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/serpapi/app.py +0 -0
  110. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/spotify/README.md +0 -0
  111. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/spotify/__init__.py +0 -0
  112. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/spotify/app.py +0 -0
  113. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/supabase/README.md +0 -0
  114. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/supabase/__init__.py +0 -0
  115. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/supabase/app.py +0 -0
  116. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/tavily/README.md +0 -0
  117. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/tavily/app.py +0 -0
  118. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/wrike/README.md +0 -0
  119. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/wrike/__init__.py +0 -0
  120. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/wrike/app.py +0 -0
  121. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/youtube/README.md +0 -0
  122. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/youtube/__init__.py +0 -0
  123. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/youtube/app.py +0 -0
  124. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/zenquotes/README.md +0 -0
  125. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/applications/zenquotes/app.py +0 -0
  126. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/config.py +0 -0
  127. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/exceptions.py +0 -0
  128. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/integrations/README.md +0 -0
  129. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/integrations/__init__.py +0 -0
  130. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/integrations/agentr.py +0 -0
  131. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/integrations/integration.py +0 -0
  132. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/logger.py +0 -0
  133. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/py.typed +0 -0
  134. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/servers/__init__.py +0 -0
  135. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/servers/server.py +0 -0
  136. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/stores/__init__.py +0 -0
  137. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/stores/store.py +0 -0
  138. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/tools/__init__.py +0 -0
  139. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/tools/adapters.py +0 -0
  140. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/tools/func_metadata.py +0 -0
  141. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/tools/tools.py +0 -0
  142. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/utils/__init__.py +0 -0
  143. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/utils/api_generator.py +0 -0
  144. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/utils/docgen.py +0 -0
  145. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/utils/docstring_parser.py +0 -0
  146. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/utils/dump_app_tools.py +0 -0
  147. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/utils/installation.py +0 -0
  148. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/src/universal_mcp/utils/openapi.py +0 -0
  149. {universal_mcp-0.1.11 → universal_mcp-0.1.12}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: universal-mcp
3
- Version: 0.1.11
3
+ Version: 0.1.12
4
4
  Summary: Universal MCP acts as a middle ware for your API applications. It can store your credentials, authorize, enable disable apps on the fly and much more.
5
5
  Author-email: Manoj Bajaj <manojbajaj95@gmail.com>
6
6
  Requires-Python: >=3.11
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "universal-mcp"
3
- version = "0.1.11"
3
+ version = "0.1.12"
4
4
  description = "Universal MCP acts as a middle ware for your API applications. It can store your credentials, authorize, enable disable apps on the fly and much more."
5
5
  readme = "README.md"
6
6
  authors = [
@@ -30,20 +30,20 @@ class FalaiApp(APIApplication):
30
30
  def fal_client(self) -> AsyncClient:
31
31
  if self._fal_client is None:
32
32
  credentials = self.integration.get_credentials()
33
- if isinstance(credentials, dict) and "api_key" in credentials:
34
- fal_api_key = credentials["api_key"]
35
- else:
33
+ logger.info(f"Credentials: {credentials}")
34
+ api_key = (
35
+ credentials.get("api_key")
36
+ or credentials.get("API_KEY")
37
+ or credentials.get("apiKey")
38
+ )
39
+ if not api_key:
36
40
  logger.error(
37
41
  f"Integration {type(self.integration).__name__} returned credentials in unexpected format."
38
42
  )
39
- raise ValueError(
40
- "Integration did not provide credentials in the expected 'api_key' format."
41
- )
42
- if not fal_api_key:
43
43
  raise NotAuthorizedError(
44
44
  "Integration returned empty or invalid API key."
45
45
  )
46
- self._fal_client = AsyncClient(key=fal_api_key)
46
+ self._fal_client = AsyncClient(key=api_key)
47
47
  return self._fal_client
48
48
 
49
49
  async def run(
@@ -168,6 +168,5 @@ def install(app_name: str = typer.Argument(..., help="Name of app to install")):
168
168
  raise typer.Exit(1) from e
169
169
 
170
170
 
171
-
172
171
  if __name__ == "__main__":
173
172
  app()
File without changes
File without changes