universal-mcp-applications 0.1.17__py3-none-any.whl → 0.1.19__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.

Files changed (88) hide show
  1. universal_mcp/applications/ahrefs/README.md +3 -3
  2. universal_mcp/applications/airtable/README.md +3 -3
  3. universal_mcp/applications/asana/README.md +3 -3
  4. universal_mcp/applications/aws_s3/README.md +29 -0
  5. universal_mcp/applications/bill/README.md +249 -0
  6. universal_mcp/applications/calendly/README.md +45 -45
  7. universal_mcp/applications/canva/README.md +35 -35
  8. universal_mcp/applications/clickup/README.md +4 -4
  9. universal_mcp/applications/contentful/README.md +1 -2
  10. universal_mcp/applications/crustdata/README.md +3 -3
  11. universal_mcp/applications/domain_checker/README.md +2 -2
  12. universal_mcp/applications/e2b/README.md +4 -4
  13. universal_mcp/applications/elevenlabs/README.md +3 -77
  14. universal_mcp/applications/exa/README.md +7 -7
  15. universal_mcp/applications/falai/README.md +13 -12
  16. universal_mcp/applications/falai/app.py +6 -6
  17. universal_mcp/applications/figma/README.md +3 -3
  18. universal_mcp/applications/file_system/README.md +13 -0
  19. universal_mcp/applications/firecrawl/README.md +9 -9
  20. universal_mcp/applications/firecrawl/app.py +10 -10
  21. universal_mcp/applications/fireflies/README.md +14 -14
  22. universal_mcp/applications/fpl/README.md +12 -12
  23. universal_mcp/applications/fpl/app.py +5 -5
  24. universal_mcp/applications/github/README.md +10 -10
  25. universal_mcp/applications/github/app.py +9 -9
  26. universal_mcp/applications/google_calendar/README.md +10 -10
  27. universal_mcp/applications/google_calendar/app.py +10 -10
  28. universal_mcp/applications/google_docs/README.md +14 -14
  29. universal_mcp/applications/google_docs/app.py +12 -12
  30. universal_mcp/applications/google_drive/README.md +54 -57
  31. universal_mcp/applications/google_drive/app.py +38 -38
  32. universal_mcp/applications/google_gemini/README.md +3 -14
  33. universal_mcp/applications/google_gemini/app.py +13 -12
  34. universal_mcp/applications/google_mail/README.md +20 -20
  35. universal_mcp/applications/google_mail/app.py +19 -19
  36. universal_mcp/applications/google_searchconsole/README.md +10 -10
  37. universal_mcp/applications/google_searchconsole/app.py +8 -8
  38. universal_mcp/applications/google_sheet/README.md +25 -25
  39. universal_mcp/applications/google_sheet/app.py +20 -20
  40. universal_mcp/applications/http_tools/README.md +5 -5
  41. universal_mcp/applications/hubspot/__init__.py +1 -1
  42. universal_mcp/applications/hubspot/api_segments/__init__.py +0 -0
  43. universal_mcp/applications/hubspot/api_segments/api_segment_base.py +25 -0
  44. universal_mcp/applications/hubspot/api_segments/crm_api.py +7337 -0
  45. universal_mcp/applications/hubspot/api_segments/marketing_api.py +1467 -0
  46. universal_mcp/applications/hubspot/app.py +74 -146
  47. universal_mcp/applications/klaviyo/README.md +0 -36
  48. universal_mcp/applications/linkedin/README.md +4 -4
  49. universal_mcp/applications/linkedin/app.py +4 -4
  50. universal_mcp/applications/mailchimp/README.md +3 -3
  51. universal_mcp/applications/ms_teams/README.md +31 -31
  52. universal_mcp/applications/ms_teams/app.py +28 -28
  53. universal_mcp/applications/neon/README.md +3 -3
  54. universal_mcp/applications/openai/README.md +18 -17
  55. universal_mcp/applications/outlook/README.md +9 -9
  56. universal_mcp/applications/outlook/app.py +9 -9
  57. universal_mcp/applications/perplexity/README.md +4 -4
  58. universal_mcp/applications/posthog/README.md +128 -127
  59. universal_mcp/applications/reddit/README.md +21 -124
  60. universal_mcp/applications/reddit/app.py +90 -89
  61. universal_mcp/applications/replicate/README.md +10 -10
  62. universal_mcp/applications/resend/README.md +29 -29
  63. universal_mcp/applications/scraper/README.md +4 -4
  64. universal_mcp/applications/scraper/app.py +31 -31
  65. universal_mcp/applications/semrush/README.md +3 -0
  66. universal_mcp/applications/serpapi/README.md +3 -3
  67. universal_mcp/applications/sharepoint/README.md +17 -0
  68. universal_mcp/applications/sharepoint/app.py +7 -7
  69. universal_mcp/applications/shortcut/README.md +3 -3
  70. universal_mcp/applications/slack/README.md +23 -0
  71. universal_mcp/applications/spotify/README.md +3 -3
  72. universal_mcp/applications/supabase/README.md +3 -3
  73. universal_mcp/applications/tavily/README.md +4 -4
  74. universal_mcp/applications/twilio/README.md +15 -0
  75. universal_mcp/applications/twitter/README.md +92 -89
  76. universal_mcp/applications/twitter/app.py +11 -11
  77. universal_mcp/applications/unipile/README.md +17 -17
  78. universal_mcp/applications/unipile/app.py +14 -14
  79. universal_mcp/applications/whatsapp/README.md +12 -12
  80. universal_mcp/applications/whatsapp/app.py +13 -13
  81. universal_mcp/applications/whatsapp_business/README.md +23 -23
  82. universal_mcp/applications/youtube/README.md +46 -46
  83. universal_mcp/applications/youtube/app.py +7 -1
  84. universal_mcp/applications/zenquotes/README.md +1 -1
  85. {universal_mcp_applications-0.1.17.dist-info → universal_mcp_applications-0.1.19.dist-info}/METADATA +2 -89
  86. {universal_mcp_applications-0.1.17.dist-info → universal_mcp_applications-0.1.19.dist-info}/RECORD +88 -83
  87. {universal_mcp_applications-0.1.17.dist-info → universal_mcp_applications-0.1.19.dist-info}/WHEEL +0 -0
  88. {universal_mcp_applications-0.1.17.dist-info → universal_mcp_applications-0.1.19.dist-info}/licenses/LICENSE +0 -0
