Bloodhound MCP Server

A Model Context Protocol (MCP) server that connects LLMs to BloodHound Community Edition and BloodHound Enterprise. Ask questions in natural

Local serverstdioPython

What is the Bloodhound MCP MCP server?

Bloodhound mcp mcp server connects Bloodhound MCP to AI assistants that speak the Model Context Protocol. A Model Context Protocol (MCP) server that connects LLMs to BloodHound Community Edition and BloodHound Enterprise. Ask questions in natural language, get attack path analysis, run Cypher queries, and explore Active Directory, Azure/Entra ID, and OpenGraph environments — all from your AI assistant.

What Bloodhound MCP does

A Model Context Protocol (MCP) server that connects LLMs to BloodHound Community Edition and BloodHound Enterprise. Ask questions in natural language, get attack path analysis, run Cypher queries, and explore Active Directory, Azure/Entra ID, and OpenGraph environments — all from your AI assistant.

Tools it exposes

Once connected, the assistant can call these 14 tools directly:

  • domain_info — list, info, users, groups, computers, ous, gpos, dc_syncers, foreign_admins, foreign_group_members, linked_gpos, search
  • user_info — info, sessions, memberships, admin_rights, rdp_rights, dcom_rights, ps_remote_rights, sql_admin_rights, constrained_delegation, controllables, controllers
  • group_info — info, members, memberships, admin_rights, rdp_rights, dcom_rights, ps_remote_rights, controllers, controllables
  • computer_info — info, sessions, local_admins, rdp_rights, dcom_rights, ps_remote_rights, sql_admins, constrained_delegation, controllables, controllers
  • ou_info — info, users, groups, computers, gpos
  • gpo_info — info, controllers
  • graph_analysis — shortest_path, edge_composition, search
  • adcs_info — templates, esc_paths
  • cypher_query — run, saved_list, saved_get
  • data_quality — stats, platform_list, platform_info
  • asset_groups — list, members, custom_selectors
  • custom_nodes — list, get, create, update, delete, validate_icon, extension_list, extension_upsert, extension_delete, extension_edges
  • file_upload — upload, start_job, upload_to_job, upload_bytes, upload_bytes_to_job, end_job
  • Resources — Reference material the LLM loads on demand — no extra API calls:

Installing the bloodhound mcp mcp server

Setup follows the standard MCP pattern: clone or install the server, then register it in your client's configuration file and restart the client. The configuration snippets on this page cover Claude Desktop, Claude Code and Cursor.

Configuration

Before the server will start you need to supply 2 environment variables: BLOODHOUND_TOKEN_ID, BLOODHOUND_TOKEN_KEY. Keep credentials in your client's env block or a secrets manager rather than committing them.

Requirements

  • Python 3.11+ - uv - BloodHound Community Edition instance with data loaded - BloodHound API credentials (Token ID + Token Key) ---

Where it fits

Cloud and DevOps servers put infrastructure on speaking terms with your assistant, so "why is this broken?" is answered from real state rather than a generic checklist. Bloodhound MCP sits in that group, and the shape of its toolset — domain_info, user_info, group_info among others — tells you what it is really for. Worth comparing against the other cloud devops servers in this directory before you commit to one, since several overlap in scope but differ sharply in setup cost and permissions.

Practical notes

  • This server runs locally, so it operates with whatever access your machine and its credentials already have. Scope that deliberately rather than by default.
  • It will not start until its required credentials are present, so set those before wondering why the tools never appear.
  • With 14 tools exposed, expect a noticeable bump in prompt size — disable it in projects that never use Bloodhound MCP.
  • Maintained by mwnickerson, written in Python.
  • MCP clients ask for confirmation before each tool call by default. Keep that on while you learn what the bloodhound mcp mcp server actually does with your data.
  • Every entry in this directory is reviewed by hand before it goes live, and details are checked against the project's own documentation.

Available tools

ToolWhat it does
domain_infolist, info, users, groups, computers, ous, gpos, dc_syncers, foreign_admins, foreign_group_members, linked_gpos, search
user_infoinfo, sessions, memberships, admin_rights, rdp_rights, dcom_rights, ps_remote_rights, sql_admin_rights, constrained_delegation, controllables, controllers
group_infoinfo, members, memberships, admin_rights, rdp_rights, dcom_rights, ps_remote_rights, controllers, controllables
computer_infoinfo, sessions, local_admins, rdp_rights, dcom_rights, ps_remote_rights, sql_admins, constrained_delegation, controllables, controllers
ou_infoinfo, users, groups, computers, gpos
gpo_infoinfo, controllers
graph_analysisshortest_path, edge_composition, search
adcs_infotemplates, esc_paths
cypher_queryrun, saved_list, saved_get
data_qualitystats, platform_list, platform_info
asset_groupslist, members, custom_selectors
custom_nodeslist, get, create, update, delete, validate_icon, extension_list, extension_upsert, extension_delete, extension_edges
file_uploadupload, start_job, upload_to_job, upload_bytes, upload_bytes_to_job, end_job
ResourcesReference material the LLM loads on demand — no extra API calls:

Configuration

  • Python 3.11+ - uv - BloodHound Community Edition instance with data loaded - BloodHound API credentials (Token ID + Token Key) ---
VariableDescriptionRequired
BLOODHOUND_TOKEN_IDCredential the server authenticates with.Yes
BLOODHOUND_TOKEN_KEYCredential the server authenticates with.Yes

Example prompts to try

  • Use Bloodhound MCP to domain info.
  • Use Bloodhound MCP to user info.
  • Use Bloodhound MCP to group info.

Frequently asked questions

It connects Bloodhound MCP to MCP-compatible AI assistants such as Claude and Cursor, exposing 14 tools (domain_info, user_info, group_info, and more) that the assistant can call on your behalf. Instead of copying data back and forth by hand, the assistant works with Bloodhound MCP directly.