Skip to main content
Glama

Visum Thinker MCP Server

MIT License
filter-mode-c-segments.js•3.13 kB
import net from 'net'; const pythonCode = ` import sys print("FILTRAGGIO DEMAND SEGMENTS DEL MODO 'C' (PrT)", file=sys.stderr) print("=" * 80, file=sys.stderr) mode_c_segments = [] try: all_segments = visum.Net.DemandSegments.GetAll for seg in all_segments: code = seg.AttValue("CODE") mode = seg.AttValue("MODE") name = seg.AttValue("NAME") if seg.AttValue("NAME") else "" # Filtra solo modo "C" if mode == "C": mode_c_segments.append({ "code": code, "name": name, "mode": mode }) print(f"\\nTrovati {len(mode_c_segments)} segments del modo 'C':\\n", file=sys.stderr) for i, seg in enumerate(mode_c_segments, 1): print(f"{i:2}. {seg['code']:20} - {seg['name']}", file=sys.stderr) # Crea la stringa comma-separated per DSEGSET dsegset_value = ",".join([seg["code"] for seg in mode_c_segments]) print(f"\\n{'=' * 80}", file=sys.stderr) print(f"DSEGSET VALUE (comma-separated):", file=sys.stderr) print(f"{dsegset_value}", file=sys.stderr) print(f"\\nTotale segments: {len(mode_c_segments)}", file=sys.stderr) except Exception as e: print(f"Errore: {e}", file=sys.stderr) import traceback traceback.print_exc(file=sys.stderr) mode_c_segments = [] dsegset_value = "" result = { "status": "ok", "segments": mode_c_segments, "dsegset": dsegset_value, "count": len(mode_c_segments) } `; const client = new net.Socket(); let welcomeReceived = false; console.log('šŸŽÆ FILTRAGGIO SEGMENTS DEL MODO "C"'); console.log('='.repeat(60)); client.connect(7905, '::1', () => { console.log('āœ… Connesso\n'); }); client.on('data', (data) => { const response = JSON.parse(data.toString()); if (!welcomeReceived && response.type === 'project_welcome') { welcomeReceived = true; const request = { type: 'query', requestId: Date.now(), description: 'Filtra segments modo C', code: pythonCode }; client.write(JSON.stringify(request) + '\n'); } else { if (response.success && response.result.status === 'ok') { const res = response.result; console.log(`\nāœ… Trovati ${res.count} segments del modo 'C'\n`); res.segments.forEach((seg, i) => { console.log(`${i+1}. ${seg.code} - ${seg.name}`); }); console.log('\n' + '='.repeat(60)); console.log('šŸ“ VALORE DSEGSET (comma-separated):'); console.log('='.repeat(60)); console.log(res.dsegset); console.log('\nšŸ’” Usa questo valore per configurare DSEGSET nel PrT Assignment!'); } else { console.log('āŒ', response.error || response.result?.error); } console.log(`\nā±ļø ${response.executionTimeMs}ms`); client.destroy(); } }); client.on('close', () => console.log('\nšŸ”Œ Chiuso')); client.on('error', (err) => console.error('āŒ', err.message));

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