universal-mcp-applications 0.1.21__py3-none-any.whl → 0.1.22__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/BEST_PRACTICES.md +166 -0
- universal_mcp/applications/airtable/app.py +0 -1
- universal_mcp/applications/apollo/app.py +0 -1
- universal_mcp/applications/aws_s3/app.py +40 -39
- universal_mcp/applications/browser_use/README.md +1 -0
- universal_mcp/applications/browser_use/__init__.py +0 -0
- universal_mcp/applications/browser_use/app.py +76 -0
- universal_mcp/applications/calendly/app.py +125 -125
- universal_mcp/applications/canva/app.py +95 -99
- universal_mcp/applications/confluence/app.py +0 -1
- universal_mcp/applications/contentful/app.py +4 -5
- universal_mcp/applications/domain_checker/app.py +11 -15
- universal_mcp/applications/e2b/app.py +4 -4
- universal_mcp/applications/elevenlabs/app.py +18 -15
- universal_mcp/applications/exa/app.py +17 -17
- universal_mcp/applications/falai/app.py +28 -29
- universal_mcp/applications/file_system/app.py +9 -9
- universal_mcp/applications/firecrawl/app.py +36 -36
- universal_mcp/applications/fireflies/app.py +55 -56
- universal_mcp/applications/fpl/app.py +49 -50
- universal_mcp/applications/ghost_content/app.py +0 -1
- universal_mcp/applications/github/app.py +41 -43
- universal_mcp/applications/google_calendar/app.py +40 -39
- universal_mcp/applications/google_docs/app.py +56 -56
- universal_mcp/applications/google_drive/app.py +212 -215
- universal_mcp/applications/google_gemini/app.py +1 -5
- universal_mcp/applications/google_mail/app.py +91 -90
- universal_mcp/applications/google_searchconsole/app.py +29 -29
- universal_mcp/applications/google_sheet/app.py +115 -115
- universal_mcp/applications/hashnode/README.md +6 -3
- universal_mcp/applications/hashnode/app.py +174 -25
- universal_mcp/applications/http_tools/app.py +10 -11
- universal_mcp/applications/hubspot/__init__.py +1 -1
- universal_mcp/applications/hubspot/api_segments/api_segment_base.py +36 -7
- universal_mcp/applications/hubspot/api_segments/crm_api.py +368 -368
- universal_mcp/applications/hubspot/api_segments/marketing_api.py +115 -115
- universal_mcp/applications/hubspot/app.py +131 -72
- universal_mcp/applications/jira/app.py +0 -1
- universal_mcp/applications/linkedin/app.py +20 -20
- universal_mcp/applications/markitdown/app.py +10 -5
- universal_mcp/applications/ms_teams/app.py +123 -123
- universal_mcp/applications/openai/app.py +40 -39
- universal_mcp/applications/outlook/app.py +32 -32
- universal_mcp/applications/perplexity/app.py +4 -4
- universal_mcp/applications/reddit/app.py +69 -70
- universal_mcp/applications/resend/app.py +116 -117
- universal_mcp/applications/rocketlane/app.py +0 -1
- universal_mcp/applications/scraper/__init__.py +1 -1
- universal_mcp/applications/scraper/app.py +80 -81
- universal_mcp/applications/serpapi/app.py +14 -14
- universal_mcp/applications/sharepoint/app.py +19 -20
- universal_mcp/applications/shopify/app.py +0 -1
- universal_mcp/applications/slack/app.py +48 -48
- universal_mcp/applications/tavily/app.py +4 -4
- universal_mcp/applications/twitter/api_segments/compliance_api.py +13 -15
- universal_mcp/applications/twitter/api_segments/dm_conversations_api.py +20 -20
- universal_mcp/applications/twitter/api_segments/dm_events_api.py +12 -12
- universal_mcp/applications/twitter/api_segments/likes_api.py +12 -12
- universal_mcp/applications/twitter/api_segments/lists_api.py +37 -39
- universal_mcp/applications/twitter/api_segments/spaces_api.py +24 -24
- universal_mcp/applications/twitter/api_segments/trends_api.py +4 -4
- universal_mcp/applications/twitter/api_segments/tweets_api.py +105 -105
- universal_mcp/applications/twitter/api_segments/usage_api.py +4 -4
- universal_mcp/applications/twitter/api_segments/users_api.py +136 -136
- universal_mcp/applications/twitter/app.py +6 -2
- universal_mcp/applications/unipile/app.py +90 -97
- universal_mcp/applications/whatsapp/app.py +53 -54
- universal_mcp/applications/whatsapp/audio.py +39 -35
- universal_mcp/applications/whatsapp/whatsapp.py +176 -154
- universal_mcp/applications/whatsapp_business/app.py +92 -92
- universal_mcp/applications/yahoo_finance/app.py +105 -63
- universal_mcp/applications/youtube/app.py +193 -196
- universal_mcp/applications/zenquotes/__init__.py +2 -0
- universal_mcp/applications/zenquotes/app.py +3 -3
- {universal_mcp_applications-0.1.21.dist-info → universal_mcp_applications-0.1.22.dist-info}/METADATA +2 -1
- {universal_mcp_applications-0.1.21.dist-info → universal_mcp_applications-0.1.22.dist-info}/RECORD +78 -74
- {universal_mcp_applications-0.1.21.dist-info → universal_mcp_applications-0.1.22.dist-info}/WHEEL +0 -0
- {universal_mcp_applications-0.1.21.dist-info → universal_mcp_applications-0.1.22.dist-info}/licenses/LICENSE +0 -0
|
@@ -167,18 +167,18 @@ class FirecrawlApp(APIApplication):
|
|
|
167
167
|
def scrape_url(self, url: str) -> Any:
|
|
168
168
|
"""
|
|
169
169
|
Synchronously scrapes a single URL, immediately returning its content. This provides a direct method for single-page scraping, contrasting with asynchronous, job-based functions like `start_crawl` (for entire sites) and `start_batch_scrape` (for multiple URLs).
|
|
170
|
-
|
|
170
|
+
|
|
171
171
|
Args:
|
|
172
172
|
url: The URL of the web page to scrape.
|
|
173
|
-
|
|
173
|
+
|
|
174
174
|
Returns:
|
|
175
175
|
A dictionary containing the scraped data on success,
|
|
176
176
|
or a string containing an error message on failure.
|
|
177
|
-
|
|
177
|
+
|
|
178
178
|
Raises:
|
|
179
179
|
NotAuthorizedError: If API key is missing or invalid.
|
|
180
180
|
ToolError: If the Firecrawl SDK is not installed.
|
|
181
|
-
|
|
181
|
+
|
|
182
182
|
Tags:
|
|
183
183
|
scrape, important
|
|
184
184
|
"""
|
|
@@ -199,18 +199,18 @@ class FirecrawlApp(APIApplication):
|
|
|
199
199
|
def search(self, query: str) -> dict[str, Any] | str:
|
|
200
200
|
"""
|
|
201
201
|
Executes a synchronous web search using the Firecrawl service for a given query. Unlike scrape_url which fetches a single page, this function discovers web content. It returns a dictionary of results on success or an error string on failure, raising exceptions for authorization or SDK issues.
|
|
202
|
-
|
|
202
|
+
|
|
203
203
|
Args:
|
|
204
204
|
query: The search query string.
|
|
205
|
-
|
|
205
|
+
|
|
206
206
|
Returns:
|
|
207
207
|
A dictionary containing the search results on success,
|
|
208
208
|
or a string containing an error message on failure.
|
|
209
|
-
|
|
209
|
+
|
|
210
210
|
Raises:
|
|
211
211
|
NotAuthorizedError: If API key is missing or invalid.
|
|
212
212
|
ToolError: If the Firecrawl SDK is not installed.
|
|
213
|
-
|
|
213
|
+
|
|
214
214
|
Tags:
|
|
215
215
|
search, important
|
|
216
216
|
"""
|
|
@@ -233,18 +233,18 @@ class FirecrawlApp(APIApplication):
|
|
|
233
233
|
) -> dict[str, Any] | str:
|
|
234
234
|
"""
|
|
235
235
|
Starts an asynchronous Firecrawl job to crawl a website from a given URL, returning a job ID. Unlike the synchronous `scrape_url` for single pages, this function initiates a comprehensive, link-following crawl. Progress can be monitored using the `check_crawl_status` function with the returned ID.
|
|
236
|
-
|
|
236
|
+
|
|
237
237
|
Args:
|
|
238
238
|
url: The starting URL for the crawl.
|
|
239
|
-
|
|
239
|
+
|
|
240
240
|
Returns:
|
|
241
241
|
A dictionary containing the job initiation response on success,
|
|
242
242
|
or a string containing an error message on failure.
|
|
243
|
-
|
|
243
|
+
|
|
244
244
|
Raises:
|
|
245
245
|
NotAuthorizedError: If API key is missing or invalid.
|
|
246
246
|
ToolError: If the Firecrawl SDK is not installed.
|
|
247
|
-
|
|
247
|
+
|
|
248
248
|
Tags:
|
|
249
249
|
crawl, async_job, start
|
|
250
250
|
"""
|
|
@@ -269,18 +269,18 @@ class FirecrawlApp(APIApplication):
|
|
|
269
269
|
def check_crawl_status(self, job_id: str) -> dict[str, Any] | str:
|
|
270
270
|
"""
|
|
271
271
|
Retrieves the status of an asynchronous Firecrawl job using its unique ID. As the counterpart to `start_crawl`, this function exclusively monitors website crawl progress, distinct from status checkers for batch scraping or data extraction jobs. Returns job details on success or an error message on failure.
|
|
272
|
-
|
|
272
|
+
|
|
273
273
|
Args:
|
|
274
274
|
job_id: The ID of the crawl job to check.
|
|
275
|
-
|
|
275
|
+
|
|
276
276
|
Returns:
|
|
277
277
|
A dictionary containing the job status details on success,
|
|
278
278
|
or a string containing an error message on failure.
|
|
279
|
-
|
|
279
|
+
|
|
280
280
|
Raises:
|
|
281
281
|
NotAuthorizedError: If API key is missing or invalid.
|
|
282
282
|
ToolError: If the Firecrawl SDK is not installed.
|
|
283
|
-
|
|
283
|
+
|
|
284
284
|
Tags:
|
|
285
285
|
crawl, async_job, status
|
|
286
286
|
"""
|
|
@@ -304,19 +304,19 @@ class FirecrawlApp(APIApplication):
|
|
|
304
304
|
def cancel_crawl(self, job_id: str) -> dict[str, Any] | str:
|
|
305
305
|
"""
|
|
306
306
|
Cancels a running asynchronous Firecrawl crawl job using its unique ID. As a lifecycle management tool for jobs initiated by `start_crawl`, it returns a confirmation status upon success or an error message on failure, distinguishing it from controls for other job types.
|
|
307
|
-
|
|
307
|
+
|
|
308
308
|
Args:
|
|
309
309
|
job_id: The ID of the crawl job to cancel.
|
|
310
|
-
|
|
310
|
+
|
|
311
311
|
Returns:
|
|
312
312
|
A dictionary confirming the cancellation status on success,
|
|
313
313
|
or a string containing an error message on failure.
|
|
314
314
|
(Note: This functionality might depend on Firecrawl API capabilities)
|
|
315
|
-
|
|
315
|
+
|
|
316
316
|
Raises:
|
|
317
317
|
NotAuthorizedError: If API key is missing or invalid.
|
|
318
318
|
ToolError: If the Firecrawl SDK is not installed or operation not supported.
|
|
319
|
-
|
|
319
|
+
|
|
320
320
|
Tags:
|
|
321
321
|
crawl, async_job, management, cancel
|
|
322
322
|
"""
|
|
@@ -343,18 +343,18 @@ class FirecrawlApp(APIApplication):
|
|
|
343
343
|
) -> dict[str, Any] | str:
|
|
344
344
|
"""
|
|
345
345
|
Initiates an asynchronous Firecrawl job to scrape a list of URLs. It returns a job ID for tracking with `check_batch_scrape_status`. Unlike the synchronous `scrape_url` which processes a single URL, this function handles bulk scraping and doesn't wait for completion.
|
|
346
|
-
|
|
346
|
+
|
|
347
347
|
Args:
|
|
348
348
|
urls: A list of URLs to scrape.
|
|
349
|
-
|
|
349
|
+
|
|
350
350
|
Returns:
|
|
351
351
|
A dictionary containing the job initiation response (e.g., a batch job ID or list of results/job IDs) on success,
|
|
352
352
|
or a string containing an error message on failure.
|
|
353
|
-
|
|
353
|
+
|
|
354
354
|
Raises:
|
|
355
355
|
NotAuthorizedError: If API key is missing or invalid.
|
|
356
356
|
ToolError: If the Firecrawl SDK is not installed.
|
|
357
|
-
|
|
357
|
+
|
|
358
358
|
Tags:
|
|
359
359
|
scrape, batch, async_job, start
|
|
360
360
|
"""
|
|
@@ -378,18 +378,18 @@ class FirecrawlApp(APIApplication):
|
|
|
378
378
|
def check_batch_scrape_status(self, job_id: str) -> dict[str, Any] | str:
|
|
379
379
|
"""
|
|
380
380
|
Checks the status of an asynchronous batch scrape job using its job ID. As the counterpart to `start_batch_scrape`, it specifically monitors multi-URL scraping tasks, distinct from checkers for site-wide crawls (`check_crawl_status`) or AI-driven extractions (`check_extract_status`). Returns detailed progress or an error message.
|
|
381
|
-
|
|
381
|
+
|
|
382
382
|
Args:
|
|
383
383
|
job_id: The ID of the batch scrape job to check.
|
|
384
|
-
|
|
384
|
+
|
|
385
385
|
Returns:
|
|
386
386
|
A dictionary containing the job status details on success,
|
|
387
387
|
or a string containing an error message on failure.
|
|
388
|
-
|
|
388
|
+
|
|
389
389
|
Raises:
|
|
390
390
|
NotAuthorizedError: If API key is missing or invalid.
|
|
391
391
|
ToolError: If the Firecrawl SDK is not installed or operation not supported.
|
|
392
|
-
|
|
392
|
+
|
|
393
393
|
Tags:
|
|
394
394
|
scrape, batch, async_job, status
|
|
395
395
|
"""
|
|
@@ -422,21 +422,21 @@ class FirecrawlApp(APIApplication):
|
|
|
422
422
|
) -> dict[str, Any]:
|
|
423
423
|
"""
|
|
424
424
|
Performs synchronous, AI-driven data extraction from URLs using an optional prompt or schema. Unlike asynchronous jobs like `start_crawl`, it returns structured data directly. This function raises an exception on failure, contrasting with other methods in the class that return an error string upon failure.
|
|
425
|
-
|
|
425
|
+
|
|
426
426
|
Args:
|
|
427
427
|
urls: A list of URLs to extract data from.
|
|
428
428
|
prompt: Optional custom extraction prompt describing what data to extract.
|
|
429
429
|
schema: Optional JSON schema or Pydantic model for the desired output structure.
|
|
430
430
|
system_prompt: Optional system context for the extraction.
|
|
431
431
|
allow_external_links: Optional boolean to allow following external links.
|
|
432
|
-
|
|
432
|
+
|
|
433
433
|
Returns:
|
|
434
434
|
A dictionary containing the extracted data on success.
|
|
435
|
-
|
|
435
|
+
|
|
436
436
|
Raises:
|
|
437
437
|
NotAuthorizedError: If API key is missing or invalid.
|
|
438
438
|
ToolError: If the Firecrawl SDK is not installed or extraction fails.
|
|
439
|
-
|
|
439
|
+
|
|
440
440
|
Tags:
|
|
441
441
|
extract, ai, sync, quick, important
|
|
442
442
|
"""
|
|
@@ -477,18 +477,18 @@ class FirecrawlApp(APIApplication):
|
|
|
477
477
|
def check_extract_status(self, job_id: str) -> dict[str, Any] | str:
|
|
478
478
|
"""
|
|
479
479
|
Checks the status of an asynchronous, AI-powered Firecrawl data extraction job using its ID. Unlike `check_crawl_status` or `check_batch_scrape_status`, this function specifically monitors structured data extraction tasks, returning the job's progress or an error message on failure.
|
|
480
|
-
|
|
480
|
+
|
|
481
481
|
Args:
|
|
482
482
|
job_id: The ID of the extraction job to check.
|
|
483
|
-
|
|
483
|
+
|
|
484
484
|
Returns:
|
|
485
485
|
A dictionary containing the job status details on success,
|
|
486
486
|
or a string containing an error message on failure.
|
|
487
|
-
|
|
487
|
+
|
|
488
488
|
Raises:
|
|
489
489
|
NotAuthorizedError: If API key is missing or invalid.
|
|
490
490
|
ToolError: If the Firecrawl SDK is not installed or operation not supported.
|
|
491
|
-
|
|
491
|
+
|
|
492
492
|
Tags:
|
|
493
493
|
extract, ai, async_job, status
|
|
494
494
|
"""
|
|
@@ -2,7 +2,6 @@ from collections.abc import Callable
|
|
|
2
2
|
from typing import Any
|
|
3
3
|
|
|
4
4
|
from gql import gql
|
|
5
|
-
|
|
6
5
|
from universal_mcp.applications.application import (
|
|
7
6
|
GraphQLApplication,
|
|
8
7
|
)
|
|
@@ -25,18 +24,18 @@ class FirefliesApp(GraphQLApplication):
|
|
|
25
24
|
) -> dict[str, Any]:
|
|
26
25
|
"""
|
|
27
26
|
Queries the Fireflies.ai API for team conversation analytics, specifically the average number of filler words. The data retrieval can optionally be filtered by a start and end time. Returns a dictionary containing the fetched analytics.
|
|
28
|
-
|
|
27
|
+
|
|
29
28
|
Args:
|
|
30
29
|
start_time: Optional start time for analytics (ISO 8601 format, e.g., "2024-01-01T00:00:00Z").
|
|
31
30
|
end_time: Optional end time for analytics (ISO 8601 format, e.g., "2024-01-31T23:59:59Z").
|
|
32
|
-
|
|
31
|
+
|
|
33
32
|
Returns:
|
|
34
33
|
A dictionary containing team analytics data.
|
|
35
34
|
Example: {"team": {"conversation": {"average_filler_words": 0.5}}}
|
|
36
|
-
|
|
35
|
+
|
|
37
36
|
Raises:
|
|
38
37
|
Exception: If the API request fails.
|
|
39
|
-
|
|
38
|
+
|
|
40
39
|
Tags:
|
|
41
40
|
analytics, team, fireflies, query
|
|
42
41
|
"""
|
|
@@ -63,17 +62,17 @@ class FirefliesApp(GraphQLApplication):
|
|
|
63
62
|
def get_transcript_ai_outputs(self, transcript_id: str) -> list[dict[str, Any]]:
|
|
64
63
|
"""
|
|
65
64
|
Retrieves all AI-generated application outputs, such as summaries or analyses, associated with a specific transcript ID. It fetches the detailed prompt and response data for each AI app that has processed the transcript, providing a complete record of AI-generated content.
|
|
66
|
-
|
|
65
|
+
|
|
67
66
|
Args:
|
|
68
67
|
transcript_id: The ID of the transcript.
|
|
69
|
-
|
|
68
|
+
|
|
70
69
|
Returns:
|
|
71
70
|
A list of dictionaries, each representing an AI app output.
|
|
72
71
|
Example: [{"transcript_id": "...", "user_id": "...", ...}]
|
|
73
|
-
|
|
72
|
+
|
|
74
73
|
Raises:
|
|
75
74
|
Exception: If the API request fails.
|
|
76
|
-
|
|
75
|
+
|
|
77
76
|
Tags:
|
|
78
77
|
ai, apps, transcript, fireflies, query
|
|
79
78
|
"""
|
|
@@ -99,17 +98,17 @@ class FirefliesApp(GraphQLApplication):
|
|
|
99
98
|
def get_user_details(self, user_id: str) -> dict[str, Any]:
|
|
100
99
|
"""
|
|
101
100
|
Fetches details, such as name and integrations, for a single user identified by their unique ID. This function queries for a specific user, differentiating it from `list_users` which retrieves a list of all users in the workspace.
|
|
102
|
-
|
|
101
|
+
|
|
103
102
|
Args:
|
|
104
103
|
user_id: The ID of the user.
|
|
105
|
-
|
|
104
|
+
|
|
106
105
|
Returns:
|
|
107
106
|
A dictionary containing user details (e.g., name, integrations).
|
|
108
107
|
Example: {"name": "John Doe", "integrations": [...]}
|
|
109
|
-
|
|
108
|
+
|
|
110
109
|
Raises:
|
|
111
110
|
Exception: If the API request fails.
|
|
112
|
-
|
|
111
|
+
|
|
113
112
|
Tags:
|
|
114
113
|
user, details, fireflies, query, important
|
|
115
114
|
"""
|
|
@@ -128,14 +127,14 @@ class FirefliesApp(GraphQLApplication):
|
|
|
128
127
|
def list_users(self) -> list[dict[str, Any]]:
|
|
129
128
|
"""
|
|
130
129
|
Retrieves a list of all users in the workspace, returning each user's name and configured integrations. It provides a complete team roster, differing from `get_user_details`, which fetches information for a single user by their ID.
|
|
131
|
-
|
|
130
|
+
|
|
132
131
|
Returns:
|
|
133
132
|
A list of dictionaries, each representing a user with their name and integrations.
|
|
134
133
|
Example: [{"name": "Justin Fly", "integrations": ["zoom", "slack"]}, ...]
|
|
135
|
-
|
|
134
|
+
|
|
136
135
|
Raises:
|
|
137
136
|
Exception: If the API request fails.
|
|
138
|
-
|
|
137
|
+
|
|
139
138
|
Tags:
|
|
140
139
|
user, list, users, fireflies, query
|
|
141
140
|
"""
|
|
@@ -158,17 +157,17 @@ class FirefliesApp(GraphQLApplication):
|
|
|
158
157
|
def get_transcript_details(self, transcript_id: str) -> dict[str, Any]:
|
|
159
158
|
"""
|
|
160
159
|
Queries the Fireflies API for a single transcript's details, such as title and ID, using its unique identifier. It fetches one specific entry, distinguishing it from `list_transcripts`, which retrieves a collection, and from `get_ai_apps_outputs` which gets AI data from a transcript.
|
|
161
|
-
|
|
160
|
+
|
|
162
161
|
Args:
|
|
163
162
|
transcript_id: The ID of the transcript.
|
|
164
|
-
|
|
163
|
+
|
|
165
164
|
Returns:
|
|
166
165
|
A dictionary containing transcript details (e.g., title, id).
|
|
167
166
|
Example: {"title": "Meeting Notes", "id": "..."}
|
|
168
|
-
|
|
167
|
+
|
|
169
168
|
Raises:
|
|
170
169
|
Exception: If the API request fails.
|
|
171
|
-
|
|
170
|
+
|
|
172
171
|
Tags:
|
|
173
172
|
transcript, details, fireflies, query, important
|
|
174
173
|
"""
|
|
@@ -295,17 +294,17 @@ class FirefliesApp(GraphQLApplication):
|
|
|
295
294
|
def list_transcripts(self, user_id: str | None = None) -> list[dict[str, Any]]:
|
|
296
295
|
"""
|
|
297
296
|
Fetches a list of meeting transcripts, returning the title and ID for each. The list can be filtered to return only transcripts for a specific user. This function complements `get_transcript_details`, which retrieves a single transcript by its unique ID.
|
|
298
|
-
|
|
297
|
+
|
|
299
298
|
Args:
|
|
300
299
|
user_id: Optional ID of the user to filter transcripts for.
|
|
301
|
-
|
|
300
|
+
|
|
302
301
|
Returns:
|
|
303
302
|
A list of dictionaries, each representing a transcript (e.g., title, id).
|
|
304
303
|
Example: [{"title": "Meeting 1", "id": "..."}, {"title": "Meeting 2", "id": "..."}]
|
|
305
|
-
|
|
304
|
+
|
|
306
305
|
Raises:
|
|
307
306
|
Exception: If the API request fails.
|
|
308
|
-
|
|
307
|
+
|
|
309
308
|
Tags:
|
|
310
309
|
transcript, list, fireflies, query
|
|
311
310
|
"""
|
|
@@ -326,17 +325,17 @@ class FirefliesApp(GraphQLApplication):
|
|
|
326
325
|
def get_bite_details(self, bite_id: str) -> dict[str, Any]:
|
|
327
326
|
"""
|
|
328
327
|
Retrieves detailed information for a specific bite (soundbite/clip) using its unique ID. It fetches data including the user ID, name, processing status, and summary. This provides a focused view of a single bite, distinguishing it from `list_bites` which fetches a collection of bites.
|
|
329
|
-
|
|
328
|
+
|
|
330
329
|
Args:
|
|
331
330
|
bite_id: The ID of the bite.
|
|
332
|
-
|
|
331
|
+
|
|
333
332
|
Returns:
|
|
334
333
|
A dictionary containing bite details (e.g., user_id, name, status, summary).
|
|
335
334
|
Example: {"user_id": "...", "name": "Key Moment", "status": "processed", "summary": "..."}
|
|
336
|
-
|
|
335
|
+
|
|
337
336
|
Raises:
|
|
338
337
|
Exception: If the API request fails.
|
|
339
|
-
|
|
338
|
+
|
|
340
339
|
Tags:
|
|
341
340
|
bite, details, fireflies, query
|
|
342
341
|
"""
|
|
@@ -357,17 +356,17 @@ class FirefliesApp(GraphQLApplication):
|
|
|
357
356
|
def list_bites(self, mine: bool | None = None) -> list[dict[str, Any]]:
|
|
358
357
|
"""
|
|
359
358
|
Retrieves a list of soundbites (clips) from the Fireflies API. An optional 'mine' parameter filters for soundbites belonging only to the authenticated user. Differentiates from 'get_bite_details' by fetching multiple items rather than a single one by ID.
|
|
360
|
-
|
|
359
|
+
|
|
361
360
|
Args:
|
|
362
361
|
mine: Optional boolean to filter for the authenticated user's bites (default true if not specified by API).
|
|
363
|
-
|
|
362
|
+
|
|
364
363
|
Returns:
|
|
365
364
|
A list of dictionaries, each representing a bite (e.g., user_id, name, end_time).
|
|
366
365
|
Example: [{"user_id": "...", "name": "Clip 1", "end_time": "..."}]
|
|
367
|
-
|
|
366
|
+
|
|
368
367
|
Raises:
|
|
369
368
|
Exception: If the API request fails.
|
|
370
|
-
|
|
369
|
+
|
|
371
370
|
Tags:
|
|
372
371
|
bite, list, fireflies, query
|
|
373
372
|
"""
|
|
@@ -391,17 +390,17 @@ class FirefliesApp(GraphQLApplication):
|
|
|
391
390
|
def add_to_live_meeting(self, meeting_link: str) -> dict[str, Any]:
|
|
392
391
|
"""
|
|
393
392
|
Executes a GraphQL mutation to make the Fireflies.ai notetaker join a live meeting specified by its URL. This action initiates the bot's recording and transcription process for the ongoing session and returns a success confirmation.
|
|
394
|
-
|
|
393
|
+
|
|
395
394
|
Args:
|
|
396
395
|
meeting_link: The URL of the live meeting (e.g., Google Meet link).
|
|
397
|
-
|
|
396
|
+
|
|
398
397
|
Returns:
|
|
399
398
|
A dictionary indicating the success of the operation.
|
|
400
399
|
Example: {"success": true}
|
|
401
|
-
|
|
400
|
+
|
|
402
401
|
Raises:
|
|
403
402
|
Exception: If the API request fails.
|
|
404
|
-
|
|
403
|
+
|
|
405
404
|
Tags:
|
|
406
405
|
meeting, live, fireflies, mutation, important
|
|
407
406
|
"""
|
|
@@ -421,19 +420,19 @@ class FirefliesApp(GraphQLApplication):
|
|
|
421
420
|
) -> dict[str, Any]:
|
|
422
421
|
"""
|
|
423
422
|
Creates a soundbite/clip from a specified segment of a transcript using its ID, start, and end times. This function executes a GraphQL mutation, returning details of the newly created bite, such as its ID and processing status.
|
|
424
|
-
|
|
423
|
+
|
|
425
424
|
Args:
|
|
426
425
|
transcript_id: The ID of the transcript.
|
|
427
426
|
start_time: The start time of the bite in seconds (or relevant float unit).
|
|
428
427
|
end_time: The end time of the bite in seconds (or relevant float unit).
|
|
429
|
-
|
|
428
|
+
|
|
430
429
|
Returns:
|
|
431
430
|
A dictionary containing details of the created bite (e.g., summary, status, id).
|
|
432
431
|
Example: {"summary": "...", "status": "processing", "id": "..."}
|
|
433
|
-
|
|
432
|
+
|
|
434
433
|
Raises:
|
|
435
434
|
Exception: If the API request fails.
|
|
436
|
-
|
|
435
|
+
|
|
437
436
|
Tags:
|
|
438
437
|
bite, create, transcript, fireflies, mutation
|
|
439
438
|
"""
|
|
@@ -457,17 +456,17 @@ class FirefliesApp(GraphQLApplication):
|
|
|
457
456
|
def delete_transcript(self, transcript_id: str) -> dict[str, Any]:
|
|
458
457
|
"""
|
|
459
458
|
Permanently deletes a specific transcript from Fireflies.ai using its ID. This destructive operation executes a GraphQL mutation and returns a dictionary containing the details of the transcript (e.g., title, date) as it existed just before being removed, confirming the action.
|
|
460
|
-
|
|
459
|
+
|
|
461
460
|
Args:
|
|
462
461
|
transcript_id: The ID of the transcript to delete.
|
|
463
|
-
|
|
462
|
+
|
|
464
463
|
Returns:
|
|
465
464
|
A dictionary containing details of the deleted transcript.
|
|
466
465
|
Example: {"title": "Old Meeting", "date": "...", "duration": ..., "organizer_email": "..."}
|
|
467
|
-
|
|
466
|
+
|
|
468
467
|
Raises:
|
|
469
468
|
Exception: If the API request fails.
|
|
470
|
-
|
|
469
|
+
|
|
471
470
|
Tags:
|
|
472
471
|
transcript, delete, fireflies, mutation, destructive
|
|
473
472
|
"""
|
|
@@ -488,18 +487,18 @@ class FirefliesApp(GraphQLApplication):
|
|
|
488
487
|
def set_user_role(self, user_id: str, role: str) -> dict[str, Any]:
|
|
489
488
|
"""
|
|
490
489
|
Assigns a new role (e.g., 'admin', 'member') to a user specified by their ID. This function executes a GraphQL mutation to modify user data and returns a dictionary with the user's updated name and admin status to confirm the change.
|
|
491
|
-
|
|
490
|
+
|
|
492
491
|
Args:
|
|
493
492
|
user_id: The ID of the user.
|
|
494
493
|
role: The role to assign (e.g., "admin", "member").
|
|
495
|
-
|
|
494
|
+
|
|
496
495
|
Returns:
|
|
497
496
|
A dictionary containing the updated user details (e.g., name, is_admin).
|
|
498
497
|
Example: {"name": "Jane Doe", "is_admin": true}
|
|
499
|
-
|
|
498
|
+
|
|
500
499
|
Raises:
|
|
501
500
|
Exception: If the API request fails.
|
|
502
|
-
|
|
501
|
+
|
|
503
502
|
Tags:
|
|
504
503
|
user, role, admin, fireflies, mutation
|
|
505
504
|
"""
|
|
@@ -523,20 +522,20 @@ class FirefliesApp(GraphQLApplication):
|
|
|
523
522
|
) -> dict[str, Any]:
|
|
524
523
|
"""
|
|
525
524
|
Submits an audio file from a URL to the Fireflies.ai API for transcription. It can optionally associate a title and a list of attendees with the audio, returning the upload status and details upon completion.
|
|
526
|
-
|
|
525
|
+
|
|
527
526
|
Args:
|
|
528
527
|
url: The URL of the audio file.
|
|
529
528
|
title: Optional title for the uploaded audio.
|
|
530
529
|
attendees: Optional list of attendees. Each attendee is a dict
|
|
531
530
|
with "displayName", "email", "phoneNumber".
|
|
532
|
-
|
|
531
|
+
|
|
533
532
|
Returns:
|
|
534
533
|
A dictionary indicating the success and details of the upload.
|
|
535
534
|
Example: {"success": true, "title": "Uploaded Audio", "message": "..."}
|
|
536
|
-
|
|
535
|
+
|
|
537
536
|
Raises:
|
|
538
537
|
Exception: If the API request fails.
|
|
539
|
-
|
|
538
|
+
|
|
540
539
|
Tags:
|
|
541
540
|
audio, upload, transcript, fireflies, mutation
|
|
542
541
|
"""
|
|
@@ -564,18 +563,18 @@ class FirefliesApp(GraphQLApplication):
|
|
|
564
563
|
) -> dict[str, Any]:
|
|
565
564
|
"""
|
|
566
565
|
Updates the title of a specific transcript, identified by its ID, to a new value. This function executes a GraphQL mutation and returns a dictionary containing the newly assigned title upon successful completion of the request.
|
|
567
|
-
|
|
566
|
+
|
|
568
567
|
Args:
|
|
569
568
|
transcript_id: The ID of the transcript to update.
|
|
570
569
|
new_title: The new title for the meeting.
|
|
571
|
-
|
|
570
|
+
|
|
572
571
|
Returns:
|
|
573
572
|
A dictionary containing the updated title.
|
|
574
573
|
Example: {"title": "New Meeting Title"}
|
|
575
|
-
|
|
574
|
+
|
|
576
575
|
Raises:
|
|
577
576
|
Exception: If the API request fails.
|
|
578
|
-
|
|
577
|
+
|
|
579
578
|
Tags:
|
|
580
579
|
transcript, meeting, title, update, fireflies, mutation
|
|
581
580
|
"""
|