Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@JumpCloud MCP Serverlist all active users in the IT department"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
π€ JumpCloud MCP Server
A natural language API server and agent for your JumpCloud environment, built with FastAPI. Supports the Model Context Protocol (MCP) for integration with AI assistants and code editors.
This MCP server lets you:
π Query users, systems, groups, and SSO apps via REST
π¬ Ask natural language questions via
/askπ€ Use a local, LLM-free agent (keyword-based tool matcher)
π³ Run everything in Docker
βοΈ Integrate with MCP-compatible clients (Claude Desktop, Cursor, etc.)
π¦ Features
β FastAPI-based REST API for JumpCloud data
π Token authentication using
x-api-keyπ€
/askendpoint for semantic/natural language queriesπ³ Docker Support
π‘ MCP protocol support for AI assistants and code editors
π οΈ Quick Setup
1. Clone and configure environment
git clone https://gitlab.com/barkada/itops/jumpcloud-mcp
cd jumpcloud-mcp
cp .env.example .envUpdate .env with your keys:
JUMPCLOUD_API_KEY=your_jumpcloud_api_key
MCP_API_URL=http://localhost:80002. Build and run with Docker
docker-compose up --buildThe server will start on http://localhost:8000.
3. Call MCP via REST
curl -X GET http://localhost:8000/systems -H "x-api-key: $JUMPCLOUD_API_KEY"4. Ask with natural language
curl -X POST http://localhost:8000/ask -H "Content-Type: application/json" -H "x-api-key: $JUMPCLOUD_API_KEY" -d '{"prompt": "List all active Mac systems"}'π Directory Structure
jumpcloud_mcp/
βββ main.py # FastAPI app + MCP protocol + /ask endpoint
βββ jumpcloud/
β βββ client.py # JumpCloud API calls: users, systems, groups
β βββ models.py # Pydantic models for validation
β βββ mcp_agent_runner.py # Keyword-based tool-matching agent (no LLM)
β βββ auth.py # API key auth
βββ .env # Secrets/config
βββ Dockerfile # Build FastAPI server container
βββ docker-compose.yml # Docker Compose for dev/prod
βββ requirements.txt # Python dependencies (NO openai/anthropic)
βββ README.md # Docs and usage guideπ§ REST API Reference - API Docs
π GET Endpoints
/users/systems/user-groups/system-groups/sso-applications
π POST
/askβ Accepts{"prompt": "..."}/users/searchSearch JumpCloud users using filters and fields.{"filter": [{"department": "IT"}], "fields": "email username sudo"}
/commands/searchSearch JumpCloud commands using filters and fields.{"filter": [{"command": "restart"}], "fields": "name command sudo"}
π‘ MCP Client Integration
This server supports the Model Context Protocol (MCP) and can be used with various AI assistants and code editors.
Claude Desktop
Add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"jumpcloud-mcp": {
"command": "uvicorn",
"args": ["main:app", "--host", "0.0.0.0", "--port", "8000"],
"cwd": "/path/to/jumpcloud_mcp"
}
}
}Cursor IDE
Create .cursor/mcp.json in your workspace:
{
"mcpServers": {
"jumpcloud-mcp": {
"url": "http://localhost:8000",
"description": "JumpCloud MCP Server"
}
}
}Other MCP Clients
For any MCP-compatible client, configure it to connect to:
HTTP URL:
http://localhost:8000Protocol: MCP over HTTP
Authentication: Include
x-api-keyheader with your JumpCloud API key
β¨ Support
This project is maintained for local/private JumpCloud automation and is ideal for secure deployments, development, and custom integrations with MCP-compatible AI assistants and code editors.
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.