# OpenOne
**Unofficial MCP Server & API Client for Alteryx Analytics Platform**
[](https://www.python.org/downloads/)
[](LICENSE)
[](https://modelcontextprotocol.io/)
> **โ ๏ธ DISCLAIMER**: This is NOT an official implementation. This project is a personal initiative and is not affiliated with, endorsed by, or supported by any company.
## Overview
OpenOne is an unofficial Model Context Protocol (MCP) server and Python API client for Alteryx Analytics Platform. It enables seamless integration between Claude and other MCP-compatible clients with your Alteryx Analytics Platform instance, providing programmatic access to schedules, datasets, plans and user management.
### ๐ Quick Stats
- **25 MCP Tools** across 8 functional categories
- **Complete API Coverage** for all core Alteryx APIs including legacy APIs
- **Production Ready** with comprehensive error handling
- **Real-time Integration** with Claude Desktop
## Features
- **๐ MCP-Compatible Server** - Direct integration with Claude and other MCP clients
- **๐ Python API Client** - Full-featured client for Alteryx Analytics Platform
- **๐
Schedule Management** - Complete CRUD operations for workflow schedules
- **๐๏ธ Plan Management** - Create, run, and manage execution plans
- **๐ข Workspace Management** - Multi-workspace support and user administration
- **๐ Dataset Management** - Access imported and wrangled datasets
- **โ๏ธ Workflow Management** - List, get, and run workflows
- **๐ Job Management** - Monitor job execution and retrieve inputs/outputs
- **๐ฅ User Management** - User profiles and permission management
- **๐ Multi-Region Support** - Works with all regions worldwide
- **๐ Real-time Operations** - Live status monitoring and execution tracking
## Installation
### Prerequisites
- Python 3.10 or higher
- Alteryx Analytics Cloud Platform account
- OAuth2 credentials (Client ID, initial Access Token & Refresh Token)
### Install Options
**From GitHub (Recommended)**:
```bash
git clone https://github.com/jupiterbak/OpenOne.git
cd OpenOne
pip install .
```
### Configuration
#### Environment Variables
Set up your OpenOne Analytics Platform credentials using environment variables:
```bash
# Required
export OPENONE_API_BASE_URL="https://api.eu1.alteryxcloud.com"
export OPENONE_TOKEN_ENDPOINT="https://pingauth-eu1.alteryxcloud.com/as"
export OPENONE_CLIENT_ID="your_client_id_here"
export OPENONE_PROJECT_ID="your_project_id_here"
export OPENONE_ACCESS_TOKEN="your_access_token_here"
export OPENONE_REFRESH_TOKEN="your_refresh_token"
# Optional
export OPENONE_PERSISTENT_FOLDER="~/.openone"
export OPENONE_VERIFY_SSL=1
```
#### Configuration File
Create a `.env` file in your project root:
```env
OPENONE_API_BASE_URL=https://api.eu1.alteryxcloud.com
OPENONE_TOKEN_ENDPOINT=https://pingauth-eu1.alteryxcloud.com/as
OPENONE_CLIENT_ID=your_client_id_here
OPENONE_PROJECT_ID=your_project_id_here
OPENONE_ACCESS_TOKEN=your_access_token_here
OPENONE_REFRESH_TOKEN=your_refresh_token
OPENONE_PERSISTENT_FOLDER=~/.openone
OPENONE_VERIFY_SSL=1
```
#### MCP Server Setup - Claude Desktop Configuration
Add the following to your Claude configuration file:
```json
{
"mcpServers": {
"openone": {
"command": "python",
"args": ["-m", "openone"],
"env": {
"OPENONE_API_BASE_URL": "https://api.eu1.alteryxcloud.com",
"OPENONE_TOKEN_ENDPOINT": "https://pingauth-eu1.alteryxcloud.com/as",
"OPENONE_CLIENT_ID": "your_client_id_here",
"OPENONE_PROJECT_ID": "your_project_id_here",
"OPENONE_ACCESS_TOKEN": "your_access_token_here",
"OPENONE_REFRESH_TOKEN": "your_refresh_token",
"OPENONE_PERSISTENT_FOLDER": "~/.openone"
}
}
}
}
```
Alternative: Using a Configuration File
Instead of setting environment variables in the Claude config, you can create a `.env` file and reference it:
```json
{
"mcpServers": {
"openone": {
"command": "python",
"args": ["-m", "openone"],
"cwd": "/path/to/your/project",
"env": {
"OPENONE_CONFIG_FILE": "/path/to/your/.env"
}
}
}
}
```
#### Testing the MCP Server
After configuration, restart Claude Desktop and test with these example queries:
**Basic Operations:**
- "List all schedules in my OpenOne Analytics Platform instance"
- "Show me my current workspace details and user count"
- "Get a count of all my plans and datasets"
**Schedule Management:**
- "Disable the schedule with ID 12345 and tell me why"
- "Show me all enabled schedules and their next run times"
- "Delete all schedules that haven't run in the last 30 days"
**Data Operations:**
- "List all my datasets and show their connection status"
- "Check if my database connections are working properly"
- "Show me all wrangled datasets and their input sources"
**Advanced Queries:**
- "Run plan abc123 and monitor its execution status"
- "Show me all workspace admins and their permissions"
- "List my publications and delete any older than 6 months"
### API Client Usage
### Basic Usage
```python
import client
from client.rest import ApiException
from pprint import pprint
# Configure the client
configuration = client.Configuration()
api_instance = client.ScheduleApi(client.ApiClient(configuration))
try:
# List all schedules
schedules = api_instance.list_schedules()
print(f"Found {len(schedules)} schedules")
# Get a specific schedule
schedule = api_instance.get_schedule(schedule_id="12345")
pprint(schedule)
except ApiException as e:
print(f"API Error: {e}")
```
## MCP Available Tools
The MCP server provides comprehensive access to Alteryx Analytics Cloud through organized tool categories:
### ๐
Schedule Management Tools
| Tool | Description | Parameters |
|------|-------------|-------------|
| `list_schedules` | List all schedules in the workspace | None |
| `get_schedule` | Get details of a specific schedule | `schedule_id` |
| `delete_schedule` | Delete a schedule by ID | `schedule_id` |
| `enable_schedule` | Enable a schedule by ID | `schedule_id` |
| `disable_schedule` | Disable a schedule by ID | `schedule_id` |
| `count_schedules` | Get the count of schedules in workspace | None |
### ๐๏ธ Plan Management Tools
| Tool | Description | Parameters |
|------|-------------|-------------|
| `list_plans` | List all plans in current workspace | None |
| `get_plan` | Get a plan by plan ID | `plan_id` |
| `delete_plan` | Delete a plan by plan ID | `plan_id` |
| `get_plan_schedules` | Get schedules for a plan by plan ID | `plan_id` |
| `run_plan` | Run a plan by plan ID | `plan_id` |
| `count_plans` | Get the count of plans in workspace | None |
### ๐ข Workspace Management Tools
| Tool | Description | Parameters |
|------|-------------|-------------|
| `list_workspaces` | List all available workspaces | None |
| `get_current_workspace` | Get current workspace that user is in | None |
| `get_workspace_configuration` | Get workspace configuration by workspace ID | `workspace_id` |
| `list_workspace_users` | List users in a workspace by workspace ID | `workspace_id` |
| `list_workspace_admins` | List admins in a workspace by workspace ID | `workspace_id` |
### ๐ฅ User Management Tools
| Tool | Description | Parameters |
|------|-------------|-------------|
| `get_current_user` | Get current user information | None |
| `get_user` | Get user details by user ID | `user_id` |
### ๐ Dataset Management Tools
| Tool | Description | Parameters |
|------|-------------|-------------|
| `list_datasets` | List all datasets accessible to current user | None |
| `get_dataset` | Get dataset details by dataset ID | `dataset_id` |
### ๐งน Wrangled Dataset Management Tools
| Tool | Description | Parameters |
|------|-------------|-------------|
| `list_wrangled_datasets` | List all wrangled datasets (produced by workflows) | None |
| `get_wrangled_dataset` | Get wrangled dataset by wrangled dataset ID | `wrangled_dataset_id` |
| `get_inputs_for_wrangled_dataset` | Get input datasets for wrangled dataset by wrangled dataset ID | `wrangled_dataset_id` |
### โ๏ธ Workflow Management Tools
| Tool | Description | Parameters |
|------|-------------|-------------|
| `list_workflows` | List all workflows accessible to current user | None |
| `get_workflow` | Get workflow details by workflow ID | `workflow_id` |
| `run_workflow` | Run a workflow by workflow ID | `workflow_id` |
### ๐ Job Management Tools
| Tool | Description | Parameters |
|------|-------------|-------------|
| `list_job_groups` | List all job groups accessible to current user | None |
| `get_job_group` | Get job group details by job ID | `job_id` |
| `get_job_status` | Get status of a job by job ID | `job_id` |
| `get_job_input` | Get all input datasets of a job by job ID | `job_id` |
| `get_job_output` | Get all output datasets of a job by job ID | `job_id` |
### Example Usage with Claude
Here are some example queries you can use with Claude once the MCP server is configured:
**Schedule Management:**
- "List all my schedules and show me which ones are currently enabled"
- "Get details for schedule ID 12345 and tell me when it last ran"
- "Disable the schedule with ID 67890 temporarily"
- "Delete the schedule named 'old-workflow-schedule'"
**Plan Management:**
- "Show me all my plans and their current status"
- "Run the plan with ID abc123 and monitor its progress"
- "Get the schedules associated with my data processing plan"
**Workspace & User Management:**
- "List all workspaces I have access to"
- "Show me all users in workspace ws-456 and their roles"
- "Get my current user profile and permissions"
**Data Management:**
- "List all my datasets and show their sizes"
- "Show me all my wrangled datasets and their input sources"
- "Get details about dataset ds-456 and its metadata"
**Workflows & Jobs:**
- "List all my workflows and show which ones are active"
- "Run workflow wf-789 and monitor its execution"
- "Show me all job groups and their current status"
- "Get the input and output datasets for job job-123"
### ๐ข Tool Summary
| Category | Tool Count | Key Operations |
|----------|------------|----------------|
| **Schedule Management** | 6 tools | List, Get, Delete, Enable, Disable, Count |
| **Plan Management** | 6 tools | List, Get, Delete, Run, Get Schedules, Count |
| **Workspace Management** | 5 tools | List, Get Current, Get Config, List Users/Admins |
| **User Management** | 2 tools | Get Current User, Get User by ID |
| **Dataset Management** | 2 tools | List, Get by ID |
| **Wrangled Dataset Management** | 3 tools | List, Get, Get Inputs |
| **Workflow Management** | 3 tools | List, Get, Run |
| **Job Management** | 5 tools | List, Get, Status, Get Inputs/Outputs |
| **Total** | **25 tools** | Complete Alteryx Platform integration |
## ๐ค Contributing
We welcome contributions! Here's how you can help:
1. **Fork** the repository
2. **Create** a feature branch (`git checkout -b feature/amazing-feature`)
3. **Commit** your changes (`git commit -m 'Add amazing feature'`)
4. **Push** to the branch (`git push origin feature/amazing-feature`)
5. **Open** a Pull Request
### Development Setup
```bash
git clone https://github.com/jupiterbak/OpenOne.git
cd OpenOne
pip install -e .[develop]
pytest # Run tests
```
### Code Style
- Follow PEP 8 guidelines
- Add type hints where appropriate
- Include docstrings for all functions
- Write tests for new features
## ๐ License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
<div align="center">
**Made with โค๏ธ for the Alteryx Community**
[](https://github.com/jupiterbak/OpenOne)
[](https://github.com/jupiterbak/OpenOne)
</div>
Raw data
{
"_id": null,
"home_page": null,
"name": "OpenOne",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "alteryx, analytics-cloud, mcp, model-context-protocol",
"author": null,
"author_email": "Jupiter Bakakeu <jupiter.bakakeu@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/c7/41/6522a0b27cada3ffb20aa7e15b08dabeaa288802d405d77257c0e2f591ec/openone-0.1.2.tar.gz",
"platform": null,
"description": "\n\n# OpenOne\n\n**Unofficial MCP Server & API Client for Alteryx Analytics Platform**\n\n[](https://www.python.org/downloads/)\n[](LICENSE)\n[](https://modelcontextprotocol.io/)\n\n> **\u26a0\ufe0f DISCLAIMER**: This is NOT an official implementation. This project is a personal initiative and is not affiliated with, endorsed by, or supported by any company.\n\n\n## Overview\n\nOpenOne is an unofficial Model Context Protocol (MCP) server and Python API client for Alteryx Analytics Platform. It enables seamless integration between Claude and other MCP-compatible clients with your Alteryx Analytics Platform instance, providing programmatic access to schedules, datasets, plans and user management.\n\n### \ud83d\ude80 Quick Stats\n- **25 MCP Tools** across 8 functional categories\n- **Complete API Coverage** for all core Alteryx APIs including legacy APIs \n- **Production Ready** with comprehensive error handling\n- **Real-time Integration** with Claude Desktop\n\n## Features\n\n- **\ud83d\udd17 MCP-Compatible Server** - Direct integration with Claude and other MCP clients\n- **\ud83d\udc0d Python API Client** - Full-featured client for Alteryx Analytics Platform\n - **\ud83d\udcc5 Schedule Management** - Complete CRUD operations for workflow schedules\n - **\ud83d\uddc2\ufe0f Plan Management** - Create, run, and manage execution plans\n - **\ud83c\udfe2 Workspace Management** - Multi-workspace support and user administration\n - **\ud83d\udcca Dataset Management** - Access imported and wrangled datasets\n - **\u2699\ufe0f Workflow Management** - List, get, and run workflows\n - **\ud83d\udd04 Job Management** - Monitor job execution and retrieve inputs/outputs\n - **\ud83d\udc65 User Management** - User profiles and permission management\n - **\ud83c\udf0d Multi-Region Support** - Works with all regions worldwide\n- **\ud83d\udd04 Real-time Operations** - Live status monitoring and execution tracking\n\n## Installation\n\n### Prerequisites\n\n- Python 3.10 or higher\n- Alteryx Analytics Cloud Platform account\n- OAuth2 credentials (Client ID, initial Access Token & Refresh Token)\n\n### Install Options\n\n**From GitHub (Recommended)**:\n```bash\ngit clone https://github.com/jupiterbak/OpenOne.git\ncd OpenOne\npip install .\n```\n\n### Configuration\n\n#### Environment Variables\n\nSet up your OpenOne Analytics Platform credentials using environment variables:\n\n```bash\n# Required\nexport OPENONE_API_BASE_URL=\"https://api.eu1.alteryxcloud.com\"\nexport OPENONE_TOKEN_ENDPOINT=\"https://pingauth-eu1.alteryxcloud.com/as\"\nexport OPENONE_CLIENT_ID=\"your_client_id_here\"\nexport OPENONE_PROJECT_ID=\"your_project_id_here\"\nexport OPENONE_ACCESS_TOKEN=\"your_access_token_here\"\nexport OPENONE_REFRESH_TOKEN=\"your_refresh_token\"\n# Optional\nexport OPENONE_PERSISTENT_FOLDER=\"~/.openone\"\nexport OPENONE_VERIFY_SSL=1\n```\n\n#### Configuration File\n\nCreate a `.env` file in your project root:\n\n```env\nOPENONE_API_BASE_URL=https://api.eu1.alteryxcloud.com\nOPENONE_TOKEN_ENDPOINT=https://pingauth-eu1.alteryxcloud.com/as\nOPENONE_CLIENT_ID=your_client_id_here\nOPENONE_PROJECT_ID=your_project_id_here\nOPENONE_ACCESS_TOKEN=your_access_token_here\nOPENONE_REFRESH_TOKEN=your_refresh_token\nOPENONE_PERSISTENT_FOLDER=~/.openone\nOPENONE_VERIFY_SSL=1\n```\n\n#### MCP Server Setup - Claude Desktop Configuration\n\nAdd the following to your Claude configuration file:\n\n```json\n{\n \"mcpServers\": {\n \"openone\": {\n \"command\": \"python\",\n \"args\": [\"-m\", \"openone\"],\n \"env\": {\n \"OPENONE_API_BASE_URL\": \"https://api.eu1.alteryxcloud.com\",\n \"OPENONE_TOKEN_ENDPOINT\": \"https://pingauth-eu1.alteryxcloud.com/as\",\n \"OPENONE_CLIENT_ID\": \"your_client_id_here\",\n \"OPENONE_PROJECT_ID\": \"your_project_id_here\",\n \"OPENONE_ACCESS_TOKEN\": \"your_access_token_here\",\n \"OPENONE_REFRESH_TOKEN\": \"your_refresh_token\",\n \"OPENONE_PERSISTENT_FOLDER\": \"~/.openone\"\n }\n }\n }\n}\n```\n\nAlternative: Using a Configuration File\n\nInstead of setting environment variables in the Claude config, you can create a `.env` file and reference it:\n\n```json\n{\n \"mcpServers\": {\n \"openone\": {\n \"command\": \"python\",\n \"args\": [\"-m\", \"openone\"],\n \"cwd\": \"/path/to/your/project\",\n \"env\": {\n \"OPENONE_CONFIG_FILE\": \"/path/to/your/.env\"\n }\n }\n }\n}\n```\n\n#### Testing the MCP Server\n\nAfter configuration, restart Claude Desktop and test with these example queries:\n\n**Basic Operations:**\n- \"List all schedules in my OpenOne Analytics Platform instance\"\n- \"Show me my current workspace details and user count\"\n- \"Get a count of all my plans and datasets\"\n\n**Schedule Management:**\n- \"Disable the schedule with ID 12345 and tell me why\"\n- \"Show me all enabled schedules and their next run times\"\n- \"Delete all schedules that haven't run in the last 30 days\"\n\n**Data Operations:**\n- \"List all my datasets and show their connection status\"\n- \"Check if my database connections are working properly\"\n- \"Show me all wrangled datasets and their input sources\"\n\n**Advanced Queries:**\n- \"Run plan abc123 and monitor its execution status\"\n- \"Show me all workspace admins and their permissions\"\n- \"List my publications and delete any older than 6 months\"\n\n### API Client Usage\n\n### Basic Usage\n\n```python\nimport client\nfrom client.rest import ApiException\nfrom pprint import pprint\n\n# Configure the client\nconfiguration = client.Configuration()\napi_instance = client.ScheduleApi(client.ApiClient(configuration))\n\ntry:\n # List all schedules\n schedules = api_instance.list_schedules()\n print(f\"Found {len(schedules)} schedules\")\n \n # Get a specific schedule\n schedule = api_instance.get_schedule(schedule_id=\"12345\")\n pprint(schedule)\n \nexcept ApiException as e:\n print(f\"API Error: {e}\")\n```\n\n## MCP Available Tools\n\nThe MCP server provides comprehensive access to Alteryx Analytics Cloud through organized tool categories:\n\n### \ud83d\udcc5 Schedule Management Tools\n| Tool | Description | Parameters |\n|------|-------------|-------------|\n| `list_schedules` | List all schedules in the workspace | None |\n| `get_schedule` | Get details of a specific schedule | `schedule_id` |\n| `delete_schedule` | Delete a schedule by ID | `schedule_id` |\n| `enable_schedule` | Enable a schedule by ID | `schedule_id` |\n| `disable_schedule` | Disable a schedule by ID | `schedule_id` |\n| `count_schedules` | Get the count of schedules in workspace | None |\n\n### \ud83d\uddc2\ufe0f Plan Management Tools\n| Tool | Description | Parameters |\n|------|-------------|-------------|\n| `list_plans` | List all plans in current workspace | None |\n| `get_plan` | Get a plan by plan ID | `plan_id` |\n| `delete_plan` | Delete a plan by plan ID | `plan_id` |\n| `get_plan_schedules` | Get schedules for a plan by plan ID | `plan_id` |\n| `run_plan` | Run a plan by plan ID | `plan_id` |\n| `count_plans` | Get the count of plans in workspace | None |\n\n### \ud83c\udfe2 Workspace Management Tools\n| Tool | Description | Parameters |\n|------|-------------|-------------|\n| `list_workspaces` | List all available workspaces | None |\n| `get_current_workspace` | Get current workspace that user is in | None |\n| `get_workspace_configuration` | Get workspace configuration by workspace ID | `workspace_id` |\n| `list_workspace_users` | List users in a workspace by workspace ID | `workspace_id` |\n| `list_workspace_admins` | List admins in a workspace by workspace ID | `workspace_id` |\n\n### \ud83d\udc65 User Management Tools\n| Tool | Description | Parameters |\n|------|-------------|-------------|\n| `get_current_user` | Get current user information | None |\n| `get_user` | Get user details by user ID | `user_id` |\n\n### \ud83d\udcca Dataset Management Tools\n| Tool | Description | Parameters |\n|------|-------------|-------------|\n| `list_datasets` | List all datasets accessible to current user | None |\n| `get_dataset` | Get dataset details by dataset ID | `dataset_id` |\n\n### \ud83e\uddf9 Wrangled Dataset Management Tools\n| Tool | Description | Parameters |\n|------|-------------|-------------|\n| `list_wrangled_datasets` | List all wrangled datasets (produced by workflows) | None |\n| `get_wrangled_dataset` | Get wrangled dataset by wrangled dataset ID | `wrangled_dataset_id` |\n| `get_inputs_for_wrangled_dataset` | Get input datasets for wrangled dataset by wrangled dataset ID | `wrangled_dataset_id` |\n\n### \u2699\ufe0f Workflow Management Tools\n| Tool | Description | Parameters |\n|------|-------------|-------------|\n| `list_workflows` | List all workflows accessible to current user | None |\n| `get_workflow` | Get workflow details by workflow ID | `workflow_id` |\n| `run_workflow` | Run a workflow by workflow ID | `workflow_id` |\n\n### \ud83d\udd04 Job Management Tools\n| Tool | Description | Parameters |\n|------|-------------|-------------|\n| `list_job_groups` | List all job groups accessible to current user | None |\n| `get_job_group` | Get job group details by job ID | `job_id` |\n| `get_job_status` | Get status of a job by job ID | `job_id` |\n| `get_job_input` | Get all input datasets of a job by job ID | `job_id` |\n| `get_job_output` | Get all output datasets of a job by job ID | `job_id` |\n\n### Example Usage with Claude\n\nHere are some example queries you can use with Claude once the MCP server is configured:\n\n**Schedule Management:**\n- \"List all my schedules and show me which ones are currently enabled\"\n- \"Get details for schedule ID 12345 and tell me when it last ran\"\n- \"Disable the schedule with ID 67890 temporarily\"\n- \"Delete the schedule named 'old-workflow-schedule'\"\n\n**Plan Management:**\n- \"Show me all my plans and their current status\"\n- \"Run the plan with ID abc123 and monitor its progress\"\n- \"Get the schedules associated with my data processing plan\"\n\n**Workspace & User Management:**\n- \"List all workspaces I have access to\"\n- \"Show me all users in workspace ws-456 and their roles\"\n- \"Get my current user profile and permissions\"\n\n**Data Management:**\n- \"List all my datasets and show their sizes\"\n- \"Show me all my wrangled datasets and their input sources\"\n- \"Get details about dataset ds-456 and its metadata\"\n\n**Workflows & Jobs:**\n- \"List all my workflows and show which ones are active\"\n- \"Run workflow wf-789 and monitor its execution\"\n- \"Show me all job groups and their current status\"\n- \"Get the input and output datasets for job job-123\"\n\n### \ud83d\udd22 Tool Summary\n\n| Category | Tool Count | Key Operations |\n|----------|------------|----------------|\n| **Schedule Management** | 6 tools | List, Get, Delete, Enable, Disable, Count |\n| **Plan Management** | 6 tools | List, Get, Delete, Run, Get Schedules, Count |\n| **Workspace Management** | 5 tools | List, Get Current, Get Config, List Users/Admins |\n| **User Management** | 2 tools | Get Current User, Get User by ID |\n| **Dataset Management** | 2 tools | List, Get by ID |\n| **Wrangled Dataset Management** | 3 tools | List, Get, Get Inputs |\n| **Workflow Management** | 3 tools | List, Get, Run |\n| **Job Management** | 5 tools | List, Get, Status, Get Inputs/Outputs |\n| **Total** | **25 tools** | Complete Alteryx Platform integration |\n\n## \ud83e\udd1d Contributing\n\nWe welcome contributions! Here's how you can help:\n\n1. **Fork** the repository\n2. **Create** a feature branch (`git checkout -b feature/amazing-feature`)\n3. **Commit** your changes (`git commit -m 'Add amazing feature'`)\n4. **Push** to the branch (`git push origin feature/amazing-feature`)\n5. **Open** a Pull Request\n\n### Development Setup\n\n```bash\ngit clone https://github.com/jupiterbak/OpenOne.git\ncd OpenOne\npip install -e .[develop]\npytest # Run tests\n```\n\n### Code Style\n\n- Follow PEP 8 guidelines\n- Add type hints where appropriate\n- Include docstrings for all functions\n- Write tests for new features\n\n## \ud83d\udcc4 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n<div align=\"center\">\n\n**Made with \u2764\ufe0f for the Alteryx Community**\n\n[](https://github.com/jupiterbak/OpenOne)\n[](https://github.com/jupiterbak/OpenOne)\n\n</div>\n\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Model Context Protocol (MCP) server for Alteryx Analytics Cloud",
"version": "0.1.2",
"project_urls": null,
"split_keywords": [
"alteryx",
" analytics-cloud",
" mcp",
" model-context-protocol"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "2c6315b3164cd9fd4e0674abd3ce8c3ef4d66a5b54475ce8443922db62b32dcb",
"md5": "d24ad67faafb59c366992df818d6683d",
"sha256": "501bbf7656269372a1e87f96f5d89564131619b9142f2552791360353b5f9d50"
},
"downloads": -1,
"filename": "openone-0.1.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "d24ad67faafb59c366992df818d6683d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 4953102,
"upload_time": "2025-08-18T15:23:41",
"upload_time_iso_8601": "2025-08-18T15:23:41.432011Z",
"url": "https://files.pythonhosted.org/packages/2c/63/15b3164cd9fd4e0674abd3ce8c3ef4d66a5b54475ce8443922db62b32dcb/openone-0.1.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "c7416522a0b27cada3ffb20aa7e15b08dabeaa288802d405d77257c0e2f591ec",
"md5": "07c180aeff831c19c94499e8f9d5338d",
"sha256": "f652d88fad50048e1ec3da1c80167eae7878abd5ce03ab84dd87a1ffd564bf54"
},
"downloads": -1,
"filename": "openone-0.1.2.tar.gz",
"has_sig": false,
"md5_digest": "07c180aeff831c19c94499e8f9d5338d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 654413,
"upload_time": "2025-08-18T15:23:45",
"upload_time_iso_8601": "2025-08-18T15:23:45.152340Z",
"url": "https://files.pythonhosted.org/packages/c7/41/6522a0b27cada3ffb20aa7e15b08dabeaa288802d405d77257c0e2f591ec/openone-0.1.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-18 15:23:45",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "openone"
}