# OmniDimension Python SDK
*Build and ship AI voice agents from a single prompt.*
OmniDimension lets you **build, test, and deploy** reliable voice AI assistants by simply describing them in plain text. The platform offers **rigorous simulation testing** and **real-time observability**, making it easy to debug and monitor agents in production.
👉 [Try the Web UI](https://www.omnidim.io/) — You can also build and test voice agents visually using our no-code interface.
---
## 🚀 Features
- **Prompt-based creation:** Define voice agents with natural language.
- **Drag-and-drop editor:** Chat or visually edit flows, voices, models, and more.
- **Prebuilt templates:** Use plug-and-play agent templates for common use cases.
- **Testing & monitoring:** Simulate edge cases and debug live calls.
- **Knowledge Base support:** Upload and attach documents (PDFs) for factual grounding.
- **Integrations:** Connect to external APIs, CRMs, or tools like Cal.com.
- **Phone agents:** Assign numbers and initiate real voice calls via the SDK.
---
## 📦 Installation
### Basic SDK
```bash
pip install omnidimension
````
### With MCP Server Support
```bash
pip install omnidimension[mcp]
```
> Requires Python 3.9+
---
## 🔐 Authentication
First, obtain your API key from the OmniDimension dashboard. Store it in your environment variables:
### Linux/macOS
```bash
export OMNIDIM_API_KEY="your_api_key_here"
```
### Windows (CMD)
```cmd
set OMNIDIM_API_KEY=your_api_key_here
```
### In Python
```python
import os
from omnidimension import Client
api_key = os.environ.get("OMNIDIM_API_KEY")
client = Client(api_key)
```
---
## ✨ SDK Usage
```python
from omnidimension import Client
# Initialize the client with your API key
client = Client(api_key="your_api_key")
# List agents
agents = client.agent.list()
print(agents)
```
---
## 🛰️ MCP Server Usage
You can run the MCP server in several ways:
### 1. Using the Python module:
```bash
python -m omnidimension.mcp_server --api-key your_api_key
```
### 2. Using the CLI entry point:
```bash
omnidim-mcp-server --api-key your_api_key
```
### 3. Using the compatibility module (for MCP clients):
```bash
python -m omnidim_mcp_server --api-key your_api_key
```
You can also set the API key using the environment variable:
```bash
export OMNIDIM_API_KEY=your_api_key
python -m omnidimension.mcp_server
```
---
## ⚙️ MCP Client Configuration
To use OmniDimension with MCP clients like Claude Desktop, save the following configuration to a file named `omnidim_mcp.json`:
```json
{
"mcpServers": {
"omnidim-mcp-server": {
"command": "python3",
"args": [
"-m",
"omnidim_mcp_server"
],
"env": {
"OMNIDIM_API_KEY": "<your_omnidim_api_key>"
}
}
}
}
```
---
## 📚 Knowledge Base
```python
files = client.knowledge_base.list()
print(files)
file_ids = [123]
agent_id = 456
response = client.knowledge_base.attach(file_ids, agent_id)
print(response)
```
---
## 🔌 Integrations
```python
response = client.integrations.create_custom_api_integration(
name="WeatherAPI",
url="https://api.example.com/weather",
method="GET"
)
print(response)
client.integrations.add_integration_to_agent(agent_id=123, integration_id=789)
```
---
## ☎️ Phone Number Management
```python
numbers = client.phone_number.list(page=1, page_size=10)
print(numbers)
client.phone_number.attach(phone_number_id=321, agent_id=123)
```
---
## 📁 Recommended Project Structure
```
/docs/
├── agents/
├── calling/
├── integrations/
├── knowledge_base/
└── phone_numbers/
/examples/ # Sample Python scripts
/cookbook/ # Ready-made project use cases
```
---
## 🌐 Learn More
Visit [omnidim.io](https://www.omnidim.io/) to explore the full platform, UI builder, and templates.
Raw data
{
"_id": null,
"home_page": "https://github.com/kevin-omnidim/omnidim-sdk",
"name": "omnidimension",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": null,
"keywords": null,
"author": "https://www.omnidim.io/",
"author_email": "kevin@omnidim.io",
"download_url": "https://files.pythonhosted.org/packages/fd/6c/eaf4b7cb5464412795879a47be5a0a94742f11e431f21cffa21beaafe448/omnidimension-0.2.11.tar.gz",
"platform": null,
"description": "\n# OmniDimension Python SDK\n\n*Build and ship AI voice agents from a single prompt.*\n\nOmniDimension lets you **build, test, and deploy** reliable voice AI assistants by simply describing them in plain text. The platform offers **rigorous simulation testing** and **real-time observability**, making it easy to debug and monitor agents in production.\n\n\ud83d\udc49 [Try the Web UI](https://www.omnidim.io/) \u2014 You can also build and test voice agents visually using our no-code interface.\n\n---\n\n## \ud83d\ude80 Features\n\n- **Prompt-based creation:** Define voice agents with natural language.\n- **Drag-and-drop editor:** Chat or visually edit flows, voices, models, and more.\n- **Prebuilt templates:** Use plug-and-play agent templates for common use cases.\n- **Testing & monitoring:** Simulate edge cases and debug live calls.\n- **Knowledge Base support:** Upload and attach documents (PDFs) for factual grounding.\n- **Integrations:** Connect to external APIs, CRMs, or tools like Cal.com.\n- **Phone agents:** Assign numbers and initiate real voice calls via the SDK.\n\n---\n\n## \ud83d\udce6 Installation\n\n### Basic SDK\n\n```bash\npip install omnidimension\n````\n\n### With MCP Server Support\n\n```bash\npip install omnidimension[mcp]\n```\n\n> Requires Python 3.9+\n\n---\n\n## \ud83d\udd10 Authentication\n\nFirst, obtain your API key from the OmniDimension dashboard. Store it in your environment variables:\n\n### Linux/macOS\n\n```bash\nexport OMNIDIM_API_KEY=\"your_api_key_here\"\n```\n\n### Windows (CMD)\n\n```cmd\nset OMNIDIM_API_KEY=your_api_key_here\n```\n\n### In Python\n\n```python\nimport os\nfrom omnidimension import Client\n\napi_key = os.environ.get(\"OMNIDIM_API_KEY\")\nclient = Client(api_key)\n```\n\n---\n\n## \u2728 SDK Usage\n\n```python\nfrom omnidimension import Client\n\n# Initialize the client with your API key\nclient = Client(api_key=\"your_api_key\")\n\n# List agents\nagents = client.agent.list()\nprint(agents)\n```\n\n---\n\n## \ud83d\udef0\ufe0f MCP Server Usage\n\nYou can run the MCP server in several ways:\n\n### 1. Using the Python module:\n\n```bash\npython -m omnidimension.mcp_server --api-key your_api_key\n```\n\n### 2. Using the CLI entry point:\n\n```bash\nomnidim-mcp-server --api-key your_api_key\n```\n\n### 3. Using the compatibility module (for MCP clients):\n\n```bash\npython -m omnidim_mcp_server --api-key your_api_key\n```\n\nYou can also set the API key using the environment variable:\n\n```bash\nexport OMNIDIM_API_KEY=your_api_key\npython -m omnidimension.mcp_server\n```\n\n---\n\n## \u2699\ufe0f MCP Client Configuration\n\nTo use OmniDimension with MCP clients like Claude Desktop, save the following configuration to a file named `omnidim_mcp.json`:\n\n```json\n{\n \"mcpServers\": {\n \"omnidim-mcp-server\": {\n \"command\": \"python3\",\n \"args\": [\n \"-m\",\n \"omnidim_mcp_server\"\n ],\n \"env\": {\n \"OMNIDIM_API_KEY\": \"<your_omnidim_api_key>\"\n }\n }\n }\n}\n```\n\n---\n\n## \ud83d\udcda Knowledge Base\n\n```python\nfiles = client.knowledge_base.list()\nprint(files)\n\nfile_ids = [123]\nagent_id = 456\nresponse = client.knowledge_base.attach(file_ids, agent_id)\nprint(response)\n```\n\n---\n\n## \ud83d\udd0c Integrations\n\n```python\nresponse = client.integrations.create_custom_api_integration(\n name=\"WeatherAPI\",\n url=\"https://api.example.com/weather\",\n method=\"GET\"\n)\nprint(response)\n\nclient.integrations.add_integration_to_agent(agent_id=123, integration_id=789)\n```\n\n---\n\n## \u260e\ufe0f Phone Number Management\n\n```python\nnumbers = client.phone_number.list(page=1, page_size=10)\nprint(numbers)\n\nclient.phone_number.attach(phone_number_id=321, agent_id=123)\n```\n\n---\n\n## \ud83d\udcc1 Recommended Project Structure\n\n```\n/docs/\n \u251c\u2500\u2500 agents/\n \u251c\u2500\u2500 calling/\n \u251c\u2500\u2500 integrations/\n \u251c\u2500\u2500 knowledge_base/\n \u2514\u2500\u2500 phone_numbers/\n\n/examples/ # Sample Python scripts\n/cookbook/ # Ready-made project use cases\n```\n\n---\n\n\n## \ud83c\udf10 Learn More\n\nVisit [omnidim.io](https://www.omnidim.io/) to explore the full platform, UI builder, and templates.\n\n",
"bugtrack_url": null,
"license": null,
"summary": "SDK and MCP Server for Omni Assistant services",
"version": "0.2.11",
"project_urls": {
"Homepage": "https://github.com/kevin-omnidim/omnidim-sdk"
},
"split_keywords": [],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "8720ecc8cd756eecb3c04105a78b291a638edb74b0ff646dc5f5c8ee9067c596",
"md5": "306ce206dc1290bd5bd7da5ff9bcdcdb",
"sha256": "01658f4668dfacb9913d5649db92b4ce4d782fd1449b68eba1d6d76578bbe571"
},
"downloads": -1,
"filename": "omnidimension-0.2.11-py3-none-any.whl",
"has_sig": false,
"md5_digest": "306ce206dc1290bd5bd7da5ff9bcdcdb",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 17282,
"upload_time": "2025-07-10T14:31:21",
"upload_time_iso_8601": "2025-07-10T14:31:21.232262Z",
"url": "https://files.pythonhosted.org/packages/87/20/ecc8cd756eecb3c04105a78b291a638edb74b0ff646dc5f5c8ee9067c596/omnidimension-0.2.11-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "fd6ceaf4b7cb5464412795879a47be5a0a94742f11e431f21cffa21beaafe448",
"md5": "c94dd3d8cb7a69cab8ec8592f7ce7e58",
"sha256": "acbcb6896182d7413a008b16958234ebe77d962807c6918a8414aca2512c828f"
},
"downloads": -1,
"filename": "omnidimension-0.2.11.tar.gz",
"has_sig": false,
"md5_digest": "c94dd3d8cb7a69cab8ec8592f7ce7e58",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 14995,
"upload_time": "2025-07-10T14:31:22",
"upload_time_iso_8601": "2025-07-10T14:31:22.680688Z",
"url": "https://files.pythonhosted.org/packages/fd/6c/eaf4b7cb5464412795879a47be5a0a94742f11e431f21cffa21beaafe448/omnidimension-0.2.11.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-10 14:31:22",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "kevin-omnidim",
"github_project": "omnidim-sdk",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [
{
"name": "requests",
"specs": []
},
{
"name": "fastapi",
"specs": [
[
">=",
"0.95.0"
]
]
},
{
"name": "uvicorn",
"specs": [
[
">=",
"0.21.0"
]
]
},
{
"name": "fastmcp",
"specs": [
[
">=",
"0.1.0"
]
]
},
{
"name": "pydantic",
"specs": [
[
">=",
"1.10.0"
]
]
}
],
"lcname": "omnidimension"
}