universal-mcp-applications 0.1.6__py3-none-any.whl → 0.1.7__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 universal-mcp-applications might be problematic. Click here for more details.
- universal_mcp/applications/github/app.py +1022 -1022
- universal_mcp/applications/reddit/app.py +120 -109
- universal_mcp/applications/whatsapp/app.py +16 -2
- {universal_mcp_applications-0.1.6.dist-info → universal_mcp_applications-0.1.7.dist-info}/METADATA +1 -1
- {universal_mcp_applications-0.1.6.dist-info → universal_mcp_applications-0.1.7.dist-info}/RECORD +7 -7
- {universal_mcp_applications-0.1.6.dist-info → universal_mcp_applications-0.1.7.dist-info}/WHEEL +0 -0
- {universal_mcp_applications-0.1.6.dist-info → universal_mcp_applications-0.1.7.dist-info}/licenses/LICENSE +0 -0
|
@@ -4526,6 +4526,7 @@ class RedditApp(APIApplication):
|
|
|
4526
4526
|
|
|
4527
4527
|
def list_tools(self):
|
|
4528
4528
|
return [
|
|
4529
|
+
# Manually defined, high-level tools for common Reddit interactions
|
|
4529
4530
|
self.get_subreddit_posts,
|
|
4530
4531
|
self.search_subreddits,
|
|
4531
4532
|
self.get_post_flairs,
|
|
@@ -4534,120 +4535,130 @@ class RedditApp(APIApplication):
|
|
|
4534
4535
|
self.post_comment,
|
|
4535
4536
|
self.edit_content,
|
|
4536
4537
|
self.delete_content,
|
|
4537
|
-
|
|
4538
|
+
self.get_post_comments_details,
|
|
4539
|
+
|
|
4540
|
+
# Useful tools for fetching user information
|
|
4538
4541
|
self.api_v1_me,
|
|
4539
4542
|
self.api_v1_me_karma,
|
|
4540
|
-
self.
|
|
4541
|
-
|
|
4542
|
-
|
|
4543
|
-
self.prefs_friends,
|
|
4544
|
-
self.prefs_blocked,
|
|
4545
|
-
self.prefs_messaging,
|
|
4546
|
-
self.prefs_trusted,
|
|
4547
|
-
self.api_needs_captcha,
|
|
4548
|
-
self.api_v1_collections_collection,
|
|
4549
|
-
self.api_v1_collections_subreddit_collections,
|
|
4550
|
-
self.api_v1_subreddit_emoji_emoji_name,
|
|
4551
|
-
self.api_v1_subreddit_emojis_all,
|
|
4552
|
-
self.r_subreddit_api_flair,
|
|
4553
|
-
self.r_subreddit_api_flairlist,
|
|
4554
|
-
self.r_subreddit_api_link_flair,
|
|
4555
|
-
self.r_subreddit_api_link_flair_v2,
|
|
4556
|
-
self.r_subreddit_api_user_flair,
|
|
4557
|
-
self.r_subreddit_api_user_flair_v2,
|
|
4558
|
-
self.api_info,
|
|
4559
|
-
self.r_subreddit_api_info,
|
|
4560
|
-
self.api_morechildren,
|
|
4561
|
-
self.api_saved_categories,
|
|
4562
|
-
self.req,
|
|
4563
|
-
self.best,
|
|
4564
|
-
self.by_id_names,
|
|
4565
|
-
self.comments_article,
|
|
4566
|
-
self.controversial,
|
|
4567
|
-
self.duplicates_article,
|
|
4543
|
+
self.user_username_about,
|
|
4544
|
+
|
|
4545
|
+
# Core listing tools for browsing posts
|
|
4568
4546
|
self.hot,
|
|
4569
4547
|
self.new,
|
|
4570
|
-
self.
|
|
4571
|
-
self.
|
|
4548
|
+
self.top,
|
|
4549
|
+
self.rising,
|
|
4550
|
+
self.controversial,
|
|
4551
|
+
|
|
4552
|
+
# Subreddit-specific listing tools
|
|
4572
4553
|
self.r_subreddit_hot,
|
|
4573
4554
|
self.r_subreddit_new,
|
|
4574
|
-
self.r_subreddit_random,
|
|
4575
|
-
self.r_subreddit_rising,
|
|
4576
4555
|
self.r_subreddit_top,
|
|
4577
|
-
|
|
4578
|
-
|
|
4579
|
-
self.top,
|
|
4580
|
-
self.api_saved_media_text,
|
|
4581
|
-
self.api_v1_scopes,
|
|
4582
|
-
self.r_subreddit_api_saved_media_text,
|
|
4583
|
-
self.r_subreddit_about_log,
|
|
4584
|
-
self.r_subreddit_about_edited,
|
|
4585
|
-
self.r_subreddit_about_modqueue,
|
|
4586
|
-
self.r_subreddit_about_reports,
|
|
4587
|
-
self.r_subreddit_about_spam,
|
|
4588
|
-
self.r_subreddit_about_unmoderated,
|
|
4589
|
-
self.r_subreddit_stylesheet,
|
|
4590
|
-
self.stylesheet,
|
|
4591
|
-
self.api_mod_notes1,
|
|
4592
|
-
self.api_mod_notes,
|
|
4593
|
-
self.api_mod_notes_recent,
|
|
4594
|
-
self.api_multi_mine,
|
|
4595
|
-
self.api_multi_user_username,
|
|
4596
|
-
self.api_multi_multipath1,
|
|
4597
|
-
self.api_multi_multipath,
|
|
4598
|
-
self.api_multi_multipath_description,
|
|
4599
|
-
self.api_multi_multipath_rsubreddit1,
|
|
4600
|
-
self.api_multi_multipath_rsubreddit,
|
|
4601
|
-
self.api_mod_conversations,
|
|
4602
|
-
self.api_mod_conversations_conversation_id,
|
|
4603
|
-
self.api_mod_conversations_conversation_id_highlight,
|
|
4604
|
-
self.api_mod_conversations_conversation_id_unarchive,
|
|
4605
|
-
self.api_mod_conversations_conversation_id_unban,
|
|
4606
|
-
self.api_mod_conversations_conversation_id_unmute,
|
|
4607
|
-
self.api_mod_conversations_conversation_id_user,
|
|
4608
|
-
self.api_mod_conversations_subreddits,
|
|
4609
|
-
self.api_mod_conversations_unread_count,
|
|
4610
|
-
self.message_inbox,
|
|
4611
|
-
self.message_sent,
|
|
4612
|
-
self.message_unread,
|
|
4556
|
+
|
|
4557
|
+
# A general-purpose search tool
|
|
4613
4558
|
self.search,
|
|
4614
|
-
|
|
4615
|
-
|
|
4616
|
-
|
|
4617
|
-
self.
|
|
4618
|
-
self.
|
|
4619
|
-
self.
|
|
4620
|
-
self.
|
|
4621
|
-
self.
|
|
4622
|
-
self.
|
|
4623
|
-
self.
|
|
4624
|
-
self.
|
|
4625
|
-
self.
|
|
4626
|
-
self.
|
|
4627
|
-
self.
|
|
4628
|
-
self.
|
|
4629
|
-
self.
|
|
4630
|
-
self.
|
|
4631
|
-
self.
|
|
4632
|
-
self.
|
|
4633
|
-
self.
|
|
4634
|
-
self.
|
|
4635
|
-
self.
|
|
4636
|
-
self.
|
|
4637
|
-
self.
|
|
4638
|
-
self.
|
|
4639
|
-
self.
|
|
4640
|
-
self.
|
|
4641
|
-
self.
|
|
4642
|
-
self.
|
|
4643
|
-
self.
|
|
4644
|
-
self.
|
|
4645
|
-
self.
|
|
4646
|
-
self.
|
|
4647
|
-
self.
|
|
4648
|
-
self.
|
|
4649
|
-
self.
|
|
4650
|
-
self.
|
|
4651
|
-
self.
|
|
4652
|
-
self.
|
|
4653
|
-
|
|
4559
|
+
|
|
4560
|
+
# --- The following tools are more granular or niche and have been commented out ---
|
|
4561
|
+
|
|
4562
|
+
# self.api_v1_me_prefs,
|
|
4563
|
+
# self.api_v1_me_prefs1,
|
|
4564
|
+
# self.api_v1_me_trophies,
|
|
4565
|
+
# self.prefs_friends,
|
|
4566
|
+
# self.prefs_blocked,
|
|
4567
|
+
# self.prefs_messaging,
|
|
4568
|
+
# self.prefs_trusted,
|
|
4569
|
+
# self.api_needs_captcha,
|
|
4570
|
+
# self.api_v1_collections_collection,
|
|
4571
|
+
# self.api_v1_collections_subreddit_collections,
|
|
4572
|
+
# self.api_v1_subreddit_emoji_emoji_name,
|
|
4573
|
+
# self.api_v1_subreddit_emojis_all,
|
|
4574
|
+
# self.r_subreddit_api_flair,
|
|
4575
|
+
# self.r_subreddit_api_flairlist,
|
|
4576
|
+
# self.r_subreddit_api_link_flair,
|
|
4577
|
+
# self.r_subreddit_api_link_flair_v2,
|
|
4578
|
+
# self.r_subreddit_api_user_flair,
|
|
4579
|
+
# self.r_subreddit_api_user_flair_v2,
|
|
4580
|
+
# self.api_info,
|
|
4581
|
+
# self.r_subreddit_api_info,
|
|
4582
|
+
# self.api_morechildren,
|
|
4583
|
+
# self.api_saved_categories,
|
|
4584
|
+
# self.req,
|
|
4585
|
+
# self.best,
|
|
4586
|
+
# self.by_id_names,
|
|
4587
|
+
# self.comments_article,
|
|
4588
|
+
# self.duplicates_article,
|
|
4589
|
+
# self.r_subreddit_comments_article,
|
|
4590
|
+
# self.r_subreddit_controversial,
|
|
4591
|
+
# self.r_subreddit_random,
|
|
4592
|
+
# self.r_subreddit_rising,
|
|
4593
|
+
# self.random,
|
|
4594
|
+
# self.api_saved_media_text,
|
|
4595
|
+
# self.api_v1_scopes,
|
|
4596
|
+
# self.r_subreddit_api_saved_media_text,
|
|
4597
|
+
# self.r_subreddit_about_log,
|
|
4598
|
+
# self.r_subreddit_about_edited,
|
|
4599
|
+
# self.r_subreddit_about_modqueue,
|
|
4600
|
+
# self.r_subreddit_about_reports,
|
|
4601
|
+
# self.r_subreddit_about_spam,
|
|
4602
|
+
# self.r_subreddit_about_unmoderated,
|
|
4603
|
+
# self.r_subreddit_stylesheet,
|
|
4604
|
+
# self.stylesheet,
|
|
4605
|
+
# self.api_mod_notes1,
|
|
4606
|
+
# self.api_mod_notes,
|
|
4607
|
+
# self.api_mod_notes_recent,
|
|
4608
|
+
# self.api_multi_mine,
|
|
4609
|
+
# self.api_multi_user_username,
|
|
4610
|
+
# self.api_multi_multipath1,
|
|
4611
|
+
# self.api_multi_multipath,
|
|
4612
|
+
# self.api_multi_multipath_description,
|
|
4613
|
+
# self.api_multi_multipath_rsubreddit1,
|
|
4614
|
+
# self.api_multi_multipath_rsubreddit,
|
|
4615
|
+
# self.api_mod_conversations,
|
|
4616
|
+
# self.api_mod_conversations_conversation_id,
|
|
4617
|
+
# self.api_mod_conversations_conversation_id_highlight,
|
|
4618
|
+
# self.api_mod_conversations_conversation_id_unarchive,
|
|
4619
|
+
# self.api_mod_conversations_conversation_id_unban,
|
|
4620
|
+
# self.api_mod_conversations_conversation_id_unmute,
|
|
4621
|
+
# self.api_mod_conversations_conversation_id_user,
|
|
4622
|
+
# self.api_mod_conversations_subreddits,
|
|
4623
|
+
# self.api_mod_conversations_unread_count,
|
|
4624
|
+
# self.message_inbox,
|
|
4625
|
+
# self.message_sent,
|
|
4626
|
+
# self.message_unread,
|
|
4627
|
+
# self.r_subreddit_search,
|
|
4628
|
+
# self.api_search_reddit_names,
|
|
4629
|
+
# self.api_subreddit_autocomplete,
|
|
4630
|
+
# self.api_subreddit_autocomplete_v2,
|
|
4631
|
+
# self.api_v1_subreddit_post_requirements,
|
|
4632
|
+
# self.r_subreddit_about_banned,
|
|
4633
|
+
# self.r_subreddit_about,
|
|
4634
|
+
# self.r_subreddit_about_edit,
|
|
4635
|
+
# self.r_subreddit_about_contributors,
|
|
4636
|
+
# self.r_subreddit_about_moderators,
|
|
4637
|
+
# self.r_subreddit_about_muted,
|
|
4638
|
+
# self.r_subreddit_about_rules,
|
|
4639
|
+
# self.r_subreddit_about_sticky,
|
|
4640
|
+
# self.r_subreddit_about_traffic,
|
|
4641
|
+
# self.r_subreddit_about_wikibanned,
|
|
4642
|
+
# self.r_subreddit_about_wikicontributors,
|
|
4643
|
+
# self.r_subreddit_api_submit_text,
|
|
4644
|
+
# self.subreddits_mine_where,
|
|
4645
|
+
# self.subreddits_search,
|
|
4646
|
+
# self.subreddits_where,
|
|
4647
|
+
# self.api_user_data_by_account_ids,
|
|
4648
|
+
# self.api_username_available,
|
|
4649
|
+
# self.api_v1_me_friends_username1,
|
|
4650
|
+
# self.api_v1_me_friends_username,
|
|
4651
|
+
# self.api_v1_user_username_trophies,
|
|
4652
|
+
# self.user_username_where,
|
|
4653
|
+
# self.users_search,
|
|
4654
|
+
# self.users_where,
|
|
4655
|
+
# self.r_subreddit_api_widgets,
|
|
4656
|
+
# self.r_subreddit_api_widget_order_section,
|
|
4657
|
+
# self.r_subreddit_api_widget_widget_id,
|
|
4658
|
+
# self.r_subreddit_wiki_discussions_page,
|
|
4659
|
+
# self.r_subreddit_wiki_page,
|
|
4660
|
+
# self.r_subreddit_wiki_pages,
|
|
4661
|
+
# self.r_subreddit_wiki_revisions,
|
|
4662
|
+
# self.r_subreddit_wiki_revisions_page,
|
|
4663
|
+
# self.r_subreddit_wiki_settings_page,
|
|
4664
|
+
]
|
|
@@ -54,10 +54,24 @@ class WhatsappApp(BaseApplication):
|
|
|
54
54
|
def __init__(self, integration: AgentrIntegration | None = None, **kwargs) -> None:
|
|
55
55
|
super().__init__(name="whatsapp", integration=integration, **kwargs)
|
|
56
56
|
self.base_url = WHATSAPP_API_BASE_URL
|
|
57
|
-
self.
|
|
57
|
+
self.integration = integration
|
|
58
|
+
self._api_key: str | None = None
|
|
58
59
|
|
|
59
60
|
def get_api_key(self) -> str:
|
|
60
|
-
|
|
61
|
+
"""Get the AgentR API key to use as for WhatsApp authentication."""
|
|
62
|
+
if not self.integration:
|
|
63
|
+
raise ValueError("No integration available to get API key from")
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
try:
|
|
67
|
+
headers = self.integration.client.client.headers
|
|
68
|
+
api_key = headers.get('X-API-KEY')
|
|
69
|
+
if api_key:
|
|
70
|
+
return api_key
|
|
71
|
+
else:
|
|
72
|
+
raise ValueError("X-API-KEY not found in AgentR client headers")
|
|
73
|
+
except AttributeError as e:
|
|
74
|
+
raise ValueError(f"Could not access AgentR client headers: {e}") from e
|
|
61
75
|
|
|
62
76
|
@property
|
|
63
77
|
def api_key(self) -> str:
|
{universal_mcp_applications-0.1.6.dist-info → universal_mcp_applications-0.1.7.dist-info}/METADATA
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: universal-mcp-applications
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.7
|
|
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
|
{universal_mcp_applications-0.1.6.dist-info → universal_mcp_applications-0.1.7.dist-info}/RECORD
RENAMED
|
@@ -91,7 +91,7 @@ universal_mcp/applications/ghost_content/__init__.py,sha256=FZpzgPwkJU54Y-7XfrR7
|
|
|
91
91
|
universal_mcp/applications/ghost_content/app.py,sha256=pZGrKNkWi1F9UTETKc76HL-Z_UgsOIw6k6remDJIwwM,24235
|
|
92
92
|
universal_mcp/applications/github/README.md,sha256=YDmFUHREGjOgKGUF4L8Dxodt93OrJKGMlGHO2JA5T7o,153607
|
|
93
93
|
universal_mcp/applications/github/__init__.py,sha256=3_T202KYSp3Wq9bV9spJBK1lf0NFPyGGoCsGSL_x8vk,27
|
|
94
|
-
universal_mcp/applications/github/app.py,sha256=
|
|
94
|
+
universal_mcp/applications/github/app.py,sha256=RHY5XjyOGpAIrnoDwJskAHd-0_XkXrAfo_7T7STcnJo,1960129
|
|
95
95
|
universal_mcp/applications/gong/README.md,sha256=mz9W81VYPwdwbQ2_Yz9TF5oP7lfgFRkn70xNHkZV534,6383
|
|
96
96
|
universal_mcp/applications/gong/__init__.py,sha256=Sev0qQ31JkJGnVwMdkV7DH6iAU8695dLxd1D2jMpcK8,25
|
|
97
97
|
universal_mcp/applications/gong/app.py,sha256=WRpa8tpgj9TiJwPzP5ZH7W4fiM8F59jlDSpn2McHsC4,100495
|
|
@@ -173,7 +173,7 @@ universal_mcp/applications/posthog/__init__.py,sha256=2j8vH09Xqz51BlfNehaEvY2A2L
|
|
|
173
173
|
universal_mcp/applications/posthog/app.py,sha256=-T0hOSxPT3qQEVG8IrRY0MVi0YI8yHHeKPgl5jRexGY,275182
|
|
174
174
|
universal_mcp/applications/reddit/README.md,sha256=3krLCogha_GekeqACyIx8G_mHmOmQbcyZJn8ZUHQtjE,8594
|
|
175
175
|
universal_mcp/applications/reddit/__init__.py,sha256=JHA_BMVnuQyoDMbQt5dRNxKPrAxyZZL6zzQyNbvyjHs,27
|
|
176
|
-
universal_mcp/applications/reddit/app.py,sha256=
|
|
176
|
+
universal_mcp/applications/reddit/app.py,sha256=G1V-kbr3XtDUnRapFmvs6KjbHBWlm7nXZL4UguGo1aA,156018
|
|
177
177
|
universal_mcp/applications/replicate/README.md,sha256=1N9UgpeU1G_Yt6pBIFuty1ii6yJe2hLbfDJUKFPrYk0,1288
|
|
178
178
|
universal_mcp/applications/replicate/__init__.py,sha256=W3thUM5OFDKregi9E4EjzrcLY4ya_ZLMQKXAF2fiYV4,30
|
|
179
179
|
universal_mcp/applications/replicate/app.py,sha256=UObTGrrBGvy-_4oH8xrF_EifASIMjZv9SXIdHun2LJI,20128
|
|
@@ -252,7 +252,7 @@ universal_mcp/applications/unipile/__init__.py,sha256=0UZVOiYo_dDXbvTmtHrZ_fgvrb
|
|
|
252
252
|
universal_mcp/applications/unipile/app.py,sha256=1Q98eWUVrZFXqqOZrMpC-lWlPshY5b1cqPGOzG8W6no,29256
|
|
253
253
|
universal_mcp/applications/whatsapp/README.md,sha256=eYXIHHpsNIhc2xBLyzStoATXnlvnOZHAxGsBoLC1vd0,1364
|
|
254
254
|
universal_mcp/applications/whatsapp/__init__.py,sha256=miHfSBpu5lx226T8dMbvOw_5H6MJCWOKVK_WbqMma-8,29
|
|
255
|
-
universal_mcp/applications/whatsapp/app.py,sha256=
|
|
255
|
+
universal_mcp/applications/whatsapp/app.py,sha256=3XCERNGoqLQQO8N6a7En9eVFO4V4T_wMawvv6COOdgg,20209
|
|
256
256
|
universal_mcp/applications/whatsapp/audio.py,sha256=zw6X2ADaE7xGZ4nIuSBCTRHlm7BV686MwsNEGJCDBG0,3696
|
|
257
257
|
universal_mcp/applications/whatsapp/whatsapp.py,sha256=3Gj4rQDUJU7FsYnZYqPeCR3loE7RUcjalyau6beVr8w,13233
|
|
258
258
|
universal_mcp/applications/whatsapp_business/README.md,sha256=2DgwhOr8ivLKMOCMZzctk9_8qdU-AoypN0xKo_2TztI,3989
|
|
@@ -267,7 +267,7 @@ universal_mcp/applications/youtube/app.py,sha256=hhKqnbXvMAyOW3LOqp-ODPdIuQorr1n
|
|
|
267
267
|
universal_mcp/applications/zenquotes/README.md,sha256=x1mZHjNKD4WOgsIhedcbbaR1nvbt794GSrKud1tSLD0,296
|
|
268
268
|
universal_mcp/applications/zenquotes/__init__.py,sha256=IkASLYaZiHJXlkGwEMk1HgIq5GwEZp5GhAIiJyjBd3g,30
|
|
269
269
|
universal_mcp/applications/zenquotes/app.py,sha256=6v8trNWjxbixdlEyaM-gJbfY8z9ZAmkIzSUks_fbsT4,1076
|
|
270
|
-
universal_mcp_applications-0.1.
|
|
271
|
-
universal_mcp_applications-0.1.
|
|
272
|
-
universal_mcp_applications-0.1.
|
|
273
|
-
universal_mcp_applications-0.1.
|
|
270
|
+
universal_mcp_applications-0.1.7.dist-info/METADATA,sha256=on1VtL6QMUgmV8Dd25oLZhcb68hf_1jq57OgguKrkGw,3918
|
|
271
|
+
universal_mcp_applications-0.1.7.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
272
|
+
universal_mcp_applications-0.1.7.dist-info/licenses/LICENSE,sha256=NweDZVPslBAZFzlgByF158b85GR0f5_tLQgq1NS48To,1063
|
|
273
|
+
universal_mcp_applications-0.1.7.dist-info/RECORD,,
|
{universal_mcp_applications-0.1.6.dist-info → universal_mcp_applications-0.1.7.dist-info}/WHEEL
RENAMED
|
File without changes
|
|
File without changes
|