Skip to main content
Glama

Visum Thinker MCP Server

MIT License
test-explore-item-structure.json•2.62 kB
{"method":"tools/call","params":{"name":"project_execute","arguments":{"projectId":"S000009result_1278407893","code":"# Esplora la struttura completa di un listLayoutItem per capire dove sono le colonne\nimport os\nimport xml.etree.ElementTree as ET\nresult = {}\ntry:\n project_path = visum.GetPath(1)\n project_dir = os.path.dirname(project_path)\n lay_file = os.path.join(project_dir, 'tabelle_report.lay')\n \n tree = ET.parse(lay_file)\n root = tree.getroot()\n \n # Trova il primo listLayoutItem e stampa tutta la sua struttura\n first_item = root.find('.//listLayoutItem')\n \n if first_item is not None:\n # Funzione ricorsiva per esplorare l'albero\n def explore_element(elem, depth=0, max_depth=5):\n if depth > max_depth:\n return []\n \n info = []\n indent = ' ' * depth\n \n # Informazioni elemento corrente\n elem_info = f\"{indent}<{elem.tag}\"\n if elem.attrib:\n attrs = ', '.join([f\"{k}={v[:50]}\" if len(str(v)) > 50 else f\"{k}={v}\" for k, v in elem.attrib.items()])\n elem_info += f\" {attrs}\"\n elem_info += \">\"\n info.append(elem_info)\n \n # Testo se presente\n if elem.text and elem.text.strip():\n info.append(f\"{indent} TEXT: {elem.text.strip()[:100]}\")\n \n # Esplora figli\n for child in elem:\n info.extend(explore_element(child, depth+1, max_depth))\n \n return info\n \n structure = explore_element(first_item, max_depth=4)\n result['first_item_structure'] = structure[:100] # Prime 100 righe\n result['total_lines'] = len(structure)\n \n # Cerca specificamente elementi che potrebbero contenere colonne\n column_elements = []\n for elem in first_item.iter():\n if 'entry' in elem.tag.lower() or 'column' in elem.tag.lower() or 'attribute' in elem.tag.lower():\n column_elements.append({\n 'tag': elem.tag,\n 'attribs': dict(elem.attrib)\n })\n \n result['column_like_elements'] = column_elements[:20]\n result['total_column_elements'] = len(column_elements)\n \nexcept Exception as e:\n result['error'] = str(e)\n import traceback\n result['traceback'] = traceback.format_exc()[:500]\nresult","description":"Esplora struttura completa di un listLayoutItem"}},"jsonrpc":"2.0","id":24}

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/multiluca2020/visum-thinker-mcp-server'

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