@@ -1,13 +1,16 @@
1
1
  import os
2
2
  from dotenv import load_dotenv
3
+
3
4
  load_dotenv()
4
5
 
5
6
  from typing import Any
6
7
 
7
8
  from universal_mcp.applications.application import APIApplication
8
- from universal_mcp.agentr.integration import AgentrIntegration
9
9
  from universal_mcp.applications.unipile import UnipileApp
10
10
  from typing import Any, Optional
11
+ from universal_mcp.integrations import Integration
12
+ from loguru import logger
13
+
11
14
 
12
15
  class ScraperApp(APIApplication):
13
16
  """
@@ -15,7 +18,7 @@ class ScraperApp(APIApplication):
15
18
  Provides a simplified interface for LinkedIn search operations.
16
19
  """
17
20
 
18
- def __init__(self, **kwargs: Any) -> None:
21
+ def __init__(self, integration: Integration, **kwargs: Any) -> None:
19
22
  """
20
23
  Initialize the ScraperApp.
21
24
 
@@ -24,17 +27,16 @@ class ScraperApp(APIApplication):
24
27
  It is expected that the integration provides the necessary credentials
25
28
  for LinkedIn API access.
26
29
  """
27
- super().__init__(name="scraper", **kwargs)
30
+ super().__init__(name="scraper", integration=integration, **kwargs)
28
31
  if self.integration:
29
32
  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.account_id = credentials.get("account_id")
33
34
  self._unipile_app = UnipileApp(integration=self.integration)
34
35
  else:
36
+ logger.warning(f"Integration not found")
35
37
  self.account_id = None
36
38
  self._unipile_app = None
