Hello 389 Directory Server community, I'm excited to share an experimental project: *LDAP Assistant MCP* - an AI-powered assistant for diagnosing *389 Directory Server* instances.
*What is it?* LDAP Assistant MCP is a Model Context Protocol (MCP) server that enables AI models like Claude to interact with your 389 DS instances. Instead of manually running dsconf/dsctl commands and parsing output, you can ask: - "What's wrong across all my servers?" - "Check replication status and tell me if there's any lag" - "Are there any unindexed searches causing performance issues?" The assistant runs the appropriate tools and provides actionable recommendations with severity levels. *Key Features (v0.2.0)* - *Health & Diagnostics:* first_look() for multi-server health overview, run_healthcheck() equivalent to dsctl healthcheck - *Replication:* status checks, topology mapping, lag analysis (CSN comparison), conflict detection - *Performance:* cache statistics, connection analysis, operation metrics, thread utilization - *Index Analysis:* list indexes, analyze against best practices, find unindexed searches from access logs - *Configuration: *server config retrieval, multi-server comparison, plugin listing - *User & Group Management: *list, search, filter users by status, check groups *Use Cases* *Support Engineers:* Rapid root cause analysis, multi-server health scans, replication troubleshooting *LDAP Administrators:* Performance tuning, index optimization, configuration audits *Getting Started* *Prerequisites:* - Python 3.13+ - uv package manager - MCP client (Claude Desktop, Claude Code, Cursor, or any MCP-compatible client) *Quick Setup:* 1. Clone and install: git clone https://github.com/droideck/ldap-assistant-mcp.git cd ldap-assistant-mcp uv venv source .venv/bin/activate uv pip install -r requirements.txt 2. Create servers.json with your server(s). You can configure local servers (with is_local: true and serverid for full diagnostics including disk/logs/etc) or remote servers (LDAP-only). 3. Install to your MCP client: fastmcp install claude-desktop fastmcp.json or fastmcp install claude-code fastmcp.json 4. Edit MCP client config to set LDAP_SERVERS_CONFIG path to your servers.json 5. Restart and start asking questions! *Important Notes* - Experimental - Early-stage project, APIs may change - Read-only - No write operations yet - Privacy mode - Set LDAP_MCP_EXPOSE_SENSITIVE_DATA=false to anonymize output - Plain text passwords - Use restrictive file permissions on config files *Feedback* I'd love to hear your thoughts: - What diagnostics would be most useful? - What operations would you want AI assistance with? *GitHub:* https://github.com/droideck/ldap-assistant-mcp *Issues:* https://github.com/droideck/ldap-assistant-mcp/issues *References:* - *Model Context Protocol:* https://modelcontextprotocol.io/introduction - *FastMCP:* https://gofastmcp.com - *lib389: *https://pypi.org/project/lib389/ Kind regards, Simon
-- _______________________________________________ 389-users mailing list -- [email protected] To unsubscribe send an email to [email protected] Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/[email protected] Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
