{"protocol":"mcp-json-rpc","protocolVersion":"2025-11-25","tools":[{"description":"Checks which TCP ports are publicly visible on the source IP that invokes this tool. The tool never accepts arbitrary target IPs, hostnames, CIDR ranges, domains, or URLs.","inputSchema":{"additionalProperties":false,"properties":{"expect_open":{"description":"Optional exact baseline of ports that must be open. Overrides policy with exact-match evaluation.","items":{"maximum":65535,"minimum":1,"type":"integer"},"maxItems":50,"type":"array"},"intent":{"description":"Optional defensive interpretation preset for the request source IP. It may select bounded profile/policy defaults, but never accepts arbitrary targets.","enum":["general-exposure","web-deploy","remote-access","database-exposure"],"type":"string"},"policy":{"default":"strict","enum":["strict","web","remote-admin","database-private","none"],"type":"string"},"ports":{"description":"Optional TCP ports to check on the request source IP. Maximum 50 with speed=deep.","items":{"maximum":65535,"minimum":1,"type":"integer"},"maxItems":50,"type":"array"},"scan_profile":{"default":"default","enum":["default","web","databases","mail","top1000"],"type":"string"},"speed":{"default":"balanced","description":"When omitted, root, /plain, and top1000 use fast for one-request UX; default, smaller named profiles, and custom ports default to balanced on /json and /check.","enum":["fast","balanced","deep"],"type":"string"},"view":{"default":"full","description":"Response projection for structuredContent. Use min for the stable canonical machine contract without support/community/operator-card blocks.","enum":["full","min"],"type":"string"}},"type":"object"},"name":"get_visible_ports","safety":{"arbitrary_targets_allowed":false,"cidr_scanning_allowed":false,"defensive_only":true,"exploitation_allowed":false,"request_source_only":true},"title":"IfPort request-source port visibility"}],"transport":{"methods":["initialize","notifications/initialized","tools/list","tools/call"],"streamableHttpEndpoint":"https://ifport.io/mcp"}}