universal-mcp-applications 0.1.4__tar.gz → 0.1.6__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 universal-mcp-applications might be problematic. Click here for more details.

Files changed (279) hide show
  1. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/PKG-INFO +1 -1
  2. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/pyproject.toml +1 -1
  3. universal_mcp_applications-0.1.6/src/tests/test_applications.py +97 -0
  4. universal_mcp_applications-0.1.6/src/universal_mcp/applications/scraper/README.md +15 -0
  5. universal_mcp_applications-0.1.6/src/universal_mcp/applications/scraper/__init__.py +1 -0
  6. universal_mcp_applications-0.1.6/src/universal_mcp/applications/scraper/app.py +189 -0
  7. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/uv.lock +1 -1
  8. universal_mcp_applications-0.1.4/src/tests/test_applications.py +0 -96
  9. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/.gitignore +0 -0
  10. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/LICENSE +0 -0
  11. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/README.md +0 -0
  12. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/bump_and_release.sh +0 -0
  13. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/examples/children_story_builder.py +0 -0
  14. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/ahrefs/README.md +0 -0
  15. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/ahrefs/__init__.py +0 -0
  16. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/ahrefs/app.py +0 -0
  17. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/airtable/README.md +0 -0
  18. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/airtable/__init__.py +0 -0
  19. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/airtable/app.py +0 -0
  20. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/apollo/README.md +0 -0
  21. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/apollo/__init__.py +0 -0
  22. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/apollo/app.py +0 -0
  23. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/asana/README.md +0 -0
  24. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/asana/__init__.py +0 -0
  25. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/asana/app.py +0 -0
  26. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/aws_s3/README.md +0 -0
  27. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/aws_s3/__init__.py +0 -0
  28. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/aws_s3/app.py +0 -0
  29. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/bill/README.md +0 -0
  30. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/bill/__init__.py +0 -0
  31. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/bill/app.py +0 -0
  32. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/box/README.md +0 -0
  33. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/box/__init__.py +0 -0
  34. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/box/app.py +0 -0
  35. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/braze/README.md +0 -0
  36. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/braze/__init__.py +0 -0
  37. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/braze/app.py +0 -0
  38. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/cal_com_v2/README.md +0 -0
  39. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/cal_com_v2/__init__.py +0 -0
  40. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/cal_com_v2/app.py +0 -0
  41. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/calendly/README.md +0 -0
  42. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/calendly/__init__.py +0 -0
  43. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/calendly/app.py +0 -0
  44. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/canva/README.md +0 -0
  45. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/canva/__init__.py +0 -0
  46. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/canva/app.py +0 -0
  47. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/clickup/README.md +0 -0
  48. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/clickup/__init__.py +0 -0
  49. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/clickup/app.py +0 -0
  50. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/coda/README.md +0 -0
  51. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/coda/__init__.py +0 -0
  52. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/coda/app.py +0 -0
  53. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/confluence/README.md +0 -0
  54. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/confluence/__init__.py +0 -0
  55. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/confluence/app.py +0 -0
  56. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/contentful/README.md +0 -0
  57. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/contentful/__init__.py +0 -0
  58. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/contentful/app.py +0 -0
  59. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/crustdata/README.md +0 -0
  60. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/crustdata/__init__.py +0 -0
  61. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/crustdata/app.py +0 -0
  62. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/dialpad/README.md +0 -0
  63. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/dialpad/__init__.py +0 -0
  64. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/dialpad/app.py +0 -0
  65. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/digitalocean/README.md +0 -0
  66. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/digitalocean/__init__.py +0 -0
  67. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/digitalocean/app.py +0 -0
  68. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/domain_checker/README.md +0 -0
  69. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/domain_checker/__init__.py +0 -0
  70. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/domain_checker/app.py +0 -0
  71. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/e2b/README.md +0 -0
  72. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/e2b/__init__.py +0 -0
  73. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/e2b/app.py +0 -0
  74. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/elevenlabs/README.md +0 -0
  75. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/elevenlabs/__init__.py +0 -0
  76. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/elevenlabs/app.py +0 -0
  77. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/exa/README.md +0 -0
  78. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/exa/__init__.py +0 -0
  79. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/exa/app.py +0 -0
  80. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/falai/README.md +0 -0
  81. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/falai/__init__.py +0 -0
  82. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/falai/app.py +0 -0
  83. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/figma/README.md +0 -0
  84. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/figma/__init__.py +0 -0
  85. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/figma/app.py +0 -0
  86. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/file_system/__init__.py +0 -0
  87. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/file_system/app.py +0 -0
  88. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/firecrawl/README.md +0 -0
  89. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/firecrawl/__init__.py +0 -0
  90. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/firecrawl/app.py +0 -0
  91. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/fireflies/README.md +0 -0
  92. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/fireflies/__init__.py +0 -0
  93. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/fireflies/app.py +0 -0
  94. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/fpl/README.md +0 -0
  95. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/fpl/__init__.py +0 -0
  96. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/fpl/app.py +0 -0
  97. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/fpl/utils/api.py +0 -0
  98. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/fpl/utils/fixtures.py +0 -0
  99. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/fpl/utils/helper.py +0 -0
  100. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/fpl/utils/league_utils.py +0 -0
  101. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/fpl/utils/position_utils.py +0 -0
  102. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/ghost_content/README.md +0 -0
  103. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/ghost_content/__init__.py +0 -0
  104. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/ghost_content/app.py +0 -0
  105. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/github/README.md +0 -0
  106. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/github/__init__.py +0 -0
  107. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/github/app.py +0 -0
  108. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/gong/README.md +0 -0
  109. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/gong/__init__.py +0 -0
  110. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/gong/app.py +0 -0
  111. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/google_calendar/README.md +0 -0
  112. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/google_calendar/__init__.py +0 -0
  113. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/google_calendar/app.py +0 -0
  114. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/google_docs/README.md +0 -0
  115. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/google_docs/__init__.py +0 -0
  116. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/google_docs/app.py +0 -0
  117. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/google_drive/README.md +0 -0
  118. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/google_drive/__init__.py +0 -0
  119. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/google_drive/app.py +0 -0
  120. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/google_gemini/README.md +0 -0
  121. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/google_gemini/__init__.py +0 -0
  122. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/google_gemini/app.py +0 -0
  123. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/google_mail/README.md +0 -0
  124. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/google_mail/__init__.py +0 -0
  125. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/google_mail/app.py +0 -0
  126. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/google_searchconsole/README.md +0 -0
  127. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/google_searchconsole/__init__.py +0 -0
  128. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/google_searchconsole/app.py +0 -0
  129. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/google_sheet/README.md +0 -0
  130. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/google_sheet/__init__.py +0 -0
  131. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/google_sheet/app.py +0 -0
  132. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/google_sheet/helper.py +0 -0
  133. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/hashnode/README.md +0 -0
  134. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/hashnode/__init__.py +0 -0
  135. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/hashnode/app.py +0 -0
  136. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/heygen/README.md +0 -0
  137. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/heygen/__init__.py +0 -0
  138. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/heygen/app.py +0 -0
  139. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/http_tools/README.md +0 -0
  140. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/http_tools/__init__.py +0 -0
  141. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/http_tools/app.py +0 -0
  142. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/hubspot/README.md +0 -0
  143. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/hubspot/__init__.py +0 -0
  144. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/hubspot/app.py +0 -0
  145. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/jira/README.md +0 -0
  146. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/jira/__init__.py +0 -0
  147. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/jira/app.py +0 -0
  148. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/klaviyo/README.md +0 -0
  149. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/klaviyo/__init__.py +0 -0
  150. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/klaviyo/app.py +0 -0
  151. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/linkedin/README.md +0 -0
  152. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/linkedin/__init__.py +0 -0
  153. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/linkedin/app.py +0 -0
  154. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/mailchimp/README.md +0 -0
  155. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/mailchimp/__init__.py +0 -0
  156. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/mailchimp/app.py +0 -0
  157. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/markitdown/README.md +0 -0
  158. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/markitdown/__init__.py +0 -0
  159. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/markitdown/app.py +0 -0
  160. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/miro/README.md +0 -0
  161. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/miro/__init__.py +0 -0
  162. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/miro/app.py +0 -0
  163. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/ms_teams/README.md +0 -0
  164. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/ms_teams/__init__.py +0 -0
  165. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/ms_teams/app.py +0 -0
  166. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/neon/README.md +0 -0
  167. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/neon/__init__.py +0 -0
  168. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/neon/app.py +0 -0
  169. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/notion/README.md +0 -0
  170. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/notion/__init__.py +0 -0
  171. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/notion/app.py +0 -0
  172. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/openai/README.md +0 -0
  173. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/openai/__init__.py +0 -0
  174. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/openai/app.py +0 -0
  175. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/outlook/README.md +0 -0
  176. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/outlook/__init__.py +0 -0
  177. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/outlook/app.py +0 -0
  178. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/perplexity/README.md +0 -0
  179. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/perplexity/__init__.py +0 -0
  180. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/perplexity/app.py +0 -0
  181. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/pipedrive/README.md +0 -0
  182. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/pipedrive/__init__.py +0 -0
  183. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/pipedrive/app.py +0 -0
  184. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/posthog/README.md +0 -0
  185. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/posthog/__init__.py +0 -0
  186. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/posthog/app.py +0 -0
  187. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/reddit/README.md +0 -0
  188. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/reddit/__init__.py +0 -0
  189. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/reddit/app.py +0 -0
  190. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/replicate/README.md +0 -0
  191. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/replicate/__init__.py +0 -0
  192. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/replicate/app.py +0 -0
  193. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/resend/README.md +0 -0
  194. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/resend/__init__.py +0 -0
  195. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/resend/app.py +0 -0
  196. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/retell/README.md +0 -0
  197. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/retell/__init__.py +0 -0
  198. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/retell/app.py +0 -0
  199. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/rocketlane/README.md +0 -0
  200. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/rocketlane/__init__.py +0 -0
  201. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/rocketlane/app.py +0 -0
  202. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/semanticscholar/README.md +0 -0
  203. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/semanticscholar/__init__.py +0 -0
  204. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/semanticscholar/app.py +0 -0
  205. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/semrush/README.md +0 -0
  206. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/semrush/__init__.py +0 -0
  207. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/semrush/app.py +0 -0
  208. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/sendgrid/README.md +0 -0
  209. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/sendgrid/__init__.py +0 -0
  210. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/sendgrid/app.py +0 -0
  211. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/sentry/README.md +0 -0
  212. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/sentry/__init__.py +0 -0
  213. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/sentry/app.py +0 -0
  214. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/serpapi/README.md +0 -0
  215. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/serpapi/__init__.py +0 -0
  216. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/serpapi/app.py +0 -0
  217. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/sharepoint/README.md +0 -0
  218. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/sharepoint/__init__.py +0 -0
  219. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/sharepoint/app.py +0 -0
  220. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/shopify/README.md +0 -0
  221. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/shopify/__init__.py +0 -0
  222. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/shopify/app.py +0 -0
  223. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/shortcut/README.md +0 -0
  224. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/shortcut/__init__.py +0 -0
  225. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/shortcut/app.py +0 -0
  226. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/slack/README.md +0 -0
  227. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/slack/__init__.py +0 -0
  228. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/slack/app.py +0 -0
  229. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/spotify/README.md +0 -0
  230. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/spotify/__init__.py +0 -0
  231. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/spotify/app.py +0 -0
  232. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/supabase/README.md +0 -0
  233. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/supabase/__init__.py +0 -0
  234. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/supabase/app.py +0 -0
  235. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/tavily/README.md +0 -0
  236. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/tavily/__init__.py +0 -0
  237. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/tavily/app.py +0 -0
  238. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/trello/README.md +0 -0
  239. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/trello/__init__.py +0 -0
  240. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/trello/app.py +0 -0
  241. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/twilio/README.md +0 -0
  242. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/twilio/__init__.py +0 -0
  243. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/twilio/app.py +0 -0
  244. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/twitter/README.md +0 -0
  245. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/twitter/__init__.py +0 -0
  246. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/twitter/api_segments/__init__.py +0 -0
  247. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/twitter/api_segments/api_segment_base.py +0 -0
  248. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/twitter/api_segments/compliance_api.py +0 -0
  249. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/twitter/api_segments/dm_conversations_api.py +0 -0
  250. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/twitter/api_segments/dm_events_api.py +0 -0
  251. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/twitter/api_segments/likes_api.py +0 -0
  252. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/twitter/api_segments/lists_api.py +0 -0
  253. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/twitter/api_segments/openapi_json_api.py +0 -0
  254. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/twitter/api_segments/spaces_api.py +0 -0
  255. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/twitter/api_segments/trends_api.py +0 -0
  256. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/twitter/api_segments/tweets_api.py +0 -0
  257. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/twitter/api_segments/usage_api.py +0 -0
  258. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/twitter/api_segments/users_api.py +0 -0
  259. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/twitter/app.py +0 -0
  260. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/unipile/README.md +0 -0
  261. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/unipile/__init__.py +0 -0
  262. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/unipile/app.py +0 -0
  263. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/whatsapp/README.md +0 -0
  264. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/whatsapp/__init__.py +0 -0
  265. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/whatsapp/app.py +0 -0
  266. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/whatsapp/audio.py +0 -0
  267. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/whatsapp/whatsapp.py +0 -0
  268. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/whatsapp_business/README.md +0 -0
  269. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/whatsapp_business/__init__.py +0 -0
  270. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/whatsapp_business/app.py +0 -0
  271. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/wrike/README.md +0 -0
  272. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/wrike/__init__.py +0 -0
  273. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/wrike/app.py +0 -0
  274. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/youtube/README.md +0 -0
  275. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/youtube/__init__.py +0 -0
  276. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/youtube/app.py +0 -0
  277. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/zenquotes/README.md +0 -0
  278. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/zenquotes/__init__.py +0 -0
  279. {universal_mcp_applications-0.1.4 → universal_mcp_applications-0.1.6}/src/universal_mcp/applications/zenquotes/app.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: universal-mcp-applications
