← Scan another
Medium
github · 151 files analyzed

PostHog/mcp

Powerful capabilities — review before trusting.

View source ↗
Outbound network 9
Environment variables (config / keys) 6
Shell / command execution 1

AI review

This is a legitimate PostHog MCP server implementation that provides analytics tools to AI agents. All API key usage follows standard authentication patterns and is scoped to PostHog's own API. No hidden instructions, deceptive tool descriptions, or data exfiltration mechanisms were found.

Model: deepseek-chat

Static findings

Outbound network · Makes outbound network requests

info examples/ai-sdk/package-lock.json:262 "../../typescript/node_modules/axios": {
info examples/langchain-js/package-lock.json:866 "axios": "*",
low typescript/scripts/update-openapi-client.ts:14 const response = await fetch(SCHEMA_URL);
low typescript/src/api/client.ts:118 const response = await fetch(url, {
low typescript/src/api/fetcher.ts:35 const response = await fetch(input.url, {
low typescript/src/integrations/mcp/index.ts:260 async fetch(request: Request, env: Env, ctx: ExecutionContext) {
low typescript/src/lib/utils/api.ts:10 const response = await fetch(url, {
low typescript/worker-configuration.d.ts:217 fetch(input: RequestInfo | URL, init?: RequestInit<RequestInitCfProperties>): Promise<Response>;

Environment variables (config / keys) · Reads environment variables (config / API keys)

info examples/ai-sdk/src/index.ts:10 posthogPersonalApiKey: process.env.POSTHOG_PERSONAL_API_KEY!,
info examples/langchain-js/src/index.ts:11 posthogPersonalApiKey: process.env.POSTHOG_PERSONAL_API_KEY!,
info examples/langchain/posthog_agent_example.py:27 personal_api_key=os.getenv("POSTHOG_PERSONAL_API_KEY"),
info typescript/README.md:23 posthogPersonalApiKey: process.env.POSTHOG_PERSONAL_API_KEY!,
info typescript/tests/api/client.integration.test.ts:5 const API_BASE_URL = process.env.TEST_POSTHOG_API_BASE_URL || "http://localhost:8010";
info typescript/tests/shared/test-utils.ts:9 export const API_BASE_URL = process.env.TEST_POSTHOG_API_BASE_URL || "http://localhost:8010";

Shell / command execution · Executes shell / system commands

medium typescript/scripts/update-openapi-client.ts:3 import { execSync } from "node:child_process";

Scanning every extension your team installs?

Pro & Team add monitoring, private scans, and a CI gate for unsafe extensions.

MCPVet is a heuristic aid, not a security guarantee. A clean grade does not prove an extension is safe; always review code and instructions you don't trust.