> **Building with AI coding agents?** Install the authstack plugin with one command. This equips your agent with accurate Scalekit implementation patterns.
>
> **Recommended** (the `-y` flags skip prompts, so the command runs without an interactive terminal):
> ```bash
> npx -y @scalekit-inc/cli setup -y
> ```
>
> Global:
> ```bash
> npm install -g @scalekit-inc/cli
> scalekit setup -y
> ```
>
> Supports Claude Code, Cursor, GitHub Copilot, Codex + skills for other Agent Skills-compatible agents in `~/.agents/skills`.
> Skills: integrate-agentkit, implement-saaskit, add-mcp-oauth, implement-sso, implement-scim.
> [Full setup guide](https://docs.scalekit.com/dev-kit/build-with-ai/)

---

# Connect AI agents to the Statsig MCP server

The Statsig MCP connector routes your AI agent's tool calls to Statsig's own MCP server through Scalekit. Each user signs in to Statsig once, and Scalekit stores and refreshes their tokens, so your agent never handles credentials. It comes with 48 tools.

**Authentication:** OAuth 2.1/DCR
**Categories:** Developer Tools, Analytics
**Tools:** 48: 47 read, 0 write, 1 destructive
**Users sign in with:** OAuth
**OAuth app:** Your own Statsig MCP server app
**Built by:** Vendor MCP
**Try it:** [Playground in the Scalekit dashboard](https://app.scalekit.com/ws/signup?sk_intent=playground&provider=STATSIGMCP)

## Setup

1. ### Install the SDK

   **Node.js**

   ```bash
   npm install @scalekit-sdk/node dotenv
   ```

   **Python**

   ```bash
   pip install scalekit-sdk-python python-dotenv
   ```

2. ### Set your credentials

   Add your Scalekit credentials to your `.env` file. Find values in **[app.scalekit.com](https://app.scalekit.com)** > **Developers** > **API Credentials**.

   ```sh title=".env"
   SCALEKIT_ENVIRONMENT_URL=<your-environment-url>
   SCALEKIT_CLIENT_ID=<your-client-id>
   SCALEKIT_CLIENT_SECRET=<your-client-secret>
   ```

3. ### Create the Statsig MCP connection

   In **AgentKit > Connections**, create a Statsig MCP connection and copy its redirect URI. The name you give it is the `connection_name` your code passes. See [Configure connections](/agentkit/connections/).

4. ### Register an OAuth app

   Statsig MCP server connections use your own OAuth app. Register one with Statsig MCP server and add the redirect URI you copied.

   Then enter the app's Client ID and Client Secret on the Statsig MCP connection.

5. ### Authorize a user and make your first call

   **Node.js** (`quickstart.mts`)

   ```typescript
   import { ScalekitClient } from '@scalekit-sdk/node'
   import 'dotenv/config'
   import { createInterface } from 'node:readline/promises'

   const scalekit = new ScalekitClient(
     process.env.SCALEKIT_ENVIRONMENT_URL,
     process.env.SCALEKIT_CLIENT_ID,
     process.env.SCALEKIT_CLIENT_SECRET,
   )
   const actions = scalekit.actions

   const connector = 'statsigmcp'
   const identifier = 'user_123'

   // Generate an authorization link for the user
   const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
   console.log('Authorize Statsig MCP:', link)
   const rl = createInterface({ input: process.stdin, output: process.stdout })
   await rl.question('Press Enter after authorizing...')
   rl.close()

   // Make your first call
   const result = await actions.executeTool({
     connector,
     identifier,
     toolName: 'statsigmcp_get_context',
     toolInput: {},
   })
   console.log(result)
   ```

   ```bash
   npx tsx quickstart.mts
   ```

   **Python** (`quickstart.py`)

   ```python
   import os
   from scalekit import ScalekitClient
   from dotenv import load_dotenv
   load_dotenv()

   scalekit_client = ScalekitClient(
       env_url=os.getenv("SCALEKIT_ENVIRONMENT_URL"),
       client_id=os.getenv("SCALEKIT_CLIENT_ID"),
       client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),
   )
   actions = scalekit_client.actions

   connection_name = "statsigmcp"
   identifier = "user_123"

   # Generate an authorization link for the user
   link_response = actions.get_authorization_link(
       connection_name=connection_name,
       identifier=identifier,
   )
   print("Authorize Statsig MCP:", link_response.link)
   input("Press Enter after authorizing...")

   # Make your first call
   result = actions.execute_tool(
       tool_input={},
       tool_name="statsigmcp_get_context",
       connection_name=connection_name,
       identifier=identifier,
   )
   print(result)
   ```

   ```bash
   python quickstart.py
   ```

   Each user signs in once. See [Authorize a user](/agentkit/tools/authorize/) for the full flow and statuses.

## Tools

Pass the exact name to `execute_tool`, with an input like each tool's example. To ask for a tool that's missing, use the [request form](https://scalekitsupport.portal.usepylon.com/forms/request-a-connector-tool).

**Node.js**

```typescript
const result = await actions.executeTool({
  toolName: 'statsigmcp_cluster_log_patterns',
  toolInput: {
    params: {},
  },
  connector: 'statsigmcp',
  identifier: 'user_123',
})
```

**Python**

```python
result = actions.execute_tool(
    tool_name="statsigmcp_cluster_log_patterns",
    tool_input={
        "params": {},
    },
    connection_name="statsigmcp",
    identifier="user_123",
)
```

`result.data` is the app's response as JSON, and `result.execution_id` (`executionId` in Node.js) is the ID of the call.

### `statsigmcp_cluster_log_patterns`

Cluster Log Patterns · Read-only

Cluster similar log lines into templates (same as `statsig-query log-patterns`). Use after `Query_Logs_Explorer` when raw lines are too noisy. Pass a Logs Explorer filter (e.g. `service:scrapi AND tier:latest AND level:error`) — do not wrap in `#logs{ }`. Statsig/OpenAI internal organizations only (mirrors CAPI `@OpenAIAndStatsigOrgOnly`). Optional: `field` (default clusters on log message field), `limit`, time window (`start_ts`/`end_ts` in ms).

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters object. Contains the path and query values for this call.

Example input: `{"params":{}}`

### `statsigmcp_fetch`

fetch · Read-only

Fetch the full document for a search result id. Use the id returned by search.

Read only: yes. Destructive: no.

Inputs:

- `id` (`string`, required): ID of the search result document to fetch, as returned by the search tool.

Example input: `{"id":"<id>"}`

### `statsigmcp_get_audit_logs`

Get Audit Logs · Read-only

List audit logs for this Statsig project. Supports filtering by id, sorting, tags, date range, and pagination.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters object. Contains the path and query values for this call.

Example input: `{"params":{}}`

### `statsigmcp_get_autotune_eligible_reviewers`

Get Autotune Eligible Reviewers · Read-only

List the users and reviewer groups eligible to approve/reject a review of this autotune experiment. Use this to pick valid reviewer_ids / reviewer_group_ids when creating or editing an autotune review. The response carries everyone_eligible (true when anyone may review), users (the flattened, deduped set of eligible individuals), and groups (each with its member user_ids). Note: project admins can always review and are NOT enumerated here. path_id = the autotune's ID.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters object. Contains the path and query values for this call.

Example input: `{"params":{}}`

### `statsigmcp_get_autotune_review_by_id`

Get Autotune Review by ID · Read-only

Get a single review for an autotune experiment by its review ID, including its status, proposed change type, author, and requested reviewers. A review is a proposed change that goes through an approve → commit lifecycle before it is applied. path_id = the autotune's ID; path_reviewID = the review ID (from Get_List_of_Autotune_Reviews or Create_Autotune_Review).

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters object. Contains the path and query values for this call.

Example input: `{"params":{}}`

### `statsigmcp_get_context`

Get Context · Read-only

Bootstrap the authenticated Statsig MCP session. Returns bounded organization, selected project, environment, effective API-key permissions, review settings, accessible product areas, project environments, event sources, metrics, default timezone, and relevant links. The project includes whether new entities require a Target App or a team, with bounded Target App and team names to choose from. The API key already selects one project, so no project ID is required. Use scope for common bundles and fields/limit to request only the context sections you need.

Read only: yes. Destructive: no.

Inputs:

- `fields` (`array`, optional): Top-level fields to return. Omit to use scope. Field selection can cross scopes.
- `limit` (`integer`, optional): Maximum metrics, event sources, Target Apps, and teams to return when requested (default 20, max 50). Default: `20`.
- `scope` (`string`, optional): Context bundle to return when fields is omitted. session is the default bootstrap; project adds bounded project collections and links; all returns both. One of: `session`, `project`, `all`. Default: `session`.

Example input: `{}`

### `statsigmcp_get_dynamic_config_details_by_id`

Get Dynamic Config Details by ID · Read-only

Get the details (including rules, return values, and more) for a Dynamic Config (static, targetable JSON) in the Statsig console.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters object. Contains the path and query values for this call.

Example input: `{"params":{}}`

### `statsigmcp_get_dynamic_config_eligible_reviewers`

Get Dynamic Config Eligible Reviewers · Read-only

List the users and reviewer groups eligible to approve/reject a review of this dynamic config. Use this to pick valid reviewer_ids / reviewer_group_ids when creating or editing a dynamic config review. The response carries everyone_eligible (true when anyone may review), users (the flattened, deduped set of eligible individuals), and groups (each with its member user_ids). Note: project admins can always review and are NOT enumerated here. path_id = the dynamic config's name/ID.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters object. Contains the path and query values for this call.

Example input: `{"params":{}}`

### `statsigmcp_get_dynamic_config_review_by_id`

Get Dynamic Config Review by ID · Read-only

Get a single review for a dynamic config by its review ID, including its status, proposed change, author, and requested reviewers. A review is a proposed change to the dynamic config that goes through an approve → commit lifecycle before it is applied. path_id = the dynamic config's name/ID; path_reviewID = the review ID (from Get_List_of_Dynamic_Config_Reviews or Create_Dynamic_Config_Review).

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters object. Contains the path and query values for this call.

Example input: `{"params":{}}`

### `statsigmcp_get_dynamic_config_version_history`

Get Dynamic Config Version History · Read-only

List historical versions of a Dynamic Config (static, targetable JSON object) to reconstruct a timeline of how it changed — rules, return values, defaults, and metadata across edits. Useful for debugging when dynamic config behavior changed and what changed it.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for this tool.

Example input: `{"params":{}}`

### `statsigmcp_get_experiment_details_by_id`

Get Experiment Details by ID · Read-only

Get details including parameters (return values), groups, status & more of an experiment in Statsig. Use query_fields to return only specific top-level fields and keep the response small.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for this tool.

Example input: `{"params":{}}`

### `statsigmcp_get_experiment_eligible_reviewers`

Get Experiment Eligible Reviewers · Read-only

List the users and reviewer groups eligible to approve/reject a review of this experiment (A/B test). Use this to pick valid reviewer_ids / reviewer_group_ids when creating or editing an experiment review. The response carries everyone_eligible (true when anyone may review), users (the flattened, deduped set of eligible individuals), and groups (each with its member user_ids). Note: project admins can always review and are NOT enumerated here. path_id = the experiment's ID.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for this tool.

Example input: `{"params":{}}`

### `statsigmcp_get_experiment_metric_dimension_results`

Get Experiment Metric Dimension Results · Read-only

Get topline and dimensional breakdown results for one specific experiment metric. Use this when you already know the metric ID and need that metric broken down by dimensions. Do not use this tool for an experiment-wide summary across all pulse metrics; use Get_Experiment_Overall_Results instead.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for this tool.

Example input: `{"params":{}}`

### `statsigmcp_get_experiment_overall_results`

Get Experiment Overall Results · Read-only

Get overall pulse results for an experiment across all pulse metrics. Use this when you need the experiment-wide topline view or a cross-metric summary. Do not use this tool when you need the dimensional breakdown for one specific metric; use Get_Experiment_Metric_Dimension_Results instead.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for this tool.

Example input: `{"params":{}}`

### `statsigmcp_get_experiment_review_by_id`

Get Experiment Review by ID · Read-only

Get a single review for an experiment (A/B test) by its review ID, including its status, proposed change type, author, and requested reviewers. A review is a proposed change that goes through an approve → commit lifecycle before it is applied. path_id = the experiment's ID; path_reviewID = the review ID (from Get_List_of_Experiment_Reviews or Create_Experiment_Review).

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for this tool.

Example input: `{"params":{}}`

### `statsigmcp_get_experiment_version_history`

Get Experiment Version History · Read-only

List historical versions of an experiment (AB Test) to reconstruct a timeline of how it changed — groups, allocation, status, parameters, and metadata across edits. Useful for debugging when experiment behavior changed and what changed it.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for this tool.

Example input: `{"params":{}}`

### `statsigmcp_get_gate_details_by_id`

Get Gate Details by ID · Read-only

Get all details about a gate (feature flag) like its rules, idType, and more, from the Statsig Console. To judge whether a feature is actually live for a user, check status and isEnabled BEFORE reasoning about rules: when isEnabled is false the rules are NOT evaluated and every user receives the same blanket value — status "Launched" means all users pass (gate returns true) and status "Disabled" means all users fail (gate returns false). The rules apply only when isEnabled is true (status "In Progress"), where a user passes only if they match a passing rule. status "Archived" means the gate is retired.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for this tool.

Example input: `{"params":{}}`

### `statsigmcp_get_gate_eligible_reviewers`

Get Gate Eligible Reviewers · Read-only

List the users and reviewer groups eligible to approve/reject a review of this gate (feature flag). Use this to pick valid reviewer_ids / reviewer_group_ids when creating or editing a gate review. The response carries everyone_eligible (true when anyone may review), users (the flattened, deduped set of eligible individuals), and groups (each with its member user_ids). Note: project admins can always review and are NOT enumerated here. path_id = the gate's name/ID.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for this tool.

Example input: `{"params":{}}`

### `statsigmcp_get_gate_results`

Get Gate Results · Read-only

Get the metric results for a given gate and rule in the gate

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for this Statsig Console API call.

Example input: `{"params":{}}`

### `statsigmcp_get_gate_review_by_id`

Get Gate Review by ID · Read-only

Get a single review for a gate (feature flag) by its review ID, including its status, proposed change, author, and requested reviewers. A review is a proposed change to the gate that goes through an approve → commit lifecycle before it is applied. path_id = the gate's name/ID; path_reviewID = the review ID (from Get_List_of_Gate_Reviews or Create_Gate_Review).

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for this Statsig Console API call.

Example input: `{"params":{}}`

### `statsigmcp_get_gate_version_history`

Get Gate Version History · Read-only

List historical versions of a gate (feature flag) to reconstruct a timeline of how it changed — rules, IDtype, enabled state, and metadata across edits. Useful for debugging when gate behavior changed and what changed it.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for this Statsig Console API call.

Example input: `{"params":{}}`

### `statsigmcp_get_layer_details_by_id`

Get Layer Details by ID · Read-only

Get all details about a layer, including its parameters and metadata, from the Statsig Console.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for this Statsig Console API call.

Example input: `{"params":{}}`

### `statsigmcp_get_layer_experiments`

Get Layer Experiments · Read-only

List the experiments in a layer, including each experiment's allocation and groups within the layer. The API enforces a maximum query_limit of 100. If query_limit is not provided, default to 100 (or fewer) and never exceed 100.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for this Statsig Console API call.

Example input: `{"params":{}}`

### `statsigmcp_get_layer_overrides`

Get Layer Overrides · Read-only

Get the conditional and ID overrides configured for a layer in the Statsig Console.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for this Statsig Console API call.

Example input: `{"params":{}}`

### `statsigmcp_get_list_of_autotune_reviews`

Get List of Autotune Reviews · Read-only

List the reviews for an autotune experiment, newest first. A review is a proposed change to the autotune (start / reallocate / make_decision / delete, etc.) that goes through an approve → commit lifecycle before it is applied to the live autotune. Defaults to a small page (the active/most-recent review is the usual interest); pass query_limit / query_page to page further back through history. Use path_id = the autotune's ID.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters object. Contains the path and query values for this call.

Example input: `{"params":{}}`

### `statsigmcp_get_list_of_dynamic_config_reviews`

Get List of Dynamic Config Reviews · Read-only

List the reviews for a dynamic config, newest first. A review is a proposed change to the dynamic config (rules, default_value, enabled state, archive, delete, etc.) that goes through an approve → commit lifecycle before it is applied to the live config. Defaults to a small page (the active/most-recent review is the usual interest); pass query_limit / query_page to page further back through history. Use path_id = the dynamic config's name/ID.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for this Statsig Console API call.

Example input: `{"params":{}}`

### `statsigmcp_get_list_of_dynamic_configs`

Get List of Dynamic Configs · Read-only

List all Dynamic Configs (static, targetable JSON objects) in this Statsig project. The API enforces a maximum query_limit of 100. If query_limit is not provided, default to 100 (or fewer) and never exceed 100.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for this Statsig Console API call.

Example input: `{"params":{}}`

### `statsigmcp_get_list_of_experiment_reviews`

Get List of Experiment Reviews · Read-only

List the reviews for an experiment (A/B test), newest first. A review is a proposed change to the experiment (start / stop / make_decision / rollout / settings, etc.) that goes through an approve → commit lifecycle before it is applied to the live experiment. Defaults to a small page (the active/most-recent review is the usual interest); pass query_limit / query_page to page further back through history. Use path_id = the experiment's ID.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for this Statsig Console API call.

Example input: `{"params":{}}`

### `statsigmcp_get_list_of_experiments`

Get List of Experiments · Read-only

List all experiments (AB Tests) in this Statsig project. Supports filtering by status, tags, creator, team (query_teamID), and created date range (query_createdStartDate / query_createdEndDate as YYYY-MM-DD). To fetch several specific experiments at once, pass query_ids (a batch read) instead of calling Get_Experiment_Details_by_ID repeatedly, and use query_fields to return only the fields you need and keep the response small. The API enforces a maximum query_limit of 100. If query_limit is not provided, default to 100 (or fewer) and never exceed 100.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for this Statsig Console API call.

Example input: `{"params":{}}`

### `statsigmcp_get_list_of_gate_reviews`

Get List of Gate Reviews · Read-only

List the reviews for a gate (feature flag), newest first. A review is a proposed change to the gate (rules, enabled state, archive, delete, etc.) that goes through an approve → commit lifecycle before it is applied to the live gate. Defaults to a small page (the active/most-recent review is the usual interest); pass query_limit / query_page to page further back through history. Use path_id = the gate's name/ID.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for the tool.

Example input: `{"params":{}}`

### `statsigmcp_get_list_of_gates`

Get List of Gates · Read-only

List all gates (feature flags) in this Statsig project. Live state for each gate is determined by status and isEnabled, not just rules: when isEnabled is false the rules are NOT evaluated — status "Launched" means every user passes (true) and status "Disabled" means every user fails (false); rules apply only when isEnabled is true (status "In Progress"). Supports filtering by type, tags, creator, and team (query_teamID). The API enforces a maximum query_limit of 100. If query_limit is not provided, default to 100 (or fewer) and never exceed 100.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for the tool.

Example input: `{"params":{}}`

### `statsigmcp_get_list_of_layers`

Get List of Layers · Read-only

List all layers in this Statsig project. The API enforces a maximum query_limit of 100. If query_limit is not provided, default to 100 (or fewer) and never exceed 100.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for the tool.

Example input: `{"params":{}}`

### `statsigmcp_get_list_of_metric_sources`

Get List of Metric Sources · Read-only

List all metric sources in this Statsig project. The API enforces a maximum query_limit of 100. If query_limit is not provided, default to 100 (or fewer) and never exceed 100.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for the tool.

Example input: `{"params":{}}`

### `statsigmcp_get_list_of_metrics`

Get List of Metrics · Read-only

List all metrics in this Statsig project. The API enforces a maximum query_limit of 100. If query_limit is not provided, default to 100 (or fewer) and never exceed 100.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for the tool.

Example input: `{"params":{}}`

### `statsigmcp_get_list_of_param_stores`

Get List of Param Stores · Read-only

List param stores in this Statsig project. The API enforces a maximum query_limit of 100. If query_limit is not provided, default to 100 (or fewer) and never exceed 100.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for the tool.

Example input: `{"params":{}}`

### `statsigmcp_get_list_of_prompts`

Get List of Prompts · Read-only

List all Prompts in this Statsig project. A Prompt is a specialized AI Config for managing and versioning LLM prompts. Supports pagination via limit and page.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for the tool.

Example input: `{"params":{}}`

### `statsigmcp_get_list_of_segments`

Get List of Segments · Read-only

List all segments in this Statsig project.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for the tool.

Example input: `{"params":{}}`

### `statsigmcp_get_list_of_tags`

Get List of Tags · Read-only

List all tags in this Statsig project, returning each tag's id and name. Use this to resolve a tag name/text (e.g. "oslo-tier-0", "checkout") to its tag id, then pass those ids to the query_tags filter on tools like Get_List_of_Metrics — those filters expect tag ids, not tag names.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for the tool.

Example input: `{"params":{}}`

### `statsigmcp_get_metric_definition_by_id`

Get Metric Definition by ID · Read-only

Get the full definition for a metric in Statsig, including its type, source, and configuration details.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for the tool.

Example input: `{"params":{}}`

### `statsigmcp_get_param_store_details_by_id`

Get Param Store Details by Id · Read-only

Get a param store by name, including its description, typed parameters, and metadata.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters object. Set path_id to the name of the param store to fetch.

Example input: `{"params":{}}`

### `statsigmcp_get_prompt_details_by_id`

Get Prompt Details by ID · Read-only

Get the details (name, description, target apps, team, tags, and metadata) for a single Prompt in the Statsig console.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters object. Set path_id to the ID of the Prompt to fetch.

Example input: `{"params":{}}`

### `statsigmcp_get_segment_by_id`

Get Segment by ID · Read-only

Get all details about a segment in the Statsig Console.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters object. Set path_id to the ID of the segment to fetch.

Example input: `{"params":{}}`

### `statsigmcp_get_tool_schema`

Get Tool Schema · Read-only

Get the full input schema, description, and annotations for any Statsig MCP tool by name — including tools not shown in the default tool list (find them with Search_Tools). After fetching the schema, execute the tool with Invoke_Tool.

Read only: yes. Destructive: no.

Inputs:

- `tool_name` (`string`, required): Exact tool name as returned by Search_Tools, e.g. "Approve_Gate_Review".

Example input: `{"tool_name":"Approve_Gate_Review"}`

### `statsigmcp_getexperimentsummarycharts`

GetExperimentSummaryCharts · Read-only

Get Experiment Summary charts and underlying data.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters for this tool.

Example input: `{"params":{}}`

### `statsigmcp_query_logs_explorer`

Query Logs Explorer · Read-only

Fetch log lines from Statsig Logs Explorer (MCP equivalent of `statsig-query logs`). Uses the same filter syntax as the console filter bar and CLI `--filter` (e.g. `service:scrapi AND tier:latest AND level:error`). Do not wrap filters in `#logs{ }`. Set `source` to `logs` (default), `events`, or `spans`. Supports time window (`start_ts`/`end_ts` in ms), `columns`, `limit`, and cursor pagination via `after`. For noisy results, follow up with `Cluster_Log_Patterns`.

Read only: yes. Destructive: no.

Inputs:

- `params` (`object`, required): Request parameters object. Use query_query for the filter, query_source for logs, events or spans, query_start_ts and query_end_ts for the time window in ms, query_columns, query_limit, and query_after for cursor pagination. All fields inside are optional.

Example input: `{"params":{}}`

### `statsigmcp_search`

search · Read-only

Search Statsig resources by name. Put the name alone in query and the resource category in types. For example, use query hello_datanom and types [experiment], never query "experiment hello_datanom". Use fetch to retrieve a selected result.

Read only: yes. Destructive: no.

Inputs:

- `query` (`string`, required): Resource name or name fragment only. Do not include the resource type.
- `limit` (`integer`, optional): Maximum number of results to return (1 to 100).
- `types` (`array`, optional): Canonical resource types to search, such as experiment or feature_gate.

Example input: `{"query":"<query>"}`

### `statsigmcp_search_tools`

Search Tools · Read-only

Search the full Statsig MCP tool catalog using natural language, exact names, aliases, categories, and typo-tolerant matching. Results are permission-aware and ranked by relevance, operation intent, reliability, and usage. Fetch a result's schema with Get_Tool_Schema, then execute it with Invoke_Tool.

Read only: yes. Destructive: no.

Inputs:

- `query` (`string`, required): What you are trying to do, in your own words or as keywords. Plain questions work: "what reviews are pending for gates", "which segments apply to this rule". Keywords work too: "autotune review", "param store".
- `category` (`string`, optional): Only return tools in this product or workflow category. One of: `discovery`, `gates`, `experiments`, `dynamic_configs`, `layers`, `segments`, `metrics`, `param_stores`, `autotunes`, `reviews`, `audit_logs`, `logs`, `tags`, `search`, `other`.
- `operation_type` (`string`, optional): Only return read tools, non-destructive write tools, or destructive tools. One of: `read`, `write`, `destructive`.

Example input: `{"query":"<query>"}`

### `statsigmcp_invoke_tool`

Invoke Tool · Destructive

Execute any Statsig MCP tool by name with arguments — including tools not shown in the default tool list. Find tools with Search_Tools, get their exact input schema with Get_Tool_Schema, then execute them here. The target tool's own permissions apply (e.g. read-only orgs cannot invoke write tools).

Read only: no. Destructive: yes.

Inputs:

- `tool_name` (`string`, required): Exact tool name as returned by Search_Tools, e.g. "Get_List_of_Gate_Reviews".
- `arguments` (`object`, optional): The tool's arguments, matching the inputSchema returned by Get_Tool_Schema.

Example input: `{"tool_name":"Get_List_of_Gate_Reviews"}`

## Related

Other Developer Tools connectors ([all 130](/agentkit/connectors/?category=developer-tools)):

- [GitHub](/agentkit/connectors/github/): Scalekit connector, OAuth, 217 tools
- [Microsoft Entra ID](/agentkit/connectors/microsoftentraid/): Scalekit connector, OAuth, 82 tools
- [Datadog](/agentkit/connectors/datadog/): Scalekit connector, API key, 105 tools


---

## More Scalekit documentation

| Resource | What it contains | When to use it |
|----------|-----------------|----------------|
| [/llms.txt](/llms.txt) | Structured index with routing hints per product area | Start here — find which documentation set covers your topic before loading full content |
| [/llms-full.txt](/llms-full.txt) | Complete documentation for all Scalekit products in one file | Use when you need exhaustive context across multiple products or when the topic spans several areas |
| [sitemap-0.xml](https://docs.scalekit.com/sitemap-0.xml) | Full URL list of every documentation page | Use to discover specific page URLs you can fetch for targeted, page-level answers |
