{"name":"io.mcp-hangar/hangar","slug":"mcp-hangar-hangar","title":"MCP Hangar","description":"Policy enforcement plane for MCP: every tool call ends in a verdict. Self-hosted, MIT.","url":"https://mcp.market/server/mcp-hangar-hangar","rating":null,"grade":"A","score":94,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":44,"stars":15,"forks":7,"downloads_week":713,"last_push_at":"2026-09-19T12:01:16.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"pypi","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/mcp-hangar/mcp-hangar","website":"https://mcp-hangar.io","version":"2.21.0","remotes":[],"packages":[{"registryType":"pypi","identifier":"mcp-hangar","version":"2.21.0","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Path to config.yaml declaring the upstream MCP servers and policy. Without it Hangar starts on a demo config that serves no real upstream.","format":"filepath","name":"MCP_CONFIG"}]}],"tools":[{"name":"hangar_approve","description":"Approve a pending or quarantined mcp_server for registration.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hangar_delete_continuation","description":"Delete a cached continuation to free resources.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hangar_details","description":"Get configuration and runtime info for a mcp_server or group.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hangar_discover","description":"Trigger immediate discovery scan across all enabled sources.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hangar_discovered","description":"List mcp_servers pending registration (awaiting approval).","write_action":false,"price_micros":0,"input_schema":null},{"name":"hangar_fetch_continuation","description":"Fetch full or remaining content from a truncated batch response.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hangar_group_list","description":"List all mcp_server groups with per-member details.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hangar_group_rebalance","description":"Force rebalancing for a mcp_server group.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hangar_health","description":"Get registry health status including security metrics.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hangar_list","description":"List all mcp_servers and groups with precise numeric values.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hangar_load","description":"Load an MCP mcp_server from the official registry at runtime.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hangar_metrics","description":"Get detailed metrics for mcp_servers, groups, and system components.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hangar_quarantine","description":"List quarantined mcp_servers with failure reasons.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hangar_reload_config","description":"Reload configuration from file and apply changes.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hangar_sources","description":"List discovery sources with health status.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hangar_start","description":"Start a mcp_server or all members of a group.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hangar_status","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"hangar_stop","description":"Stop a mcp_server or all members of a group.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hangar_tools","description":"Get tool schemas (JSON Schema) for a mcp_server.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hangar_unload","description":"Unload a hot-loaded mcp_server.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hangar_warm","description":"Pre-start mcp_servers to avoid cold start latency on first hangar_call.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":94,"grade":"A","scanned_at":"2026-09-19T21:13:46.262Z","report":{"scannerVersion":"0.1.8","scannedAt":"2026-09-19T21:13:46.229Z","components":{"code":{"score":25,"max":25,"notes":["457 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 0 days ago"]},"identity":{"score":9,"max":10,"notes":["registry namespace matches repository owner","website matches verified namespace"]}},"findings":[],"inputs":{"packages":[{"registryType":"pypi","identifier":"mcp-hangar","version":"2.21.0","found":true,"license":"MIT","dependencyCount":37,"publishedAt":"2026-09-16T20:57:16.006171Z","repositoryUrl":"https://github.com/mcp-hangar/mcp-hangar"}],"repo":{"found":true,"owner":"mcp-hangar","repo":"mcp-hangar","archived":false,"pushedAt":"2026-09-19T12:01:16Z","stars":15,"forks":7,"openIssues":42,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/259942663?v=4","ownerCreatedAt":"2026-02-06T19:21:16Z","license":"MIT"},"icon":{"url":"https://mcp-hangar.io/favicon.svg","source":"registry"},"presence":{"stars":15,"forks":7,"downloadsWeek":713,"license":"MIT","lastPushAt":"2026-09-19T12:01:16.000Z","score":44}}}},"grade_history":[{"kind":"restore","fromGrade":"C","toGrade":"A","reason":"score 94","createdAt":"2026-09-19T21:13:46.883Z"}],"reviews":[]}