Skip to main content
Glama
ivossos

FCCS MCP Agentic Server

by ivossos

smart_retrieve_with_movement

Retrieve financial data from Oracle EPM Cloud FCCS using customizable Movement dimensions to analyze account transactions and consolidation metrics.

Instructions

Smart data retrieval with configurable Movement dimension / Recuperacao inteligente com dimensao Movement customizavel

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
accountYesThe Account member (e.g., 'FCCS_Net Income')
movementYesThe Movement member (e.g., 'FCCS_Mvmts_Subtotal')
entityNoThe Entity member (default: 'FCCS_Total Geography')
periodNoThe Period member (default: 'Jan')
yearsNoThe Years member (default: 'FY24')
scenarioNoThe Scenario member (default: 'Actual')
consolidationNoThe Consolidation member (default: 'FCCS_Entity Total')

Implementation Reference

  • The primary handler function implementing the tool logic. It accepts parameters for account, movement, and defaults for other dimensions, builds a grid definition for the FCCS Consol cube, and exports the data slice using the client.
    async def smart_retrieve_with_movement(
        account: str,
        movement: str,
        entity: str = "FCCS_Total Geography",
        period: str = "Jan",
        years: str = "FY24",
        scenario: str = "Actual",
        consolidation: str = "FCCS_Entity Total"
    ) -> dict[str, Any]:
        """Smart data retrieval with configurable Movement dimension / Recuperacao inteligente com dimensao Movement customizavel.
    
        Args:
            account: The Account member (e.g., 'FCCS_Net Income').
            movement: The Movement member (e.g., 'FCCS_Mvmts_Subtotal').
            entity: The Entity member (default: 'FCCS_Total Geography').
            period: The Period member (default: 'Jan').
            years: The Years member (default: 'FY24').
            scenario: The Scenario member (default: 'Actual').
            consolidation: The Consolidation member (default: 'FCCS_Entity Total').
    
        Returns:
            dict: The retrieved data for the specified dimensions.
        """
        # Build grid definition with hardcoded defaults for 14 dimensions, except Movement
        grid_definition = {
            "suppressMissingBlocks": True,
            "pov": {
                "members": [
                    [years], [scenario], ["FCCS_YTD"], [consolidation],
                    ["FCCS_Intercompany Top"], ["FCCS_Total Data Source"],
                    [movement], [entity], ["Entity Currency"],
                    ["Total Custom 3"], ["Total Region"], ["Total Venturi Entity"],
                    ["Total Custom 4"]
                ]
            },
            "columns": [{"members": [[period]]}],
            "rows": [{"members": [[account]]}]
        }
        result = await _client.export_data_slice(_app_name, "Consol", grid_definition)
        return {"status": "success", "data": result}
  • The tool's input schema definition, specifying properties, types, descriptions, and required fields for validation.
    {
        "name": "smart_retrieve_with_movement",
        "description": "Smart data retrieval with configurable Movement dimension / Recuperacao inteligente com dimensao Movement customizavel",
        "inputSchema": {
            "type": "object",
            "properties": {
                "account": {
                    "type": "string",
                    "description": "The Account member (e.g., 'FCCS_Net Income')",
                },
                "movement": {
                    "type": "string",
                    "description": "The Movement member (e.g., 'FCCS_Mvmts_Subtotal')",
                },
                "entity": {
                    "type": "string",
                    "description": "The Entity member (default: 'FCCS_Total Geography')",
                },
                "period": {
                    "type": "string",
                    "description": "The Period member (default: 'Jan')",
                },
                "years": {
                    "type": "string",
                    "description": "The Years member (default: 'FY24')",
                },
                "scenario": {
                    "type": "string",
                    "description": "The Scenario member (default: 'Actual')",
                },
                "consolidation": {
                    "type": "string",
                    "description": "The Consolidation member (default: 'FCCS_Entity Total')",
                },
            },
            "required": ["account", "movement"],
        },
    },
  • Registration of the tool handler in the central TOOL_HANDLERS dictionary, mapping the tool name to its implementation function imported from data.py.
    "smart_retrieve_consolidation_breakdown": data.smart_retrieve_consolidation_breakdown,
    "smart_retrieve_with_movement": data.smart_retrieve_with_movement,
  • Aggregation of all tool definitions, including the schema from data.TOOL_DEFINITIONS, into the central ALL_TOOL_DEFINITIONS list used by the agent.
    ALL_TOOL_DEFINITIONS = (
        application.TOOL_DEFINITIONS +
        jobs.TOOL_DEFINITIONS +
        dimensions.TOOL_DEFINITIONS +
        journals.TOOL_DEFINITIONS +
        data.TOOL_DEFINITIONS +
        reports.TOOL_DEFINITIONS +
        consolidation.TOOL_DEFINITIONS +
        memo.TOOL_DEFINITIONS +
        feedback.TOOL_DEFINITIONS +
        local_data.TOOL_DEFINITIONS
    )

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/ivossos/fccs-mcp-ag-server'

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