{"name":"io.github.droideck/ldap-assistant-mcp","slug":"droideck-ldap-assistant-mcp","title":"LDAP Assistant MCP","description":"MCP server for 389 Directory Server health diagnostics, log analysis, and SOS-report investigation","url":"https://mcp.market/server/droideck-ldap-assistant-mcp","rating":null,"grade":"A","score":92,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":28,"stars":1,"forks":2,"downloads_week":21,"last_push_at":"2026-09-25T02:24:24.000Z","license":"GPL-3.0"},"uptime":null,"claimed":false,"transport":"pypi","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/droideck/ldap-assistant-mcp","website":"https://github.com/droideck/ldap-assistant-mcp","version":"0.5.0","remotes":[],"packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"ldap-assistant-mcp","version":"0.5.0","runtimeHint":"uvx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Absolute path to the servers.json file describing the LDAP servers, offline instances, or SOS-report archives to analyze","isRequired":true,"format":"filepath","name":"LDAP_SERVERS_CONFIG"}]}],"tools":[{"name":"analyze_access_log","description":"Analyze access log statistics (operations, errors, slow queries). LOCAL/ARCHIVE.","write_action":false,"price_micros":0,"input_schema":null},{"name":"analyze_archive","description":"Inventory available data in an offline instance or archive source, such as an SOS report or config extract.","write_action":false,"price_micros":0,"input_schema":null},{"name":"analyze_audit_log","description":"Analyze audit log statistics (change types, actors). LOCAL/ARCHIVE.","write_action":false,"price_micros":0,"input_schema":null},{"name":"analyze_error_log","description":"Analyze error log statistics (severity, components, patterns). LOCAL/ARCHIVE.","write_action":false,"price_micros":0,"input_schema":null},{"name":"analyze_index_configuration","description":"Audit index configuration against best practices with remediation commands.","write_action":false,"price_micros":0,"input_schema":null},{"name":"check_replication_lag","description":"Measure replication lag by comparing supplier and consumer CSNs. LIVE only.","write_action":false,"price_micros":0,"input_schema":null},{"name":"compare_dse_configs","description":"Compare entire dse.ldif between two offline/archive servers entry-by-entry.","write_action":false,"price_micros":0,"input_schema":null},{"name":"compare_server_configurations","description":"Compare cn=config attributes between two servers side-by-side.","write_action":false,"price_micros":0,"input_schema":null},{"name":"describe_connection","description":"Show the stored connection settings (hostname, port, SSL, base DN, auth method) for a configured OpenLDAP server.","write_action":false,"price_micros":0,"input_schema":null},{"name":"find_unindexed_searches","description":"Find unindexed searches (notes=U/A) in access logs with fix suggestions.","write_action":false,"price_micros":0,"input_schema":null},{"name":"first_look","description":"Multi-server health overview — the first tool to call for any directory investigation.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_agreement_status","description":"Get detailed status for one or all replication agreements. LIVE only.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_backend_configuration","description":"Retrieve backend configuration, cache settings, and replication role.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_cache_statistics","description":"Analyze database and entry cache efficiency. LIVE only.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_connection_statistics","description":"Analyze connection patterns and file descriptor usage. LIVE only.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_operation_statistics","description":"Get operation counts by type and bind method distribution. LIVE only.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_performance_summary","description":"Combined performance overview — the first tool when the server is slow or for any performance question. LIVE only.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_replication_status","description":"Get replication configuration, RUV, and agreement status for one server. LIVE only.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_replication_topology","description":"Map the complete replication topology across all configured servers. LIVE only.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_resource_utilization","description":"Get memory, CPU, and disk usage for the Directory Server process. LIVE only.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_server_configuration","description":"Retrieve cn=config attributes from a live, offline, or archive server.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_thread_statistics","description":"Analyze worker thread utilization and contention. LIVE only.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_user_details","description":"Get full attributes plus computed lock/expiry status for one user, looked up by uid.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ldap_search","description":"Run an arbitrary LDAP search (any base DN, scope, and filter) when no specialized tool fits.","write_action":true,"price_micros":0,"input_schema":null},{"name":"list_active_users","description":"List only users whose computed account status is active (not locked or inactivity-expired).","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_all_groups","description":"List directory groups with their full attributes, including membership (member/uniqueMember).","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_all_users","description":"List all user accounts regardless of status, with computed lock/active status per user.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_healthcheck_errors","description":"List all known DSLE error codes that ``run_healthcheck`` can return.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_healthchecks","description":"List available health checks for a server in ``category:check`` format.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_indexes","description":"List all configured indexes (attribute + VLV) per backend.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_locked_users","description":"List users whose accounts are locked, whether directly or indirectly (account policy / inactivity).","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_plugins","description":"List server plugins with their enabled/disabled status.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_replication_conflicts","description":"Find replication conflict and glue entries that need resolution. LIVE only.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_servers","description":"List all configured servers with their connection modes.","write_action":false,"price_micros":0,"input_schema":null},{"name":"parse_access_log","description":"Parse access log entries with full detail (requires expose_sensitive_data).","write_action":false,"price_micros":0,"input_schema":null},{"name":"parse_audit_log","description":"Parse audit log entries with full detail (requires expose_sensitive_data).","write_action":false,"price_micros":0,"input_schema":null},{"name":"parse_error_log","description":"Parse error log entries with full detail (requires expose_sensitive_data).","write_action":false,"price_micros":0,"input_schema":null},{"name":"run_healthcheck","description":"Run targeted lint checks on a single server (like ``dsctl healthcheck``).","write_action":true,"price_micros":0,"input_schema":null},{"name":"run_monitor","description":"Return raw cn=monitor attributes for a server or specific backend.","write_action":true,"price_micros":0,"input_schema":null},{"name":"search_users_by_attribute","description":"Search users by any single attribute=value match (e.g. departmentNumber, title, mail domain).","write_action":false,"price_micros":0,"input_schema":null},{"name":"search_users_by_name","description":"Search users by name substring or '*' wildcard across uid, cn, givenName, sn, displayName, and mail.","write_action":false,"price_micros":0,"input_schema":null},{"name":"server_health","description":"Probe the MCP service itself (NOT directory server health — use ``first_look`` for that).","write_action":false,"price_micros":0,"input_schema":null},{"name":"validate_configuration","description":"Run static configuration lint on dse.ldif (like ``run_healthcheck`` but offline).","write_action":true,"price_micros":0,"input_schema":null},{"name":"whoami","description":"Verify credentials by binding to the OpenLDAP server and returning the authenticated identity (LDAP Who Am I).","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":92,"grade":"A","scanned_at":"2026-09-26T11:38:33.520Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-26T11:38:33.519Z","components":{"code":{"score":25,"max":25,"notes":["37 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 1 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"pypi","identifier":"ldap-assistant-mcp","version":"0.5.0","found":true,"weeklyDownloads":21,"license":"GPL-3.0-or-later","dependencyCount":7,"publishedAt":"2026-07-02T06:16:22.713674Z","repositoryUrl":"https://github.com/droideck/ldap-assistant-mcp"}],"repo":{"found":true,"owner":"droideck","repo":"ldap-assistant-mcp","archived":false,"pushedAt":"2026-09-25T02:24:24Z","stars":1,"forks":2,"openIssues":4,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/5634892?v=4","ownerCreatedAt":"2013-10-08T04:49:20Z","license":"GPL-3.0"},"icon":{"url":"https://avatars.githubusercontent.com/u/5634892?v=4&s=128","source":"github"},"presence":{"stars":1,"forks":2,"downloadsWeek":21,"license":"GPL-3.0","lastPushAt":"2026-09-25T02:24:24.000Z","score":28}}}},"grade_history":[],"reviews":[]}