37
-
39
+
38
40
  def linkedin_post_search(
39
41
  self,
40
42
  category: str = "posts",
@@ -48,7 +50,7 @@ class ScraperApp(APIApplication):
48
50
  ) -> dict[str, Any]:
49
51
  """
50
52
  Performs a general LinkedIn search for posts using keywords and filters like date and content type. It supports pagination and can utilize either the 'classic' or 'sales_navigator' API, searching broadly across the platform rather than fetching posts from a specific user's profile.
51
-
53
+
52
54
  Args:
53
55
  category: Type of search to perform (defaults to "posts").
54
56
  api: Which LinkedIn API to use - "classic" or "sales_navigator".
@@ -58,17 +60,17 @@ class ScraperApp(APIApplication):
58
60
  sort_by: How to sort the results, e.g., "relevance" or "date".
59
61
  date_posted: Filter posts by when they were posted.
60
62
  content_type: Filter by the type of content in the post. Example: "videos", "images", "live_videos", "collaborative_articles", "documents"
61
-
63
+
62
64
  Returns:
63
65
  A dictionary containing search results and pagination details.
64
-
66
+
65
67
  Raises:
66
68
  httpx.HTTPError: If the API request fails.
67
-
69
+
68
70
  Tags:
69
71
  linkedin, search, posts, api, scrapper, important
70
72
  """
71
-
73
+
72
74
  return self._unipile_app.search(
73
75
  account_id=self.account_id,
74
76
  category=category,
@@ -89,22 +91,22 @@ class ScraperApp(APIApplication):
89
91
  ) -> dict[str, Any]:
90
92
  """
91
93
  Fetches a paginated list of all LinkedIn posts from a specific user or company profile using their unique identifier. This function retrieves content directly from a profile, unlike `linkedin_post_search` which finds posts across LinkedIn based on keywords and other filters.
92
-
94
+
93
95
  Args:
94
96
  identifier: The entity's provider internal ID (LinkedIn ID).starts with ACo for users, while for companies it's a series of numbers.
95
97
  cursor: Pagination cursor for the next page of entries.
96
98
  limit: Number of items to return (1-100, though spec allows up to 250).
97
-
99
+
98
100
  Returns:
99
101
  A dictionary containing a list of post objects and pagination details.
100
-
102
+
101
103
  Raises:
102
104
  httpx.HTTPError: If the API request fails.
103
-
105
+
104
106
  Tags:
105
107
  linkedin, post, list, user_posts, company_posts, content, api, important
106
108
  """
107
-
109
+
108
110
  return self._unipile_app.list_profile_posts(
109
111
  identifier=identifier,
110
112
  account_id=self.account_id,
@@ -118,27 +120,26 @@ class ScraperApp(APIApplication):
118
120
  ) -> dict[str, Any]:
119
121
  """
120
122
  Retrieves a specific LinkedIn user's profile by their unique identifier, which can be an internal provider ID or a public username. This function simplifies data access by delegating the actual profile retrieval request to the integrated Unipile application, distinct from functions that list posts or comments.
121
-
123
+
122
124
  Args:
123
125
  identifier: Can be the provider's internal id OR the provider's public id of the requested user.
124
126
  For example, for https://www.linkedin.com/in/manojbajaj95/, the identifier is "manojbajaj95".
125
-
127
+
126
128
  Returns:
127
129
  A dictionary containing the user's profile details.
128
-
130
+
129
131
  Raises:
130
132
  httpx.HTTPError: If the API request fails.
131
-
133
+
132
134
  Tags:
133
135
  linkedin, user, profile, retrieve, get, api, important
134
136
  """
135
-
137
+
136
138
  return self._unipile_app.retrieve_user_profile(
137
139
  identifier=identifier,
138
140
  account_id=self.account_id,
139
141
  )
140
142
 
141
-
142
143
  def linkedin_list_post_comments(
143
144
  self,
144
145
  post_id: str,
@@ -148,23 +149,23 @@ class ScraperApp(APIApplication):
148
149
  ) -> dict[str, Any]:
