universal-mcp 0.1.12__py3-none-any.whl → 0.1.13rc2__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.
- universal_mcp/applications/__init__.py +51 -7
- universal_mcp/cli.py +109 -17
- universal_mcp/integrations/__init__.py +1 -1
- universal_mcp/integrations/integration.py +79 -0
- universal_mcp/servers/README.md +79 -0
- universal_mcp/servers/server.py +17 -29
- universal_mcp/stores/README.md +74 -0
- universal_mcp/stores/store.py +0 -2
- universal_mcp/templates/README.md.j2 +93 -0
- universal_mcp/templates/api_client.py.j2 +27 -0
- universal_mcp/tools/README.md +86 -0
- universal_mcp/tools/tools.py +1 -1
- universal_mcp/utils/agentr.py +90 -0
- universal_mcp/utils/api_generator.py +166 -208
- universal_mcp/utils/openapi.py +221 -321
- universal_mcp/utils/singleton.py +23 -0
- {universal_mcp-0.1.12.dist-info → universal_mcp-0.1.13rc2.dist-info}/METADATA +16 -41
- universal_mcp-0.1.13rc2.dist-info/RECORD +38 -0
- universal_mcp/applications/ahrefs/README.md +0 -76
- universal_mcp/applications/ahrefs/__init__.py +0 -0
- universal_mcp/applications/ahrefs/app.py +0 -2291
- universal_mcp/applications/cal_com_v2/README.md +0 -175
- universal_mcp/applications/cal_com_v2/__init__.py +0 -0
- universal_mcp/applications/cal_com_v2/app.py +0 -5390
- universal_mcp/applications/calendly/README.md +0 -78
- universal_mcp/applications/calendly/__init__.py +0 -0
- universal_mcp/applications/calendly/app.py +0 -1195
- universal_mcp/applications/clickup/README.md +0 -160
- universal_mcp/applications/clickup/__init__.py +0 -0
- universal_mcp/applications/clickup/app.py +0 -5009
- universal_mcp/applications/coda/README.md +0 -133
- universal_mcp/applications/coda/__init__.py +0 -0
- universal_mcp/applications/coda/app.py +0 -3671
- universal_mcp/applications/e2b/README.md +0 -37
- universal_mcp/applications/e2b/app.py +0 -65
- universal_mcp/applications/elevenlabs/README.md +0 -84
- universal_mcp/applications/elevenlabs/__init__.py +0 -0
- universal_mcp/applications/elevenlabs/app.py +0 -1402
- universal_mcp/applications/falai/README.md +0 -42
- universal_mcp/applications/falai/__init__.py +0 -0
- universal_mcp/applications/falai/app.py +0 -332
- universal_mcp/applications/figma/README.md +0 -74
- universal_mcp/applications/figma/__init__.py +0 -0
- universal_mcp/applications/figma/app.py +0 -1261
- universal_mcp/applications/firecrawl/README.md +0 -45
- universal_mcp/applications/firecrawl/app.py +0 -268
- universal_mcp/applications/github/README.md +0 -47
- universal_mcp/applications/github/app.py +0 -429
- universal_mcp/applications/gong/README.md +0 -88
- universal_mcp/applications/gong/__init__.py +0 -0
- universal_mcp/applications/gong/app.py +0 -2297
- universal_mcp/applications/google_calendar/app.py +0 -442
- universal_mcp/applications/google_docs/README.md +0 -40
- universal_mcp/applications/google_docs/app.py +0 -88
- universal_mcp/applications/google_drive/README.md +0 -44
- universal_mcp/applications/google_drive/app.py +0 -286
- universal_mcp/applications/google_mail/README.md +0 -47
- universal_mcp/applications/google_mail/app.py +0 -664
- universal_mcp/applications/google_sheet/README.md +0 -42
- universal_mcp/applications/google_sheet/app.py +0 -150
- universal_mcp/applications/hashnode/app.py +0 -81
- universal_mcp/applications/hashnode/prompt.md +0 -23
- universal_mcp/applications/heygen/README.md +0 -69
- universal_mcp/applications/heygen/__init__.py +0 -0
- universal_mcp/applications/heygen/app.py +0 -956
- universal_mcp/applications/mailchimp/README.md +0 -306
- universal_mcp/applications/mailchimp/__init__.py +0 -0
- universal_mcp/applications/mailchimp/app.py +0 -10937
- universal_mcp/applications/markitdown/app.py +0 -44
- universal_mcp/applications/notion/README.md +0 -55
- universal_mcp/applications/notion/__init__.py +0 -0
- universal_mcp/applications/notion/app.py +0 -527
- universal_mcp/applications/perplexity/README.md +0 -37
- universal_mcp/applications/perplexity/app.py +0 -65
- universal_mcp/applications/reddit/README.md +0 -45
- universal_mcp/applications/reddit/app.py +0 -379
- universal_mcp/applications/replicate/README.md +0 -65
- universal_mcp/applications/replicate/__init__.py +0 -0
- universal_mcp/applications/replicate/app.py +0 -980
- universal_mcp/applications/resend/README.md +0 -38
- universal_mcp/applications/resend/app.py +0 -37
- universal_mcp/applications/retell_ai/README.md +0 -46
- universal_mcp/applications/retell_ai/__init__.py +0 -0
- universal_mcp/applications/retell_ai/app.py +0 -333
- universal_mcp/applications/rocketlane/README.md +0 -42
- universal_mcp/applications/rocketlane/__init__.py +0 -0
- universal_mcp/applications/rocketlane/app.py +0 -194
- universal_mcp/applications/serpapi/README.md +0 -37
- universal_mcp/applications/serpapi/app.py +0 -73
- universal_mcp/applications/spotify/README.md +0 -116
- universal_mcp/applications/spotify/__init__.py +0 -0
- universal_mcp/applications/spotify/app.py +0 -2526
- universal_mcp/applications/supabase/README.md +0 -112
- universal_mcp/applications/supabase/__init__.py +0 -0
- universal_mcp/applications/supabase/app.py +0 -2970
- universal_mcp/applications/tavily/README.md +0 -38
- universal_mcp/applications/tavily/app.py +0 -51
- universal_mcp/applications/wrike/README.md +0 -71
- universal_mcp/applications/wrike/__init__.py +0 -0
- universal_mcp/applications/wrike/app.py +0 -1372
- universal_mcp/applications/youtube/README.md +0 -82
- universal_mcp/applications/youtube/__init__.py +0 -0
- universal_mcp/applications/youtube/app.py +0 -1428
- universal_mcp/applications/zenquotes/README.md +0 -37
- universal_mcp/applications/zenquotes/app.py +0 -31
- universal_mcp/integrations/agentr.py +0 -112
- universal_mcp-0.1.12.dist-info/RECORD +0 -119
- {universal_mcp-0.1.12.dist-info → universal_mcp-0.1.13rc2.dist-info}/WHEEL +0 -0
- {universal_mcp-0.1.12.dist-info → universal_mcp-0.1.13rc2.dist-info}/entry_points.txt +0 -0
@@ -1,37 +0,0 @@
|
|
1
|
-
|
2
|
-
# E2B MCP Server
|
3
|
-
|
4
|
-
An MCP Server for the E2B API.
|
5
|
-
|
6
|
-
## Supported Integrations
|
7
|
-
|
8
|
-
- AgentR
|
9
|
-
- API Key (Coming Soon)
|
10
|
-
- OAuth (Coming Soon)
|
11
|
-
|
12
|
-
## Tools
|
13
|
-
|
14
|
-
This is automatically generated from OpenAPI schema for the E2B API.
|
15
|
-
|
16
|
-
## Supported Integrations
|
17
|
-
|
18
|
-
This tool can be integrated with any service that supports HTTP requests.
|
19
|
-
|
20
|
-
## Tool List
|
21
|
-
|
22
|
-
| Tool | Description |
|
23
|
-
|------|-------------|
|
24
|
-
| execute_python_code | Executes Python code within a secure E2B cloud sandbox. |
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
## Usage
|
29
|
-
|
30
|
-
- Login to AgentR
|
31
|
-
- Follow the quickstart guide to setup MCP Server for your client
|
32
|
-
- Visit Apps Store and enable the E2B app
|
33
|
-
- Restart the MCP Server
|
34
|
-
|
35
|
-
### Local Development
|
36
|
-
|
37
|
-
- Follow the README to test with the local MCP Server
|
@@ -1,65 +0,0 @@
|
|
1
|
-
from typing import Annotated
|
2
|
-
|
3
|
-
from e2b_code_interpreter import Sandbox
|
4
|
-
|
5
|
-
from universal_mcp.applications.application import APIApplication
|
6
|
-
from universal_mcp.integrations import Integration
|
7
|
-
|
8
|
-
|
9
|
-
class E2BApp(APIApplication):
|
10
|
-
"""
|
11
|
-
Application for interacting with the E2B secure cloud sandboxes
|
12
|
-
to execute Python code.
|
13
|
-
"""
|
14
|
-
|
15
|
-
def __init__(self, integration: Integration | None = None) -> None:
|
16
|
-
super().__init__(name="e2b", integration=integration)
|
17
|
-
|
18
|
-
def _format_execution_output(self, logs) -> str:
|
19
|
-
"""Helper function to format the E2B execution logs nicely."""
|
20
|
-
output_parts = []
|
21
|
-
|
22
|
-
if logs.stdout:
|
23
|
-
stdout_content = "".join(logs.stdout).strip()
|
24
|
-
if stdout_content:
|
25
|
-
output_parts.append(f"\n{stdout_content}")
|
26
|
-
|
27
|
-
if logs.stderr:
|
28
|
-
stderr_content = "".join(logs.stderr).strip()
|
29
|
-
if stderr_content:
|
30
|
-
output_parts.append(f"--- ERROR ---\n{stderr_content}")
|
31
|
-
|
32
|
-
if not output_parts:
|
33
|
-
return "Execution finished with no output (stdout/stderr)."
|
34
|
-
return "\n\n".join(output_parts)
|
35
|
-
|
36
|
-
def execute_python_code(
|
37
|
-
self, code: Annotated[str, "The Python code to execute."]
|
38
|
-
) -> str:
|
39
|
-
"""
|
40
|
-
Executes Python code in a sandbox environment and returns the formatted output
|
41
|
-
|
42
|
-
Args:
|
43
|
-
code: String containing the Python code to be executed in the sandbox
|
44
|
-
|
45
|
-
Returns:
|
46
|
-
A string containing the formatted execution output/logs from running the code
|
47
|
-
|
48
|
-
Raises:
|
49
|
-
SandboxError: When there are issues with sandbox initialization or code execution
|
50
|
-
AuthenticationError: When API key authentication fails during sandbox setup
|
51
|
-
ValueError: When provided code string is empty or invalid
|
52
|
-
|
53
|
-
Tags:
|
54
|
-
execute, sandbox, code-execution, security, important
|
55
|
-
"""
|
56
|
-
api_key = self.integration.get_credentials().get("api_key")
|
57
|
-
with Sandbox(api_key=api_key) as sandbox:
|
58
|
-
execution = sandbox.run_code(code=code)
|
59
|
-
result = self._format_execution_output(execution.logs)
|
60
|
-
return result
|
61
|
-
|
62
|
-
def list_tools(self):
|
63
|
-
return [
|
64
|
-
self.execute_python_code,
|
65
|
-
]
|
@@ -1,84 +0,0 @@
|
|
1
|
-
|
2
|
-
# Elevenlabs MCP Server
|
3
|
-
|
4
|
-
An MCP Server for the Elevenlabs API.
|
5
|
-
|
6
|
-
## Supported Integrations
|
7
|
-
|
8
|
-
- AgentR
|
9
|
-
- API Key (Coming Soon)
|
10
|
-
- OAuth (Coming Soon)
|
11
|
-
|
12
|
-
## Tools
|
13
|
-
|
14
|
-
This is automatically generated from OpenAPI schema for the Elevenlabs API.
|
15
|
-
|
16
|
-
## Supported Integrations
|
17
|
-
|
18
|
-
This tool can be integrated with any service that supports HTTP requests.
|
19
|
-
|
20
|
-
## Tool List
|
21
|
-
|
22
|
-
| Tool | Description |
|
23
|
-
|------|-------------|
|
24
|
-
| get_generated_items_v1_history_get | Retrieves a paginated history of generated items from the API, optionally filtered by page size, starting history item, or voice ID. |
|
25
|
-
| get_history_item_by_id_v1_history__history_item_id__get | Retrieves a specific history item by its unique identifier. |
|
26
|
-
| delete_history_item_v1_history__history_item_id__delete | Deletes a specific history item by its unique identifier. |
|
27
|
-
| get_audio_from_history_item_v1_history__history_item_id__audio_get | Retrieves the audio data associated with a specific history item by its unique identifier. |
|
28
|
-
| download_history_items_v1_history_download_post | Downloads specified history items in the given output format via a POST request. |
|
29
|
-
| delete_sample_v1_voices__voice_id__samples__sample_id__delete | Deletes a specific voice sample identified by voice_id and sample_id from the API. |
|
30
|
-
| get_audio_from_sample_v1_voices__voice_id__samples__sample_id__audio_get | Retrieves audio data for a specific sample from a given voice using provided identifiers. |
|
31
|
-
| text_to_speech_v1_text_to_speech__voice_id__post | Converts input text to speech using the specified voice configuration via a POST request to the text-to-speech API endpoint. |
|
32
|
-
| text_to_speech_v1_text_to_speech__voice_id__stream_post | Streams synthesized speech audio for given text using a specified voice ID and customizable options. |
|
33
|
-
| voice_generation_parameters_v1_voice_generation_generate_voice_parameters_get | Retrieves available parameter options for voice generation from the API. |
|
34
|
-
| generate_a_random_voice_v1_voice_generation_generate_voice_post | Generates a synthetic voice audio based on specified demographics and text input by sending a POST request to the voice generation API. |
|
35
|
-
| create_a_previously_generated_voice_v1_voice_generation_create_voice_post | Creates a new voice entry using data from a previously generated voice. |
|
36
|
-
| get_user_subscription_info_v1_user_subscription_get | Retrieves the current user's subscription information from the API. |
|
37
|
-
| get_user_info_v1_user_get | Retrieves information about the current authenticated user from the API. |
|
38
|
-
| get_voices_v1_voices_get | Retrieves a list of available voices from the v1 API endpoint. |
|
39
|
-
| get_default_voice_settings__v1_voices_settings_default_get | Retrieves the default voice settings from the API endpoint. |
|
40
|
-
| get_voice_settings_v1_voices__voice_id__settings_get | Retrieves the settings for a specific voice using the provided voice ID. |
|
41
|
-
| get_voice_v1_voices__voice_id__get | Retrieves details for a specific voice, optionally including voice settings, by making a GET request to the API. |
|
42
|
-
| delete_voice_v1_voices__voice_id__delete | Deletes a voice resource identified by the given voice ID using the v1 API endpoint. |
|
43
|
-
| add_sharing_voice_v1_voices_add__public_user_id___voice_id__post | Adds a shared voice for a public user by sending a POST request with a new name for the specified voice. |
|
44
|
-
| get_projects_v1_projects_get | Retrieves a list of projects from the API using a GET request to the '/v1/projects' endpoint. |
|
45
|
-
| get_project_by_id_v1_projects__project_id__get | Retrieve project details by project ID using the v1 projects API. |
|
46
|
-
| delete_project_v1_projects__project_id__delete | Deletes a project by its ID using a DELETE HTTP request to the v1/projects endpoint. |
|
47
|
-
| convert_project_v1_projects__project_id__convert_post | Converts the specified project by sending a POST request to the appropriate API endpoint. |
|
48
|
-
| get_project_snapshots_v1_projects__project_id__snapshots_get | Retrieves a list of snapshots for the specified project using the v1 projects API. |
|
49
|
-
| stream_project_audio_v1_projects__project_id__snapshots__project_snapshot_id__stream_post | Streams audio data for a specific project snapshot, with optional conversion to MPEG format. |
|
50
|
-
| streams_archive_with_project_audio_v1_projects__project_id__snapshots__project_snapshot_id__archive_post | Creates an audio archive for the specified project snapshot by making a POST request to the project's archive endpoint. |
|
51
|
-
| get_chapters_v1_projects__project_id__chapters_get | Retrieves the list of chapters for a specific project by project ID. |
|
52
|
-
| get_chapter_by_id_v1_projects__project_id__chapters__chapter_id__get | Retrieves a specific chapter resource by its ID from a given project using the API. |
|
53
|
-
| delete_chapter_v1_projects__project_id__chapters__chapter_id__delete | Deletes a specific chapter from a project by its project and chapter IDs. |
|
54
|
-
| convert_chapter_v1_projects__project_id__chapters__chapter_id__convert_post | Initiates a conversion operation for a specified chapter within a project and returns the result as JSON. |
|
55
|
-
| get_chapter_snapshots_v1_projects__project_id__chapters__chapter_id__snapshots_get | Retrieves the list of chapter snapshots for a specific chapter within a project. |
|
56
|
-
| stream_chapter_audio_v1_projects__project_id__chapters__chapter_id__snapshots__chapter_snapshot_id__stream_post | Streams the audio for a specific chapter snapshot in a project, with optional conversion to MPEG format. |
|
57
|
-
| update_pronunciation_dictionaries_v1_projects__project_id__update_pronunciation_dictionaries_post | Updates the pronunciation dictionaries for a specific project by sending the provided dictionary locators to the server. |
|
58
|
-
| get_dubbing_project_metadata_v1_dubbing__dubbing_id__get | Retrieves metadata for a dubbing project by its unique identifier. |
|
59
|
-
| delete_dubbing_project_v1_dubbing__dubbing_id__delete | Deletes a dubbing project identified by its ID via the v1 API endpoint. |
|
60
|
-
| get_dubbed_file_v1_dubbing__dubbing_id__audio__language_code__get | Retrieves the dubbed audio file for a given dubbing ID and language code from the API. |
|
61
|
-
| get_transcript_for_dub_v1_dubbing__dubbing_id__transcript__language_code__get | Retrieves the transcript for a specific dubbing in the requested language. |
|
62
|
-
| get_sso_provider_admin_admin__admin_url_prefix__sso_provider_get | Retrieves SSO provider information for a specific admin URL prefix and workspace. |
|
63
|
-
| get_models_v1_models_get | Retrieves a list of available models from the v1 API endpoint. |
|
64
|
-
| get_voices_v1_shared_voices_get | Retrieves a list of shared voice resources, filtered and paginated according to the specified criteria. |
|
65
|
-
| add_rules_to_the_pronunciation_dictionary_v1_pronunciation_dictionaries__pronunciation_dictionary_id__add_rules_post | Adds new pronunciation rules to a specified pronunciation dictionary by making a POST request to the backend service. |
|
66
|
-
| remove_rules_from_the_pronunciation_dictionary_v1_pronunciation_dictionaries__pronunciation_dictionary_id__remove_rules_post | Removes specified pronunciation rules from a pronunciation dictionary via a POST request to the API. |
|
67
|
-
| get_pls_file_with_a_pronunciation_dictionary_version_rules_v1_pronunciation_dictionaries__dictionary_id___version_id__download_get | Downloads a pronunciation lexicon (PLS) file for a specific pronunciation dictionary version. |
|
68
|
-
| get_metadata_for_a_pronunciation_dictionary_v1_pronunciation_dictionaries__pronunciation_dictionary_id___get | Retrieves metadata for a specific pronunciation dictionary by its ID. |
|
69
|
-
| get_pronunciation_dictionaries_v1_pronunciation_dictionaries__get | Retrieve a paginated list of pronunciation dictionaries from the v1 API endpoint. |
|
70
|
-
| get_a_profile_page_profile__handle__get | Retrieves a user's profile data as a dictionary using their unique handle. |
|
71
|
-
| redirect_to_mintlify_docs_get | Fetches the Mintlify documentation by sending a GET request and returns the parsed JSON response. |
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
## Usage
|
76
|
-
|
77
|
-
- Login to AgentR
|
78
|
-
- Follow the quickstart guide to setup MCP Server for your client
|
79
|
-
- Visit Apps Store and enable the Elevenlabs app
|
80
|
-
- Restart the MCP Server
|
81
|
-
|
82
|
-
### Local Development
|
83
|
-
|
84
|
-
- Follow the README to test with the local MCP Server
|
File without changes
|