DoiT MCP Server

by doitintl

13 stars
203 downloads
Not rated
GitHub Website

About

DoiT MCP Server provides access to the DoiT API, enabling LLMs like Claude to access DoiT platform data for troubleshooting and analysis.

Details

Author
doitintl
GitHub stars
13
Downloads
203
Categories
Other

- Retrieve cloud incidents and anomalies
- Manage Cloud Analytics reports and queries
- Access and create budgets, alerts, and allocations
- List and manage support tickets
- Explore cloud diagrams and cost snapshots
- Manage assets, invoices, and annotations
- Trigger CloudFlows and list connections

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:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name DoiT MCP Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Configure the server in Claude Desktop, Cursor, or AWS Q CLI using the hosted SSE URL (https://mcp.doit.com/sse) or run locally via npx with a DoiT API key. Optionally set the CUSTOMER_CONTEXT environment variable for Do’ers.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "doit mcp server": {
            "doit-mcp-server": {
                "command": "node",
                "args": [
                    "dist/index.js"
                ]
            }
        }
    }
}

McpServers

{
    "doit-mcp-server": {
        "command": "node",
        "args": [
            "dist/index.js"
        ]
    }
}

DoiT MCP Server

License: MIT NPM Version

DoiT MCP Server provides access to the DoiT API. This server enables LLMs like Claude to access DoiT platform data for troubleshooting and analysis.

top-services

Requirements

- Node.js v18 or higher
- DoiT API key with appropriate permissions

Installation

To get your DoiT API key, visit the API key section in your DoiT profile.

There are several ways to install and configure the MCP server:

DoiT MCP URL

The DoiT MCP server is available at: https://mcp.doit.com/sse

Claude Desktop App

{
  "mcpServers": {
    "doit_mcp_server": {
      "command": "npx",
      "args": ["mcp-remote", "https://mcp.doit.com/sse"]
    }
  }
}

AWS Q CLI

1. Create an API key in the API section of the DoiT Console.
2. Note the API key value for the below command.
3. Run the following command:

q mcp-server create --name doit-mcp-server --url https://mcp.doit.com/sse --api-key your_doit_api_key

4. Start q chat by running this command:

q chat

5. Ensure that it connects and lists it as doit-mcp-server loaded at the top of the chat session.

STDIO - local server

Claude Desktop App

To manually configure the MCP server for Claude Desktop App, add the following to your claude_desktop_config.json file or through "Settings" as described here:

{
  "mcpServers": {
    "doit_mcp_server": {
      "command": "npx",
      "args": ["-y", "@doitintl/doit-mcp-server@latest"],
      "env": {
        "DOIT_API_KEY": "your_doit_api_key"
      }
    }
  }
}

Make sure to replace the environment variables with your actual values:

- DOIT_API_KEY: Your DoiT API key with appropriate permissions
- CUSTOMER_CONTEXT: Your customer context identifier (optional) - Required for Do’ers

NOTE: you need to restart Claude for Desktop after updating the configuration for changes to take effect.

Cursor

Don't forget to replace the env values in that command with your actual values.

If you have the latest version (v0.47 and above) of Cursor, you can create an mcp.json file in your project root:

{
  "mcpServers": {
    "doit_mcp_server": {
      "command": "npx",
      "args": ["-y", "@doitintl/doit-mcp-server@latest"],
      "env": {
        "DOIT_API_KEY": "your_doit_api_key"
      }
    }
  }
}

Clone to Local Repository

If you want to clone and run this MCP server directly from the source code, follow these steps:

1. Clone the repository

git clone https://github.com/doitintl/doit-mcp-server
cd doit-mcp-server

2. Install dependencies

yarn install

3. Build the project

yarn build

4. Run the server

node dist/index.js

Tools

This MCP server provides many tools including the following:

- get_cloud_incidents: Retrieve cloud incidents from various platforms
- get_cloud_incident: Get details about a specific cloud incident by ID
- get_anomalies: Retrieve anomalies detected in cloud resources
- get_anomaly: Get details about a specific anomaly by ID
- list_assets: Returns a list of all available customer assets such as Google Cloud billing accounts, G Suite/Workspace subscriptions, etc.
- get_asset: Returns details of a specific customer asset by ID, including properties such as customer domain, subscription, and reseller information
- trigger_cloud_flow: Triggers a CloudFlow by its flow ID, optionally passing a JSON payload as the request body
- list_cloudflow_connections: Returns a cursor-paginated list of CloudFlow cloud provider connections (GCP/AWS), with their config and status; supports maxResults (1–100, default 50) and pageToken
- get_cloudflow_connection: Returns the details of a specific CloudFlow connection by connectionId, including its GCP/AWS configuration, collaborators, and status
- list_cloudflow_templates: Returns a cursor-paginated catalogue of available CloudFlow templates (read-only blueprints), with their id, name, description, and instructions; supports maxResults (1–500, default 50) and pageToken
- get_cloudflow_template: Returns the details of a specific CloudFlow template by templateId, including its name, description, and configuration instructions
- find_cloud_diagrams: Returns diagram URLs matching the provided resource IDs from the DoiT Cloud Diagrams API
- get_cloud_diagrams_stats: Returns activity statistics for your cloud diagrams over a time period (start/end RFC3339 date-times) — node create/update/delete change counts grouped by cloud service, plus each diagram's import/sync state
- search_cloud_diagrams: Searches your cloud diagrams and components by name or property, returning matching layers (scheme), components, and property-matched components (prop); optionally scope to a layer with ss_id and page with from/size
- get_cloud_diagram_cost_snapshot: Returns a bounded cost snapshot for a cloud diagram layer (layerId) over a startDate/endDate (YYYY-MM-DD) — total spend, period-over-period trend percentage, top resources and services by cost, and a cost trend (optionally bucketed by interval: day/week/month)
- get_cloud_diagram_resource_relationships: Returns how a resource (resourceId) in a cloud diagram layer (layerId) connects to other resources — the anchor plus related resources with relation type and hop distance; optionally tune direction (downstream/upstream/both), depth (direct/transitive), and kind (edges/group_members/both)
- list_cloud_diagram_activity_groups: Lists the change history of a cloud diagram layer (ss_id) grouped by snapshot, ordered by timestamp descending; each group references a snapshot and contains the individual activity records (node/link/group/attachment create/update/delete) that belong to it. Page with offset/limit and filter by tags
- list_cloud_diagram_node_activities: Lists individual activity records (NODE_CREATE/NODE_UPDATE/NODE_DELETE) for a single component node (ss_id + nodeId) in a cloud diagram layer, ordered by timestamp descending, each including the user who made the change. Page with offset/limit
- list_reports: Lists Cloud Analytics reports that your account has access to
- run_query: Runs a report query with the specified configuration without persisting it
- get_report_results: Get the results of a specific report by ID
- get_report_config: Get the configuration of a specific Cloud Analytics report by ID
- create_report: Creates a new Cloud Analytics report with the specified configuration
- update_report: Updates an existing Cloud Analytics report with the specified configuration
- validate_user: Validates the current API user and returns domain and email information
- list_dimensions: Lists Cloud Analytics dimensions that your account has access to
- get_dimension: Get a specific Cloud Analytics dimension by type and ID
- list_tickets: List support tickets from DoiT using the support API
- get_ticket: Get details of a specific support ticket by its ID
- list_ticket_comments: List all comments on a support ticket by its ID. Customers see only public comments; DoiT employees see both public and private comments
- create_ticket_comment: Add a comment to an existing support ticket. For customers, comments are always public. For DoiT employees, comments can be marked as private internal notes
- list_invoices: List all current and historical invoices for your organization from the DoiT API
- get_invoice: Retrieve the full details of an invoice specified by the invoice number from the DoiT API
- list_allocations: List allocations for report or run_query configuration that your account has access to from the DoiT API
- get_allocation: Get a specific allocation by ID from the DoiT API
- create_allocation: Create a new allocation
- update_allocation: Update an existing allocation
- list_alerts: Returns a list of alerts that your account has access to
- get_alert: Returns a specific alert by ID.
- create_alert: Creates a new alert to notify when cloud costs exceed defined thresholds
- update_alert: Updates an existing alert by ID
- list_budgets: Returns the list of budgets that the user has access to
- get_budget: Returns the details and current utilization of a specified budget
- create_budget: Creates a new budget to track actual cloud spend against planned spend
- update_budget: Updates an existing budget
- list_annotations: Returns a list of annotations that your account has access to
- get_annotation: Returns a specific annotation by ID
- create_annotation: Creates a new annotation with content, timestamp, and optional report/label associations
- update_annotation: Updates an existing annotation by ID
- list_commitments: Returns a list of commitments (reserved capacity or spend agreements) with cloud providers
- get_commitment: Returns details of a specific commitment by ID, including periods and attainment data
- ask_ava_sync: Ask DoiT AVA, the cloud cost and infrastructure expert, a question about the user's DoiT account, cloud spending, or optimization opportunities. Note: AVA can take a long time to respond for complex questions.
- list_organizations: Returns a list of organizations accessible to the authenticated user
- list_platforms: Returns a list of all available platforms
- list_users: Returns a list of all users in the organization
- update_user: Updates user information including name, job function, phone, language, and role
- invite_user: Invites a new user to the organization by email, optionally assigning a role and organization
- list_roles: Returns a list of all IAM roles, including both preset and custom roles
- list_products: Lists products available for different platforms, optionally filtered by platform name
- list_datahub_datasets: Returns a list of all DataHub datasets for the customer
- get_datahub_dataset: Returns details of a specific DataHub dataset by name
- create_datahub_dataset: Creates a new DataHub dataset with a name and optional description
- update_datahub_dataset: Updates an existing DataHub dataset's description
- send_datahub_events: Sends one or more DataHub events for ingestion (1–50,000 events per call)
- list_labels: Returns a list of labels that the user has access to
- get_label: Returns details of a specific label by ID
- create_label: Creates a new label with a name and color
- update_label: Updates an existing label's name or color
- get_label_assignments: Returns the list of objects assigned to a specific label
- assign_objects_to_label: Assigns or unassigns objects to a label
- list_folders: Returns the Cloud Analytics folders the user has access to
- get_folder: Returns details of a specific Cloud Analytics folder by ID or name
- list_themes: Returns the custom color themes defined for your account
- get_theme: Returns details of a specific custom color theme by ID or name
- get_active_theme: Returns the color theme currently active for the authenticated user (the sentinel "default" means the built-in default is in use)
- set_active_theme: Sets the active color theme for the authenticated user; pass the sentinel "default" to revert to the built-in default
- update_theme: Updates an existing custom color theme (rename, change primary color, or replace the color palette) by ID or name
- list_account_team: Returns the DoiT account managers assigned to the customer, including name, email, role, and Calendly link
- get_resource_permissions: Returns the sharing settings (per-user roles and public visibility) for a specific alert, budget, report, or allocation
- get_aws_account: Returns the CloudConnect details of a connected AWS account (role ARN, billing S3 bucket, enabled and supported features) by AWS account ID
- get_cloud_connect_supported_features: Returns the DoiT CloudConnect features supported for a connected cloud account (AWS account ID or Azure tenant ID) and whether the required permissions are present
- get_insight: Returns the metadata and aggregate summary (savings, risk counts, status) of a single optimization insight identified by its source and key

Usage Examples

Here are some common queries you can ask using the DoiT MCP server:

Cost Analysis and Savings

- "What are my Flexsave savings?" - This will analyze your Flexsave cost optimization savings across your cloud accounts.
- "What are my top 3 AWS services by cost?" - This will run a Cloud Analytics query to identify your highest-spending AWS services.

Reports and Analytics

- "List all my available reports" - This will show all Cloud Analytics reports you have access to.
- "Show me the results of my 'Monthly Cost Overview' report" - This will fetch and display results from a specific report.

Anomaly Detection

- "What are my recent GCP anomalies?" - This will show recent cost or usage anomalies detected in your Google Cloud Platform accounts.
- "Show me details about anomaly ABC123" - This will provide detailed information about a specific anomaly.

Invoices

- "List all my invoices" - This will show all current and historical invoices for your organization.
- "Show me details for invoice INV-2024-001" - This will provide full details for a specific invoice, including line items and payment status.

These examples demonstrate basic usage patterns. You can combine and modify these queries based on your needs. The MCP server will interpret your natural language queries and use the appropriate tools to fetch the requested information.

Environment Variables

- DOIT_API_KEY: Your DoiT API key (required)
- CUSTOMER_CONTEXT: Your customer context identifier (optional)

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.