JupiterOne MCP Server
Description
# JupiterOne MCP Server A Model Context Protocol (MCP) server that provides access to JupiterOne tools. This server enables AI assistants and other MCP clients to interact with JupiterOne's data. ## Configuration ### Prerequisites 1. **JupiterOne Account**: You need an active…
About
# JupiterOne MCP Server A Model Context Protocol (MCP) server that provides access to JupiterOne tools. This server enables AI assistants and other MCP clients to interact with JupiterOne's data. ## Configuration ### Prerequisites 1. **JupiterOne Account**: You need an active JupiterOne account 2. **API Key**…
Details
- Author
- JupiterOne
- Downloads
- 143
- Categories
- Cloud Service, Infrastructure, Security, Other
Jump to
- Manage rules (list, get details, create, update, evaluate)
- Retrieve rule evaluation history and details
- Monitor active alerts
- Manage dashboards (list, get details, create, update, create widgets)
- Manage integrations (definitions, instances, jobs, events)
- Test API connection and get account info
- Execute J1QL queries
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
JupiterOne MCP ServerCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Install with npx or global npm install, then configure Claude Desktop or Cursor IDE with your JupiterOne API key, account ID, and optional base URL. Requires Node.js ≥ 18 and an active JupiterOne account.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"jupiterone mcp server": {
"jupiterone": {
"command": "npx",
"args": [
"-y",
"@jupiterone/jupiterone-mcp"
],
"env": {
"JUPITERONE_API_KEY": "your-api-key-here",
"JUPITERONE_ACCOUNT_ID": "your-account-id-here",
"JUPITERONE_BASE_URL": "https://graphql.us.jupiterone.io"
}
}
}
}
}
McpServers
{
"jupiterone": {
"command": "npx",
"args": [
"-y",
"@jupiterone/jupiterone-mcp"
],
"env": {
"JUPITERONE_API_KEY": "your-api-key-here",
"JUPITERONE_ACCOUNT_ID": "your-account-id-here",
"JUPITERONE_BASE_URL": "https://graphql.us.jupiterone.io"
}
}
}
JupiterOne MCP Server
A Model Context Protocol (MCP) server that provides access to JupiterOne tools. This server enables AI assistants and other MCP clients to interact with JupiterOne's data.
Configuration
Prerequisites
1. JupiterOne Account: You need an active JupiterOne account
2. API Key: Generate an API key from your JupiterOne account settings
3. Account ID: Your JupiterOne account identifier
4. Working node installation with a version >= 18
Installation with Claude Desktop
To use this MCP server with Claude Desktop, you need to add it to your Claude configuration file.
Option 1: Using npx (Recommended)
Add the following configuration to your Claude Desktop configuration file:
{
"mcpServers": {
"jupiterone": {
"command": "npx",
"args": ["-y", "@jupiterone/jupiterone-mcp"],
"env": {
"JUPITERONE_API_KEY": "your-api-key-here",
"JUPITERONE_ACCOUNT_ID": "your-account-id-here",
"JUPITERONE_BASE_URL": "https://graphql.us.jupiterone.io"
}
}
}
}
Option 2: Global Installation (For nvm users or troubleshooting)
If you're using nvm or experiencing issues with Option 1, first install the package globally:
npm install -g @jupiterone/jupiterone-mcp
Then add this configuration to your Claude Desktop config file:
{
"mcpServers": {
"jupiterone": {
"command": "/usr/local/bin/node",
"args": ["/usr/local/bin/jupiterone-mcp"],
"env": {
"JUPITERONE_API_KEY": "your-api-key-here",
"JUPITERONE_ACCOUNT_ID": "your-account-id-here",
"JUPITERONE_BASE_URL": "https://graphql.us.jupiterone.io"
}
}
}
}
Note: You may need to adjust the paths in Option 2 based on your Node.js installation:
- For Homebrew Node.js: /usr/local/bin/node and /usr/local/bin/jupiterone-mcp
- For nvm: ~/.nvm/versions/node/v[version]/bin/node and ~/.nvm/versions/node/v[version]/bin/jupiterone-mcp
Installation with Cursor
For Cursor IDE, add the same configuration to your Cursor settings:
1. Open Cursor Settings
2. Navigate to "Features" → "Model Context Protocol"
3. Add the server configuration using either Option 1 or Option 2 from above
Environment Variables
Replace the placeholder values with your actual JupiterOne credentials:
- JUPITERONE_API_KEY: Your JupiterOne API key (required)
- JUPITERONE_ACCOUNT_ID: Your JupiterOne account ID (required).
- JUPITERONE_BASE_URL: JupiterOne GraphQL endpoint (optional, defaults to https://graphql.us.jupiterone.io)
Getting Your JupiterOne Credentials
1. API Key:
- Log into your JupiterOne account
- Go to Settings → API Keys
- Create a new API key or use an existing one
2. Account ID:
- This can be retrieved by either of the following:
- Navigating to https://j1dev.apps.us.jupiterone.io/settings/account-management
- Run the following query in your JupiterOne account: find jupiterone_account as x return x.accountId
Features
Rules Management
- list-rules - List all rules with optional limit parameter - get-rule-details - Get detailed information about a specific rule by ID - create-inline-question-rule - Create new inline question-based rules with operations and actions - update-inline-question-rule - Update existing inline question rule instances - evaluate-rule - Trigger on-demand evaluation of a specific ruleRule Evaluations
- list-rule-evaluations - Get historical evaluation data for a rule with optional time filtering - get-rule-evaluation-details - Get detailed evaluation information including query, condition, and action results - get-raw-data-download-url - Get download URL for raw evaluation data - get-rule-evaluation-query-results - Get the actual query results from a rule evaluationAlert Monitoring
- get-active-alerts - Get all currently active alerts with optional limit parameterDashboard Management
- get-dashboards - List all dashboards in your account - create-dashboard - Create new dashboards - get-dashboard-details - Get detailed dashboard information including widgets and layouts - update-dashboard - Update an existing dashboard layoutIntegration Management
- get-integration-definitions - List available integration definitions with optional configuration details - get-integration-instances - Get integration instances with optional filtering by definition ID - get-integration-jobs - List integration jobs with optional filtering by status, instance, or definition - get-integration-job - Get details for a specific integration job - get-integration-events - Get events for a specific integration job with pagination supportAccount Management
- test-connection - Test connection to JupiterOne API and get account informationQuery Execution
- execute-j1ql-query - Execute a J1QL queryAvailable Tools
Rules Management
| Tool | Description | Parameters | |------|-------------|------------| |list-rules | List all rules in the account | limit (optional): Number of rules to return (1-1000) |
| get-rule-details | Get detailed rule information | ruleId: ID of the rule |
| create-inline-question-rule | Create new inline question rule | Complex object: name, description, notifyOnFailure (optional), triggerActionsOnNewEntitiesOnly (optional), ignorePreviousResults (optional), pollingInterval, outputs, specVersion (optional), tags (optional), templates (optional), queries, operations |
| update-inline-question-rule | Update existing rule | id, name, description, notifyOnFailure, triggerActionsOnNewEntitiesOnly, ignorePreviousResults, pollingInterval, outputs, specVersion, version, tags, templates, labels, resourceGroupId, remediationSteps, question, operations |
| evaluate-rule | Trigger rule evaluation | ruleId: ID of the rule to evaluate |
Rule Evaluations
| Tool | Description | Parameters | |------|-------------|------------| |list-rule-evaluations | Get rule evaluation history | ruleId, beginTimestamp (optional), endTimestamp (optional), limit (optional), tag (optional) |
| get-rule-evaluation-details | Get detailed evaluation results | ruleId, timestamp |
| get-raw-data-download-url | Get download URL for raw data | rawDataKey |
| get-rule-evaluation-query-results | Get query results from evaluation | rawDataKey |
Alert Monitoring
| Tool | Description | Parameters | |------|-------------|------------| |get-active-alerts | List active alerts | limit (optional): Number of alerts to return (1-1000) |
Dashboard Management
| Tool | Description | Parameters | |------|-------------|------------| |get-dashboards | List all dashboards | None |
| create-dashboard | Create new dashboard | name, type |
| get-dashboard-details | Get dashboard details | dashboardId |
| update-dashboard | Update an existing dashboard layout | dashboardId, layouts |
| create-dashboard-widget | Create a widget on a dashboard | dashboardId, input |
Integration Management
| Tool | Description | Parameters | |------|-------------|------------| |get-integration-definitions | List integration definitions | includeConfig (optional): Include configuration fields |
| get-integration-instances | Get integration instances | definitionId (optional), limit (optional) |
| get-integration-jobs | List integration jobs | status (optional), integrationInstanceId (optional), integrationDefinitionId (optional), integrationInstanceIds (optional), size (optional) |
| get-integration-job | Get details for a specific integration job | integrationJobId, integrationInstanceId |
| get-integration-events | Get events for a specific integration job | jobId, integrationInstanceId, cursor (optional), size (optional) |
Account Management
| Tool | Description | Parameters | |------|-------------|------------| |test-connection | Test connection to JupiterOne API and get account information | None |
Query Execution
| Tool | Description | Parameters | |------|-------------|------------| |execute-j1ql-query | Execute a J1QL query | query, variables (optional), cursor (optional), includeDeleted (optional), deferredResponse (optional), flags (optional), scopeFilters (optional) |Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.