149
150
  """
150
151
  Fetches comments for a specified LinkedIn post. If a `comment_id` is provided, it retrieves replies to that comment instead of top-level comments. This function supports pagination and specifically targets comments, unlike others in the class that search for or list entire posts.
151
-
152
+
152
153
  Args:
153
154
  post_id: The social ID of the post. Example rn:li:activity:7342082869034393600
154
155
  comment_id: If provided, retrieves replies to this comment ID instead of top-level comments.
155
156
  cursor: Pagination cursor.
156
157
  limit: Number of comments to return.
157
-
158
+
158
159
  Returns:
159
160
  A dictionary containing a list of comment objects and pagination details.
160
-
161
+
161
162
  Raises:
162
163
  httpx.HTTPError: If the API request fails.
163
-
164
+
164
165
  Tags:
165
166
  linkedin, post, comment, list, content, api, important
166
167
  """
167
-
168
+
168
169
  return self._unipile_app.list_post_comments(
169
170
  post_id=post_id,
170
171
  account_id=self.account_id,
@@ -173,11 +174,10 @@ class ScraperApp(APIApplication):
173
174
  limit=limit,
174
175
  )
175
176
 
176
-
177
177
  def list_tools(self):
178
178
  """
179
179
  Returns a list of available tools/functions in this application.
180
-
180
+
181
181
  Returns:
182
182
  A list of functions that can be used as tools.
183
183
  """
@@ -186,4 +186,4 @@ class ScraperApp(APIApplication):
186
186
  self.linkedin_list_profile_posts,
187
187
  self.linkedin_retrieve_profile,
188
188
  self.linkedin_list_post_comments,
189
- ]
189
+ ]
@@ -42,3 +42,6 @@ This is automatically generated from OpenAPI schema for the SemrushApp API.
42
42
  | `referring_domains` | Get domains pointing to the queried domain, root domain, or URL. |
43
43
  | `referring_domains_by_country` | Get referring domain distribution by country based on IP addresses. |
44
44
  | `related_keywords` | Get extended list of related keywords, synonyms, and variations relevant to a queried term. |
45
+ | `tlds_distribution` | Get referring domain distribution by top-level domain (e.g., .com, .org, .net). |
46
+ | `url_organic_search_keywords` | Get keywords that bring users to a URL via Google's top 100 organic search results. |
47
+ | `url_paid_search_keywords` | Get keywords that bring users to a URL via Google's paid search results. |
@@ -9,6 +9,6 @@ This is automatically generated from OpenAPI schema for the SerpapiApp API.
9
9
 
10
10
  | Tool | Description |
11
11
  |------|-------------|
12
- | `search` | Performs a search using the SerpApi service and returns formatted search results. |
13
- | `google_maps_search` | Performs a Google Maps search using the SerpApi service and returns formatted search results. |
14
- | `get_google_maps_reviews` | Retrieves Google Maps reviews for a specific place using the SerpApi service. |
12
+ | `web_search` | Performs a general web search via SerpApi, defaulting to the 'google_light' engine. It accepts custom parameters, retrieves organic results, and formats them into a string with titles, links, and snippets. It also handles API authentication and raises `NotAuthorizedError` for credential-related issues. |
13
+ | `google_maps_search` | Executes a Google Maps search via SerpApi using a query, coordinates, or place ID. It enhances the results by adding a `google_maps_url` to each location, distinguishing it from `get_google_maps_reviews` which retrieves reviews for a known place. |
14
+ | `get_google_maps_reviews` | Fetches Google Maps reviews for a specific location via SerpApi using its unique `data_id`. This function uses the `google_maps_reviews` engine, unlike `google_maps_search` which finds locations. Results can be returned in a specified language, defaulting to English. |
@@ -0,0 +1,17 @@
1
+ # SharepointApp MCP Server
2
+
3
+ An MCP Server for the SharepointApp API.
4
+
5
+ ## 🛠️ Tool List
6
+
7
+ This is automatically generated from OpenAPI schema for the SharepointApp API.
8
+
9
+
10
+ | Tool | Description |
11
+ |------|-------------|
12
+ | `list_folders` | Retrieves a list of immediate subfolder names within a specified SharePoint directory. If no path is provided, it defaults to the root drive. This function is distinct from `list_files`, as it exclusively lists directories, not files. |
13
+ | `create_folder_and_list` | Creates a new folder with a given name inside a specified parent directory (or the root). It then returns an updated list of all folder names within that same directory, effectively confirming that the creation operation was successful. |
14
+ | `list_files` | Retrieves metadata for all files in a specified folder. For each file, it returns key details like name, URL, size, and timestamps. This function exclusively lists file properties, distinguishing it from `list_folders` (which lists directories) and `get_document_content` (which retrieves file content). |
15
+ | `upload_text_file` | Uploads string content to create a new file in a specified SharePoint folder. To confirm the operation, it returns an updated list of all files and their metadata from that directory, including the newly created file. |
16
+ | `get_document_content` | Retrieves a file's content from a specified SharePoint path. It returns a dictionary containing the file's name and size, decoding text files as a string and Base64-encoding binary files. Unlike `list_files`, which only fetches metadata, this function provides the actual file content. |
17
+ | `delete_document` | Permanently deletes a specified file from a SharePoint drive using its full path. This is the sole destructive file operation, contrasting with functions that read or create files. It returns `True` on successful deletion and raises an exception on failure, such as if the file is not found. |
@@ -36,7 +36,7 @@ class SharepointApp(BaseApplication):
36
36
  @property
