Skip to main content

MCP server for ivoryOS.

Project description

IvoryOS MCP server

License: MIT

Serve as a robot control interface using IvoryOS and Model Context Protocol (MCP) to design, manage workflows, and interact with the current hardware/software execution layer.

🚀 Quickstart with Claude Desktop

Install uv. Open up the configuration file, and add IvoryOS MCP config.

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "IvoryOS MCP": {
      "command": "uvx",
      "args": [
        "ivoryos-mcp"
      ],
      "env": {
        "IVORYOS_URL": "http://127.0.0.1:8000/ivoryos",
        "IVORYOS_USERNAME": "<IVORYOS_USERNAME>",
        "IVORYOS_PASSWORD": "<IVORYOS_PASSWORD>"
      }
    }
  }
}

📦 Installation

Install uv.

1. Clone the Repository

git clone https://gitlab.com/heingroup/ivoryos-mpc
cd ivoryos-mcp

2. Install dependencies

When using IDE (e.g. PyCharm), the uv environment might be configured, you can skip this section.

python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
uv pip install -r uv.lock

⚙️ Configuration

Option 1: in .env, change ivoryOS url and login credentials.

IVORYOS_URL=http://127.0.0.1:8000/ivoryos
IVORYOS_USERNAME=admin
IVORYOS_PASSWORD=admin

Option 2: In ivoryos_mcp/server.py, change ivoryOS url and login credentials.

url = "http://127.0.0.1:8000/ivoryos"
login_data = {
    "username": "admin",
    "password": "admin",
}

🚀 Install the server (in Claude Desktop)

mcp install ivoryos_mcp/server.py

✨ Features

Category Feature Route Description
ℹ️ General Tools platform-info GET /instruments Get ivoryOS info and signature of the platform
execution-status GET /executions/status Check if system is busy and current/last task status
ℹ️ Workflow Design list-workflow-scripts GET /library/<deck_name> List all workflow scripts from the database
load-workflow-script GET /library/<workflow_name> Load a workflow script from the database
submit-workflow-script POST /draft/submit_python Save a workflow Python script to the database
get-optmizer-schema POST /executions/optimizer_schema Get all optimizers schema
ℹ️ Workflow Data list-workflow-data GET /executions/records List available workflow execution data
load-workflow-data GET /executions/records/<workflow_id> Load execution log and data file
🤖 Direct Control execute-task POST /instruments/<component> Call platform function directly
🤖 Workflow Run run-workflow-repeat POST /executions/config Run workflow scripts repeatedly with static parameters
run-workflow-kwargs POST /executions/config Run workflow scripts with dynamic parameters
run-workflow-campaign POST /executions/campaign Run workflow campaign with an optimizer
🤖 Workflow Control pause-and-resume GET /executions/pause-resume Pause or resume the workflow execution
abort-pending-workflow GET /executions/abort/next-iteration Finish current iteration, abort future executions
stop-current-workflow GET /executions/abort/next-task Safe stop of current workflow

⚠️ ℹ️ are resources, but decorated as tool due to the current issue with MCP Python SDK and Claude Desktop integration.
It's recommended to only use allow always for ℹ️ tasks
and use allow once for 🤖 tasks. These tasks will trigger actual actions on your hosted Python code.

🧪 Examples

The example prompt uses the abstract SDL example.

Platform info

status.gif

Load prebuilt workflow script

load script.gif

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ivoryos_mcp-0.1.7.tar.gz (7.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ivoryos_mcp-0.1.7-py3-none-any.whl (6.6 kB view details)

Uploaded Python 3

File details

Details for the file ivoryos_mcp-0.1.7.tar.gz.

File metadata

  • Download URL: ivoryos_mcp-0.1.7.tar.gz
  • Upload date:
  • Size: 7.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.19

File hashes

Hashes for ivoryos_mcp-0.1.7.tar.gz
Algorithm Hash digest
SHA256 98557e2c17f514935b6ad347e79003deeec41032fd530d25985a850c324303c4
MD5 7036a5800645e6a935b9177a0679df5c
BLAKE2b-256 56cf71eca3f2c2bdc38dc1e202f940e0cfce6cb1f2a1876afff530540a0be724

See more details on using hashes here.

File details

Details for the file ivoryos_mcp-0.1.7-py3-none-any.whl.

File metadata

  • Download URL: ivoryos_mcp-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 6.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.19

File hashes

Hashes for ivoryos_mcp-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 89dfd0ba66454656e6d5542aa77e243aa379693ef9fa60610f305e63ea3f6f5f
MD5 aac757ca180d504ef5e9e1885d77b486
BLAKE2b-256 706c5e46a8be107371d27ce72b8be3ac469676c16de390e0eda311817eceb42b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page