3
- Version: 0.1.4
3
+ Version: 0.1.6
4
4
  Summary: A Universal MCP Application: universal_mcp_applications
5
5
  Project-URL: Homepage, https://github.com/universal-mcp/applications
6
6
  Project-URL: Repository, https://github.com/universal-mcp/applications
@@ -6,7 +6,7 @@ build-backend = "hatchling.build"
6
6
 
7
7
  [project]
8
8
  name = "universal-mcp-applications"
9
- version = "0.1.4"
9
+ version = "0.1.6"
10
10
  description = "A Universal MCP Application: universal_mcp_applications"
11
11
  readme = "README.md"
12
12
  requires-python = ">=3.11"
@@ -0,0 +1,97 @@
1
+ import pytest
2
+
3
+ from universal_mcp.applications.utils import app_from_slug
4
+ from universal_mcp.utils.testing import check_application_instance
5
+
6
+ ALL_APPS = [
7
+ # "ahrefs",
8
+ # "airtable",
9
+ # "apollo",
10
+ # "asana",
11
+ # "aws_s3",
12
+ # "bill",
13
+ # "box",
14
+ # "braze",
15
+ # "cal_com_v2",
16
+ # "calendly",
17
+ # "canva",
18
+ # "clickup",
19
+ # "coda",
20
+ # "confluence",
21
+ # "contentful",
22
+ # "crustdata",
23
+ # "dialpad",
24
+ # "digitalocean",
25
+ # "domain_checker",
26
+ # "e2b",
27
+ # "elevenlabs",
28
+ # "exa",
29
+ # "falai",
30
+ # "figma",
31
+ # "file_system",
32
+ # "firecrawl",
33
+ # "fireflies",
34
+ # "fpl",
35
+ # "ghost_content",
36
+ # "github",
37
+ # "gong",
38
+ # "google_calendar",
39
+ # "google_docs",
40
+ # "google_drive",
41
+ # "google_gemini",
42
+ # "google_mail",
43
+ # "google_searchconsole",
44
+ # "google_sheet",
45
+ # "hashnode",
46
+ # "heygen",
47
+ # "http_tools",
48
+ # "hubspot",
49
+ # "jira",
50
+ # "klaviyo",
51
+ # "linkedin",
52
+ # "mailchimp",
53
+ # "markitdown",
54
+ # "miro",
55
+ # "ms_teams",
56
+ # "neon",
57
+ # "notion",
58
+ # "openai",
59
+ # "outlook",
60
+ # "perplexity",
61
+ # "pipedrive",
62
+ # "posthog",
63
+ # "reddit",
64
+ # "replicate",
65
+ # "resend",
66
+ # "retell",
67
+ # "rocketlane",
68
+ "scraper",
69
+ # "semanticscholar",
70
+ # "semrush",
71
+ # "sendgrid",
72
+ # "sentry",
73
+ # "serpapi",
74
+ # "sharepoint",
75
+ # "shopify",
76
+ # "shortcut",
77
+ # "slack",
78
+ # "spotify",
79
+ # "supabase",
80
+ # "tavily",
81
+ # "trello",
82
+ # "twilio",
83
+ # "twitter",
84
+ # "unipile",
85
+ # "whatsapp",
86
+ # "whatsapp_business",
87
+ # "wrike",
88
+ # "youtube",
89
+ # "zenquotes",
90
+ ]
91
+
92
+
93
+ @pytest.mark.parametrize("app_name", ALL_APPS)
94
+ def test_application(app_name):
95
+ app_class = app_from_slug(app_name)
96
+ app_instance = app_class(integration=None)
97
+ check_application_instance(app_instance, app_name)
@@ -0,0 +1,15 @@
1
+ # ScraperApp MCP Server
2
+
3
+ An MCP Server for the ScraperApp API.
4
+
5
+ ## 🛠️ Tool List
6
+
7
+ This is automatically generated from OpenAPI schema for the ScraperApp API.
8
+
9
+
10
+ | Tool | Description |
11
+ |------|-------------|
12
+ | `linkedin_post_search` | Performs a LinkedIn search for posts. |
13
+ | `linkedin_list_all_posts` | Lists all LinkedIn posts for a given user identifier |
14
+ | `linkedin_retrieve_profile` | Retrieves a specific LinkedIn user profile by its identifier. |
15
+ | `linkedin_list_post_comments` | Lists all comments from a specific LinkedIn post. Can also list replies to a specific comment. |
@@ -0,0 +1 @@
1
+ from .app import ScraperApp
@@ -0,0 +1,189 @@
1
+ import os
2
+ from dotenv import load_dotenv
3
+ load_dotenv()
4
+
5
+ from typing import Any
6
+
7
+ from universal_mcp.applications.application import APIApplication
8
+ from universal_mcp.agentr.integration import AgentrIntegration
9
+ from universal_mcp.applications.unipile import UnipileApp
10
+ from typing import Any, Optional
11
+
12
+ class ScraperApp(APIApplication):
13
+ """
14
+ Application for interacting with LinkedIn API.
15
+ Provides a simplified interface for LinkedIn search operations.
16
+ """
17
+
18
+ def __init__(self, **kwargs: Any) -> None:
19
+ """
20
+ Initialize the ScraperApp.
21
+
22
+ Args:
23
+ integration: The integration configuration containing credentials and other settings.
24
+ It is expected that the integration provides the necessary credentials
25
+ for LinkedIn API access.
26
+ """
27
+ super().__init__(name="scraper", **kwargs)
28
+ if self.integration:
29
+ credentials = self.integration.get_credentials()
30
+ api_key = credentials.get("SCRAPER_API")
31
+ self.account_id = credentials.get("ACCOUNT_ID")
32
+ self.integration = AgentrIntegration(name="unipile", api_key=api_key, base_url="https://staging-agentr-306776579029.asia-southeast1.run.app/")
33
+ self._unipile_app = UnipileApp(integration=self.integration)
34
+ else:
35
+ self.account_id = None
36
+ self._unipile_app = None
37
+
38
+ def linkedin_post_search(
39
+ self,
40
+ category: str = "posts",
41
+ api: str = "classic",
42
+ cursor: Optional[str] = None,
43
+ limit: Optional[int] = None,
44
+ keywords: Optional[str] = None,
45
+ sort_by: Optional[str] = None,
46
+ date_posted: Optional[str] = None,
47
+ content_type: Optional[str] = None,
48
+ ) -> dict[str, Any]:
49
+ """
50
+ Performs a LinkedIn search for posts.
51
+
52
+ Args:
53
+ category: Type of search to perform (defaults to "posts").
54
+ api: Which LinkedIn API to use - "classic" or "sales_navigator".
55
+ cursor: Pagination cursor for the next page of entries.
56
+ limit: Number of items to return (up to 50 for Classic search).
57
+ keywords: Keywords to search for.
58
+ sort_by: How to sort the results, e.g., "relevance" or "date".
59
+ date_posted: Filter posts by when they were posted.
60
+ content_type: Filter by the type of content in the post. Example: "videos", "images", "live_videos", "collaborative_articles", "documents"
61
+
62
+ Returns:
63
+ A dictionary containing search results and pagination details.
64
+
65
+ Raises:
66
+ httpx.HTTPError: If the API request fails.
67
+
68
+ Tags:
69
+ linkedin, search, posts, api, scrapper, important
70
+ """
71
+
72
+ return self._unipile_app.search(
73
+ account_id=self.account_id,
74
+ category=category,
75
+ api=api,
76
+ cursor=cursor,
77
+ limit=limit,
78
+ keywords=keywords,
79
+ sort_by=sort_by,
80
+ date_posted=date_posted,
81
+ content_type=content_type,
82
+ )
83
+
84
+ def linkedin_list_all_posts(
85
+ self,
86
+ identifier: str,
87
+ cursor: Optional[str] = None,
88
+ limit: Optional[int] = None,
89
+ ) -> dict[str, Any]:
90
+ """
91
+ Lists all LinkedIn posts for a given user identifier
92
+
93
+ Args:
94
+ identifier: The entity's provider internal ID (LinkedIn ID).starts with ACo for users, while for companies it's a series of numbers.
95
+ cursor: Pagination cursor for the next page of entries.
96
+ limit: Number of items to return (1-100, though spec allows up to 250).
97
+
98
+ Returns:
99
+ A dictionary containing a list of post objects and pagination details.
100
+
101
+ Raises:
102
+ httpx.HTTPError: If the API request fails.
103
+
104
+ Tags:
105
+ linkedin, post, list, user_posts, company_posts, content, api, important
106
+ """
107
+
108
+ return self._unipile_app.list_user_posts(
109
+ identifier=identifier,
110
+ account_id=self.account_id,
111
+ cursor=cursor,
112
+ limit=limit,
113
+ )
114
+
115
+ def linkedin_retrieve_profile(
116
+ self,
117
+ identifier: str,
118
+ ) -> dict[str, Any]:
119
+ """
120
+ Retrieves a specific LinkedIn user profile by its identifier.
121
+
122
+ Args:
123
+ identifier: Can be the provider's internal id OR the provider's public id of the requested user.
124
+ For example, for https://www.linkedin.com/in/manojbajaj95/, the identifier is "manojbajaj95".
125
+
126
+ Returns:
127
+ A dictionary containing the user's profile details.
128
+
129
+ Raises:
130
+ httpx.HTTPError: If the API request fails.
131
+
132
+ Tags:
133
+ linkedin, user, profile, retrieve, get, api, important
134
+ """
135
+
136
+ return self._unipile_app.retrieve_profile(
137
+ identifier=identifier,
138
+ account_id=self.account_id,
139
+ )
140
+
141
+
142
+ def linkedin_list_post_comments(
143
+ self,
144
+ post_id: str,
145
+ comment_id: Optional[str] = None,
146
+ cursor: Optional[str] = None,
147
+ limit: Optional[int] = None,
148
+ ) -> dict[str, Any]:
149
+ """
150
+ Lists all comments from a specific LinkedIn post. Can also list replies to a specific comment.
151
+
152
+ Args:
153
+ post_id: The social ID of the post. Example rn:li:activity:7342082869034393600
154
+ comment_id: If provided, retrieves replies to this comment ID instead of top-level comments.
155
+ cursor: Pagination cursor.
156
+ limit: Number of comments to return.
157
+
158
+ Returns:
159
+ A dictionary containing a list of comment objects and pagination details.
160
+
161
+ Raises:
162
+ httpx.HTTPError: If the API request fails.
163
+
164
+ Tags:
165
+ linkedin, post, comment, list, content, api, important
166
+ """
167
+
168
+ return self._unipile_app.list_post_comments(
169
+ post_id=post_id,
170
+ account_id=self.account_id,
171
+ comment_id=comment_id,
172
+ cursor=cursor,
173
+ limit=limit,
174
+ )
175
+
176
+
177
+ def list_tools(self):
178
+ """
179
+ Returns a list of available tools/functions in this application.
180
+
181
+ Returns:
182
+ A list of functions that can be used as tools.
183
+ """
184
+ return [
185
+ self.linkedin_post_search,
186
+ self.linkedin_list_all_posts,
187
+ self.linkedin_retrieve_profile,
188
+ self.linkedin_list_post_comments,
189
+ ]
@@ -4306,7 +4306,7 @@ wheels = [
4306
4306
 
4307
4307
  [[package]]
4308
4308
  name = "universal-mcp-applications"
4309
- version = "0.1.4"
4309
+ version = "0.1.6"
4310
4310
  source = { editable = "." }
4311
4311
  dependencies = [
4312
4312
  { name = "boto3" },
@@ -1,96 +0,0 @@
1
- import pytest
2
-
3
- from universal_mcp.applications.utils import app_from_slug
4
- from universal_mcp.utils.testing import check_application_instance
5
-
6
- ALL_APPS = [
7
- "ahrefs",
8
- "airtable",
9
- "aws_s3",
10
- "apollo",
11
- "asana",
12
- "bill",
13
- "box",
14
- "braze",
15
- # "cal_com_v2",
16
- "confluence",
17
- "calendly",
18
- "canva",
19
- "clickup",
20
- "coda",
21
- "contentful",
22
- "crustdata",
23
- "dialpad",
24
- "digitalocean",
25
- "domain_checker",
26
- "e2b",
27
- "elevenlabs",
28
- "exa",
29
- "falai",
30
- "figma",
31
- "file_system",
32
- "firecrawl",
33
- "fireflies",
34
- "fpl",
35
- "ghost_content",
36
- "github",
37
- "gong",
38
- "google_calendar",
39
- "google_docs",
40
- "google_drive",
41
- "google_gemini",
42
- "google_mail",
43
- "google_searchconsole",
44
- "google_sheet",
45
- "hashnode",
46
- "heygen",
47
- "http_tools",
48
- "hubspot",
49
- "jira",
50
- "klaviyo",
51
- "linkedin",
52
- "mailchimp",
53
- "markitdown",
54
- "miro",
55
- "ms_teams",
56
- "neon",
57
- "notion",
58
- "openai",
59
- "outlook",
60
- "perplexity",
61
- "pipedrive",
62
- "posthog",
63
- "reddit",
64
- "replicate",
65
- "resend",
66
- "retell",
67
- "rocketlane",
68
- "semanticscholar",
69
- "semrush",
70
- "sendgrid",
71
- "sentry",
72
- "serpapi",
73
- "sharepoint",
74
- "shopify",
75
- "shortcut",
76
- "slack",
77
- "spotify",
78
- "supabase",
79
- "tavily",
80
- "trello",
81
- "twilio",
82
- "twitter",
83
- "unipile",
84
- "whatsapp",
85
- "whatsapp_business",
86
- "wrike",
87
- "youtube",
88
- "zenquotes",
89
- ]
90
-
91
-
92
- @pytest.mark.parametrize("app_name", ALL_APPS)
93
- def test_application(app_name):
94
- app_class = app_from_slug(app_name)
95
- app_instance = app_class(integration=None)
96
- check_application_instance(app_instance, app_name)