37
37
  def client(self):
38
38
  """
39
- A lazy-loaded property that gets or creates an authenticated GraphClient instance. On its first call, it uses integration credentials to initialize the client, fetches the user's profile and root site ID, and caches the instance for subsequent use. This ensures efficient connection management.
39
+ A lazy-loaded property that gets or creates an authenticated GraphClient instance. On first access, it uses integration credentials to initialize the client, fetches initial user and site data, and caches the instance for subsequent use, ensuring efficient connection management for all SharePoint operations.
40
40
 
41
41
  Returns:
42
42
  GraphClient: The authenticated GraphClient instance.
@@ -74,7 +74,7 @@ class SharepointApp(BaseApplication):
74
74
 
75
75
  def list_folders(self, folder_path: str | None = None) -> list[dict[str, Any]]:
76
76
  """
77
- Retrieves the names of all immediate subfolders within a specified directory. If a path is not provided, it defaults to listing folders in the root of the user's drive. This function is distinct from `list_documents`, which lists files.
77
+ Retrieves a list of immediate subfolder names within a specified SharePoint directory. If no path is provided, it defaults to the root drive. This function is distinct from `list_files`, as it exclusively lists directories, not files.
78
78
 
79
79
  Args:
80
80
  folder_path (Optional[str], optional): The path to the parent folder. If None, lists folders in the root.
@@ -97,7 +97,7 @@ class SharepointApp(BaseApplication):
97
97
  self, folder_name: str, folder_path: str | None = None
98
98
  ) -> dict[str, Any]:
99
99
  """
100
- Creates a new folder with a given name inside a specified parent directory on SharePoint. If no path is provided, the folder is created in the root. It then returns an updated list of all folder names within that parent directory.
100
+ Creates a new folder with a given name inside a specified parent directory (or the root). It then returns an updated list of all folder names within that same directory, effectively confirming that the creation operation was successful.
101
101
 
102
102
  Args:
103
103
  folder_name (str): The name of the folder to create.
@@ -118,7 +118,7 @@ class SharepointApp(BaseApplication):
118
118
 
119
119
  def list_files(self, folder_path: str) -> list[dict[str, Any]]:
120
120
  """
121
- Retrieves files from a specified folder path. For each file, it returns a dictionary containing key metadata like its name, URL, size, creation date, and last modified date. This function specifically lists files, distinct from `list_folders` which only lists directories.
121
+ Retrieves metadata for all files in a specified folder. For each file, it returns key details like name, URL, size, and timestamps. This function exclusively lists file properties, distinguishing it from `list_folders` (which lists directories) and `get_document_content` (which retrieves file content).
122
122
 
123
123
  Args:
124
124
  folder_path (str): The path to the folder whose documents are to be listed.
@@ -147,7 +147,7 @@ class SharepointApp(BaseApplication):
147
147
  self, file_path: str, file_name: str, content: str
