{"name":"io.github.yaniswav/topicforge","slug":"yaniswav-topicforge","title":"TopicForge","description":"Read-only MCP server for ROS2 and DDS: topics, participants, QoS mismatches, bags.","url":"https://mcp.market/server/yaniswav-topicforge","rating":null,"grade":"A","score":85,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":24,"stars":3,"forks":0,"downloads_week":null,"last_push_at":"2026-09-05T15:00:10.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"pypi","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/yaniswav/TopicForge","website":"https://github.com/yaniswav/TopicForge#readme","version":"0.5.2","remotes":[],"packages":[{"registryType":"pypi","identifier":"topicforge","version":"0.5.2","transport":{"type":"stdio"},"environmentVariables":[{"description":"mock (deterministic fixtures, no ROS2 needed), live, or auto. Defaults to auto.","format":"string","default":"auto","name":"TOPICFORGE_MODE"},{"description":"DDS backend: mock, cyclone, fast, or auto. Requires the matching extra, e.g. pip install topicforge[dds].","format":"string","default":"mock","name":"TOPICFORGE_DDS_BACKEND"},{"description":"DDS domain id to observe, 0-232. Joined at startup; changing it requires a restart.","format":"number","default":"0","name":"TOPICFORGE_DDS_DOMAIN_ID"},{"description":"Opt-in anonymous telemetry, off by default. When off, no network code path executes.","format":"string","default":"off","name":"TOPICFORGE_TELEMETRY"}]}],"tools":[{"name":"analyze_bag","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"detect_qos_mismatches","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_topic_info","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"health_check","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_participants","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_topics","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"participant_events","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"peek_bag_samples","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"peek_dds_samples","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"sample_messages","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"topic_metrics","description":"","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":85,"grade":"A","scanned_at":"2026-09-20T11:38:54.100Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-20T11:38:54.046Z","components":{"code":{"score":20,"max":25,"notes":["45 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":15,"max":15,"notes":["last push 15 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[{"id":"exec.shell-true","severity":"medium","component":"code","title":"subprocess with shell=True","evidence":"topicforge-0.5.2/src/topicforge/adapters/ros2_live/adapter.py: … .cmd/.bat shims work # without shell=True. resolved = shutil.which(cmd[0]…"}],"inputs":{"packages":[{"registryType":"pypi","identifier":"topicforge","version":"0.5.2","found":true,"dependencyCount":19,"publishedAt":"2026-08-22T20:24:49.839763Z","repositoryUrl":"https://github.com/yaniswav/TopicForge"}],"repo":{"found":true,"owner":"yaniswav","repo":"TopicForge","archived":false,"pushedAt":"2026-09-05T15:00:10Z","stars":3,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/18010332?v=4","ownerCreatedAt":"2016-03-22T15:13:01Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/18010332?v=4&s=128","source":"github"},"presence":{"stars":3,"forks":0,"downloadsWeek":null,"license":"MIT","lastPushAt":"2026-09-05T15:00:10.000Z","score":24}}}},"grade_history":[],"reviews":[]}