Skip to main content
Glama
caretdev

InterSystems IRIS MCP Server

interoperability_production_start

Start an Interoperability Production to enable data exchange and workflow execution between systems in InterSystems IRIS.

Instructions

Start an Interoperability Production

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNo

Implementation Reference

  • The async handler function that implements the tool logic: starts the Interoperability Production by calling Ens.Director.StartProduction on IRIS and verifies the status.
    async def interoperability_production_start(
        ctx: Context,
        name: str = None,
    ) -> str:
        logger.info(
            "Starting Interoperability Production" + f": {name}" if name else "."
        )
        iris = ctx.iris
        raise_on_error(
            iris,
            iris.classMethodString(
                "Ens.Director", "StartProduction", *([name] if name else [])
            ),
        )
        refname = IRISReference(iris)
        name and refname.setValue(name)
        refstatus = IRISReference(iris)
        status = iris.classMethodString(
            "Ens.Director", "GetProductionStatus", refname, refstatus
        )
        if not name:
            name = refname.getValue()
        if (
            status != "1"
            or ProductionStatus(int(refstatus.getValue())) != ProductionStatus.Running
        ):
            raise ValueError(f"Production {name} not started.")
        return "Started production"
  • The @server.tool decorator registers the 'interoperability_production_start' function as an MCP tool.
    @server.tool(description="Start an Interoperability Production")
  • Invocation of the init function from interoperability.py, which performs the tool registrations for all interoperability tools including 'interoperability_production_start'.
    interoperability(server, logger)
  • Enum used by the handler to check and report production status.
    class ProductionStatus(Enum):
        Unknown = 0
        Running = 1
        Stopped = 2
        Suspended = 3
        Troubled = 4
        NetworkStopped = 5
        ShardWorkerProhibited = 6

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/caretdev/mcp-server-iris'

If you have feedback or need assistance with the MCP directory API, please join our Discord server