RedHatLDAP-MCP
Provides read-only access to corporate LDAP directories, enabling AI assistants to search for people, navigate organizational hierarchies, and export contact information.
README
RedHat LDAP MCP Server
A specialized Model Context Protocol (MCP) server designed for corporate LDAP directories, with optimizations for Red Hat's LDAP environment and other OpenLDAP-based corporate systems.
๐ฏ Purpose
This MCP server provides read-only access to corporate LDAP directories, enabling AI assistants to:
- Search for people and organizational information
- Navigate corporate hierarchies and reporting structures
- Access contact information and organizational data
- Export directory information for business use
๐ Features
Corporate LDAP Optimized
- Anonymous bind support for read-only corporate directories
- Red Hat LDAP integration with rhatPerson schema support
- Schema auto-detection for different LDAP environments
- Corporate hierarchy tools for org charts and reporting structures
Read-Only & Secure
- No modification operations - purely informational
- Corporate firewall friendly - optimized for enterprise networks
- Flexible authentication - anonymous, simple, and SASL support planned
AI Assistant Ready
- MCP protocol compliance for Claude, Cursor, and other AI tools
- Structured responses with consistent JSON formatting
- Rich search capabilities across multiple person attributes
- Export functionality for contact lists and org charts
๐ง Available MCP Tools
People Search
search_people- Search for people by name, email, uid, departmentget_person_details- Get detailed information about a specific person
Organization Charts
get_organization_chart- Build hierarchical org charts from any managerfind_manager_chain- Get the complete management chain for any person
Groups & Teams
search_groups- Search for groups and teamsget_person_groups- Find all groups a person belongs toget_group_members- List all members of a specific group
Locations & Offices
find_locations- Discover office locations and people countsget_people_at_location- Find all colleagues at a specific office
Utilities
test_connection- Test LDAP connectivity and configuration
๐ ๏ธ Installation
# Clone the repository
git clone https://github.com/jlaska/RedHatLDAP-MCP.git
cd RedHatLDAP-MCP
# Create virtual environment and install
uv venv
uv pip install -e ".[dev]"
โ๏ธ Configuration
Create a configuration file (e.g., config/redhat-ldap.json):
{
"ldap": {
"server": "ldap://ldap.corp.redhat.com",
"base_dn": "dc=redhat,dc=com",
"auth_method": "anonymous",
"timeout": 30
},
"schema": {
"person_object_class": "rhatPerson",
"person_search_base": "ou=users,dc=redhat,dc=com",
"group_search_base": "ou=adhoc,ou=managedGroups,dc=redhat,dc=com",
"corporate_attributes": [
"rhatJobTitle", "rhatCostCenter", "rhatLocation",
"rhatBio", "manager", "rhatGeo"
]
},
"logging": {
"level": "INFO",
"format": "%(asctime)s - %(name)s - %(levelname)s - %(message)s"
}
}
๐ Usage
Claude CLI Integration (Recommended)
For the easiest setup with Claude CLI, use the included wrapper script:
# Add to Claude CLI (from project directory)
claude mcp add redhat-ldap /absolute/path/to/RedHatLDAP-MCP/scripts/run_mcp_server.sh
# Verify connection
claude mcp list
# Use in Claude CLI conversations
claude chat
> What's John Doe's mobile number?
The wrapper script automatically configures the environment and uses the local configuration.
Stdio Mode (for other MCP clients)
REDHAT_LDAP_CONFIG="config/redhat-ldap.json" uv run python -m redhat_ldap_mcp.server
HTTP Mode (for testing/development)
REDHAT_LDAP_CONFIG="config/redhat-ldap.json" uv run python -m redhat_ldap_mcp.server_http --host 0.0.0.0 --port 8813
๐ง MCP Client Configuration
Claude CLI
claude mcp add redhat-ldap "scripts/run_mcp_server.sh" -e REDHAT_LDAP_CONFIG=$PWD/config/redhat-ldap.json
๐ Available Tools
search_people- Find people by name, email, uid, or other attributesget_person_details- Get detailed information about a specific personget_organization_chart- Generate hierarchical org charts from any managerfind_manager_chain- Get the complete management chain for any personsearch_groups- Search for groups and teamsget_person_groups- Find all groups a person belongs toget_group_members- List all members of a specific groupfind_locations- Discover office locations and people countsget_people_at_location- Find all colleagues at a specific officetest_connection- Test LDAP connectivity and configuration
๐งช Development
# Run tests
pytest
# Format code
black src/ tests/
# Lint code
ruff check src/ tests/
# Type checking
mypy src/
๐ License
MIT License - see LICENSE file for details.
๐ค Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Run the test suite
- Submit a pull request
๐ Acknowledgments
- Built on the excellent architecture patterns from ActiveDirectoryMCP
- Powered by the Model Context Protocol SDK
- LDAP integration via the ldap3 library
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
Neon Database
MCP server for interacting with Neon Management API and databases
E2B
Using MCP to run code via e2b.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.