Connect your AI Agents to PostHog in minutes

Merge lets you securely connect your agents to PostHog and thousands of tools instantly

Available tools

list_actions

List actions with pagination. Use offset from page_info for next page.

get_action

Get an action by ID. Use list_actions to find valid IDs.

create_action

Create a new action. Define matching criteria using steps (event name, URL, CSS selector, etc.).

update_action

Update an action's name, description, or matching steps. Use list_actions to find valid IDs.

delete_action

Soft-delete an action by marking it as deleted. Use list_actions to find valid IDs.

list_activity_log

List activity log entries showing recent changes to the project (data management, events, properties, surveys, actions).

list_annotations

List annotations with pagination. Use offset from page_info for next page.

get_annotation

Get an annotation by ID. Use list_annotations to find valid IDs.

create_annotation

Create an annotation at a specific date. Useful for marking deployments, incidents, or notable events on charts.

update_annotation

Update an annotation's content, date, or scope. Use list_annotations to find valid IDs.

delete_annotation

Soft-delete an annotation by marking it as deleted. Use list_annotations to find valid IDs.

list_batch_exports

List batch export configurations with pagination. Use offset from page_info for next page.

get_batch_export

Get a batch export configuration by ID. Use list_batch_exports to find valid IDs.

create_batch_export

Create a batch export to regularly export data to a destination (S3, BigQuery, Snowflake, etc.).

delete_batch_export

Delete a batch export configuration permanently. Use list_batch_exports to find valid IDs.

list_cohorts

List cohorts with pagination. Use offset from page_info for next page.

get_cohort

Get a cohort by ID. Use list_cohorts to find valid IDs.

create_cohort

Create a new cohort. Use groups to define membership criteria with property filters.

update_cohort

Update a cohort's name, description, or filter groups. Use list_cohorts to find valid IDs.

delete_cohort

Soft-delete a cohort by marking it as deleted. Use list_cohorts to find valid IDs.

list_dashboards

List dashboards with pagination. Use offset from page_info for next page.

get_dashboard

Get a dashboard by ID with its tiles. Use list_dashboards to find valid IDs.

create_dashboard

Create a new dashboard. Add insights to it later using update_insight.

update_dashboard

Update a dashboard's name, description, or pinned status. Use list_dashboards to find valid IDs.

delete_dashboard

Soft-delete a dashboard by marking it as deleted. Use list_dashboards to find valid IDs.

list_event_definitions

List event definitions with pagination. Shows event names, volumes, and metadata tracked in the project.

get_event_definition

Get an event definition by ID. Use list_event_definitions to find valid IDs.

update_event_definition

Update an event definition's description or tags. Use list_event_definitions to find valid IDs.

list_experiments

List experiments with pagination. Use offset from page_info for next page.

get_experiment

Get an experiment by ID. Use list_experiments to find valid IDs.

create_experiment

Create a new experiment. Requires name and feature_flag_key. The feature flag will be auto-created if it doesn't exist.

update_experiment

Update an experiment's name, description, parameters, or filters. Use list_experiments to find valid IDs.

delete_experiment

Soft-delete an experiment by marking it as deleted. Use list_experiments to find valid IDs.

list_feature_flags

List feature flags with pagination. Use offset from page_info for next page.

get_feature_flag

Get a feature flag by ID. Use list_feature_flags to find valid IDs.

create_feature_flag

Create a new feature flag. Requires a unique key. Use filters to set release conditions.

update_feature_flag

Update a feature flag's key, name, active status, or filters. Use list_feature_flags to find valid IDs.

delete_feature_flag

Soft-delete a feature flag by marking it as deleted. Use list_feature_flags to find valid IDs.

list_insights

List saved insights with pagination. Use offset from page_info for next page.

get_insight

Get an insight by ID. Use list_insights to find valid IDs.

create_insight

Create a new insight. Use filters for legacy insights or query for HogQL-based insights.

update_insight

Update an insight's name, description, filters, or query. Use list_insights to find valid IDs.

delete_insight

Soft-delete an insight by marking it as deleted. Use list_insights to find valid IDs.

list_persons

List persons with pagination. Optionally search by name/distinct ID or filter by properties.

get_person

Get a person by ID with their properties and distinct IDs. Use list_persons to find valid IDs.

delete_person

Delete a person and their data permanently. Use list_persons to find valid IDs.

list_projects

List all projects in the organization. Use offset from page_info for next page.

get_project

Get a specific project by ID. Use list_projects to find valid project IDs.

update_project

Update a project's name or timezone. Use list_projects to find valid project IDs.

list_property_definitions

List property definitions with pagination. Optionally filter by type (event, person, group).

