Skip to main content
Glama
operations.py2.27 kB
from typing import Any, Dict, List from datetime import datetime from mcp.types import Tool from ..config import get_base_url class OperationsController: def get_tools(self) -> List[Tool]: return [ Tool(name="operations_get_operation_permission_by_id", description="Gets operation permission by id.", inputSchema={"type":"object","properties":{"operationId":{"type":"number"},"baseUrl":{"type":"string","default":"https://sculxdon4av67499847-rs.su.retail.test.dynamics.com"}},"required":["operationId"]}), Tool(name="operations_get_operation_permissions", description="Returns a collection of operation permissions.", inputSchema={"type":"object","properties":{"baseUrl":{"type":"string","default":"https://sculxdon4av67499847-rs.su.retail.test.dynamics.com"}},"required":[]}), Tool(name="operations_search_journal_transactions", description="Search journal transactions.", inputSchema={"type":"object","properties":{"searchCriteria":{"type":"object"},"baseUrl":{"type":"string","default":"https://sculxdon4av67499847-rs.su.retail.test.dynamics.com"}},"required":["searchCriteria"]}), Tool(name="operations_get_inventory_available_to_promise", description="Get available inventory across all stores for a product.", inputSchema={"type":"object","properties":{"productId":{"type":"number"},"itemId":{"type":"string"},"inventoryLocationId":{"type":"string"},"baseUrl":{"type":"string","default":"https://sculxdon4av67499847-rs.su.retail.test.dynamics.com"}},"required":[]}), Tool(name="operations_void_suspended_transactions", description="Void suspended transactions by cart ids.", inputSchema={"type":"object","properties":{"suspendedCartIds":{"type":"array","items":{"type":"string"}},"baseUrl":{"type":"string","default":"https://sculxdon4av67499847-rs.su.retail.test.dynamics.com"}},"required":["suspendedCartIds"]}) ] async def handle_tool(self, name: str, arguments: Dict[str, Any]) -> Dict[str, Any]: base_url=arguments.get("baseUrl", get_base_url()) return {"api": f"MOCK {base_url}/api/CommerceRuntime/Operations/{name}", "toolName": name, "arguments": arguments, "status":"success", "timestamp": datetime.now().isoformat()+"Z", "mockData": {"result": "Success"}}

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/jiantmo/mcp-commerce'

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