148
148
  ) -> dict[str, Any]:
149
149
  """
150
- Uploads string content to a new file within a specified SharePoint folder path. After creation, it returns an updated list of all documents and their metadata residing in that folder, effectively confirming the file was added successfully.
150
+ Uploads string content to create a new file in a specified SharePoint folder. To confirm the operation, it returns an updated list of all files and their metadata from that directory, including the newly created file.
151
151
 
152
152
  Args:
153
153
  file_path (str): The path to the folder where the document will be created.
@@ -167,7 +167,7 @@ class SharepointApp(BaseApplication):
167
167
 
168
168
  def get_document_content(self, file_path: str) -> dict[str, Any]:
169
169
  """
170
- Retrieves a document's content from SharePoint. It returns a dictionary with the content, name, and size. Content is decoded as a string for text files or Base64-encoded for binary files. This is distinct from `list_documents` which only returns metadata without content.
170
+ Retrieves a file's content from a specified SharePoint path. It returns a dictionary containing the file's name and size, decoding text files as a string and Base64-encoding binary files. Unlike `list_files`, which only fetches metadata, this function provides the actual file content.
171
171
 
172
172
  Args:
173
173
  file_path (str): The path to the document.
@@ -200,7 +200,7 @@ class SharepointApp(BaseApplication):
200
200
 
201
201
  def delete_document(self, file_path: str):