get_property_definition

Get a property definition by ID. Use list_property_definitions to find valid IDs.

update_property_definition

Update a property definition's description, tags, or type. Use list_property_definitions to find valid IDs.

run_query

Execute a HogQL query. Pass a query object like {'kind': 'HogQLQuery', 'query': 'SELECT count() FROM events'}. Max 50k rows.

list_session_recordings

List session recordings with pagination. Use offset from page_info for next page.

get_session_recording

Get a session recording by ID. Use list_session_recordings to find valid IDs.

delete_session_recording

Delete a session recording permanently. Use list_session_recordings to find valid IDs.

list_surveys

List surveys with pagination. Use offset from page_info for next page.

get_survey

Get a survey by ID. Use list_surveys to find valid IDs.

create_survey

Create a new survey. Define questions with type (open, multiple_choice, rating, etc.) and targeting filters.

update_survey

Update a survey's name, description, questions, or schedule. Use list_surveys to find valid IDs.

delete_survey

Delete a survey permanently. Use list_surveys to find valid IDs.

get_current_user

Get the currently authenticated user's profile including email, name, organization, and team details.

validate_credential

Validate PostHog credentials by fetching the current user profile. Returns success status and authenticated user email.

View all tools by creating a free accountSee more tools

How to set up Merge Agent Handler

In an mcp.json file, add the configuration below, and restart Cursor.

Learn more in the official documentation ↗

1{
2  "mcpServers": {
3    "agent-handler": {
4      "url": "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
5      "headers": {
6        "Authorization": "Bearer yMt*****"
7      }
8    }
9  }
10}
11
Copy Code

Open your Claude Desktop configuration file and add the server configuration below. You'll also need to restart the application for the changes to take effect.

Make sure Claude is using the Node v20+.

Learn more in the official documentation ↗

1{
2  "mcpServers": {
3    "agent-handler": {
4      "command": "npx",
5      "args": [
6        "-y",
7        "mcp-remote@latest",
8        "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
9        "--header",
10        "Authorization: Bearer ${AUTH_TOKEN}"
11      ],
12      "env": {
13        "AUTH_TOKEN": "yMt*****"
14      }
15    }
16  }
17}
Copy Code
Copied!

Open your Windsurf MCP configuration file and add the server configuration below.
Click on the refresh button in the top right of the Manage MCP server page or in the top right of the chat box in the box icon.

Learn more in the official documentation ↗

1{
2    "mcpServers": {
3      "agent-handler": {
4        "command": "npx",
5        "args": [
6          "-y",
7          "mcp-remote@latest",
8          "https://ah-api.merge.dev/api/v1/tool-packs/<tool-pack-id>/registered-users/<registered-user-id>/mcp",
9          "--header",
10          "Authorization: Bearer ${AUTH_TOKEN}"
11        ],
12        "env": {
13          "AUTH_TOKEN": "<ah-production-access-key>"
14        }
15      }
16    }
17  }
Copy Code

In Command Palette (Cmd+Shift+P on macOS, Ctrl+Shift+P on Windows), run "MCP: Open User Configuration".

You can then add the configuration below and press "start" right under servers. Enter the auth token when prompted.

Learn more in the official documentation ↗

1{
2  "inputs": [
3    {
4      "type": "promptString",
5      "id": "agent-handler-auth",
6      "description": "Agent Handler AUTH_TOKEN", // "yMt*****" when prompt
7      "password": true
8    }
9  ],
10  "servers": {
11    "agent-handler": {
12      "type": "stdio",
13      "command": "npx",
14      "args": [
15        "-y",
16        "mcp-remote@latest",
17        "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
18        "--header",
19        "Authorization: Bearer ${input:agent-handler-auth}"
20      ]
21    }
22  }
23}
Copy Code

FAQs on using Merge's PostHog  MCP server

FAQs on using Merge's PostHog  MCP server

Explore other MCP servers built and managed by Merge

cloudflare
Cloudflare
coda
Coda
confluence
Confluence
contentful
Contentful
crustdata
Crustdata
databricks
Databricks
datadog
Datadog
docusign
DocuSign
doordash
DoorDash
dropbox
Dropbox
duffel
Duffel
dynamics365
Dynamics 365 Sales
exa
Exa
expensify
Expensify
factset
FactSet
figma
Figma
firehydrant
FireHydrant
firecrawl
Firecrawl
fireflies
Fireflies
foursquare
Foursquare
freshbooks
FreshBooks
freshdesk
Freshdesk
freshservice
Freshservice
front
Front

Ready to try it out?

Whether you're an engineer experimenting with agents or a product manager looking to add tools, you can get started for free now