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

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

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