202
202
  """
203
- Permanently deletes a specified file from SharePoint/OneDrive. The function takes the file path as an argument and returns True upon successful deletion. An exception is raised if the file is not found or the deletion fails.
203
+ Permanently deletes a specified file from a SharePoint drive using its full path. This is the sole destructive file operation, contrasting with functions that read or create files. It returns `True` on successful deletion and raises an exception on failure, such as if the file is not found.
204
204
 
205
205
  Args:
206
206
  file_path (str): The path to the file to delete.
@@ -1,10 +1,10 @@
1
- # Shortcut MCP Server
1
+ # ShortcutApp MCP Server
2
2
 
3
- An MCP Server for the Shortcut API.
3
+ An MCP Server for the ShortcutApp API.
4
4
 
5
5
  ## 🛠️ Tool List
6
6
 
7
- This is automatically generated from OpenAPI schema for the Shortcut API.
7
+ This is automatically generated from OpenAPI schema for the ShortcutApp API.
8
8
 
9
9
 
10
10
  | Tool | Description |
@@ -0,0 +1,23 @@
1
+ # SlackApp MCP Server
2
+
3
+ An MCP Server for the SlackApp API.
4
+
5
+ ## 🛠️ Tool List
6
+
7
+ This is automatically generated from OpenAPI schema for the SlackApp API.
8
+
9
+
10
+ | Tool | Description |
11
+ |------|-------------|
12
+ | `chat_delete` | Deletes a specific message from a Slack channel. It identifies the message using its channel ID and timestamp (`ts`). This function is distinct from `chat_update` which modifies a message, and `chat_post_message` which sends a new one. |
13
+ | `chat_post_message` | Posts a new message to a specified Slack channel. It supports rich content formats like text, attachments, and blocks, along with options for threading and authorship. This function creates new messages, unlike `chat_update` which modifies existing ones or `chat_delete` which removes them. |
14
+ | `chat_update` | Updates a specific, existing message in a Slack channel, identified by its timestamp. It modifies content such as text, blocks, or attachments by calling the `chat.update` API endpoint, distinguishing it from functions that create (`chat_post_message`) or delete (`chat_delete`) messages. |
15
+ | `conversations_history` | Fetches the message history for a specific Slack conversation or channel. Supports filtering messages by timestamp and pagination using a cursor. This method retrieves messages *within* a conversation, unlike `conversations_list` which retrieves a list of available conversations. |
16
+ | `conversations_list` | Fetches a paginated list of channel-like conversations in a workspace. Allows filtering by type and excluding archived channels. This function lists available conversations, unlike `conversations_history` which retrieves the message history from within a specific conversation. |
17
+ | `reactions_add` | Adds a specific emoji reaction to a message in a Slack channel, identifying the message by its channel ID and timestamp. This method creates a new reaction, unlike `reactions_get` or `reactions_list` which retrieve existing reaction data for items or users. |
18
+ | `get_reactions_for_item` | Retrieves all reactions for a single item, such as a message, file, or file comment. This function targets reactions *on* a specific item, unlike `reactions_list` which gets reactions created *by* a user. |
19
+ | `get_user_reactions` | Retrieves a paginated list of items (e.g., messages, files) that a specific user has reacted to. Unlike `reactions_get`, which fetches all reactions for a single item, this function lists all items a given user has reacted to across Slack. |
20
+ | `search_messages` | Searches a Slack workspace for messages matching a specific query. It supports advanced control over results through pagination, sorting by relevance or timestamp, and an option to highlight search terms within the returned message content. |
21
+ | `team_info` | Fetches details for a Slack team, such as name and domain, by calling the `team.info` API endpoint. This function requires an authentication token and can optionally target a specific team by its ID, distinguishing it from user or channel-specific functions. |
22
+ | `get_user_info` | Fetches detailed profile information for a single Slack user, identified by their user ID. Unlike `users_list`, which retrieves all workspace members, this function targets an individual and can optionally include their locale information. It directly calls the `users.info` Slack API endpoint. |
23
+ | `users_list` | Fetches a paginated list of all users in a Slack workspace, including deactivated members. Unlike `users_info` which retrieves a single user's details, this function returns a collection and supports limiting results or including locale data through optional parameters. |
@@ -1,10 +1,10 @@
1
- # Spotify MCP Server
1
+ # SpotifyApp MCP Server
2
2
 
3
- An MCP Server for the Spotify API.
3
+ An MCP Server for the SpotifyApp API.
4
4
 
5
5
  ## 🛠️ Tool List
6
6
 
7
- This is automatically generated from OpenAPI schema for the Spotify API.
7
+ This is automatically generated from OpenAPI schema for the SpotifyApp API.
8
8
 
9
9
 
10
10
  | Tool | Description |
@@ -1,10 +1,10 @@
1
- # Supabase MCP Server
1
+ # SupabaseApp MCP Server
2
2
 
3
- An MCP Server for the Supabase API.
3
+ An MCP Server for the SupabaseApp API.
4
4
 
5
5
  ## 🛠️ Tool List
6
6
 
7
- This is automatically generated from OpenAPI schema for the Supabase API.
7
+ This is automatically generated from OpenAPI schema for the SupabaseApp API.
8
8
 
9
9
 
10
10
  | Tool | Description |
@@ -1,12 +1,12 @@
1
- # Tavily MCP Server
1
+ # TavilyApp MCP Server
2
2
 
3
- An MCP Server for the Tavily API.
3
+ An MCP Server for the TavilyApp API.
4
4
 
5
5
  ## 🛠️ Tool List
6
6
 
7
- This is automatically generated from OpenAPI schema for the Tavily API.
7
+ This is automatically generated from OpenAPI schema for the TavilyApp API.
8
8
 
9
9
 
10
10
  | Tool | Description |
11
11
  |------|-------------|
12
- | `search` | Performs a web search using Tavily's search API and returns either a direct answer or a summary of top results. |
12
+ | `search_and_summarize` | Queries the Tavily API to perform a web search. It returns a direct AI-generated answer if available; otherwise, it provides a formatted summary of the top three search results, including their titles and snippets. |
@@ -0,0 +1,15 @@
1
+ # TwilioApp MCP Server
2
+
3
+ An MCP Server for the TwilioApp API.
4
+
5
+ ## 🛠️ Tool List
6
+
7
+ This is automatically generated from OpenAPI schema for the TwilioApp API.
8
+
9
+
10
+ | Tool | Description |
11
+ |------|-------------|
12
+ | `create_message` | Sends a new SMS or MMS message using Twilio. |
13
+ | `fetch_message` | Fetches the details of a specific message by its SID. |
14
+ | `list_messages` | Lists messages from your Twilio account, optionally filtered by date. |
15
+ | `delete_message` | Deletes a specific message from your Twilio account. |