@posthog/mcp 0.12.0 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/README.md +22 -2
  2. package/dist/extensions/analytics-parameters.js +14 -10
  3. package/dist/extensions/capture.js +12 -8
  4. package/dist/extensions/client-identity.js +18 -14
  5. package/dist/extensions/compatibility.js +16 -12
  6. package/dist/extensions/constants.js +24 -20
  7. package/dist/extensions/constants.mjs +2 -2
  8. package/dist/extensions/context-parameters.js +13 -9
  9. package/dist/extensions/conversation-id.js +18 -14
  10. package/dist/extensions/detect.js +23 -19
  11. package/dist/extensions/event-types.js +15 -11
  12. package/dist/extensions/exceptions.js +12 -8
  13. package/dist/extensions/headers.js +16 -12
  14. package/dist/extensions/ids.js +12 -8
  15. package/dist/extensions/instrument-highlevel.js +12 -8
  16. package/dist/extensions/instrument-lowlevel.js +12 -8
  17. package/dist/extensions/instrumentation.js +19 -15
  18. package/dist/extensions/intent.js +14 -10
  19. package/dist/extensions/internal.js +17 -13
  20. package/dist/extensions/lib-identity.js +12 -8
  21. package/dist/extensions/logger.js +17 -13
  22. package/dist/extensions/mcp-payloads.js +16 -12
  23. package/dist/extensions/mcp-sdk-compat.js +23 -19
  24. package/dist/extensions/model-parameters.d.ts.map +1 -1
  25. package/dist/extensions/model-parameters.js +21 -14
  26. package/dist/extensions/model-parameters.mjs +6 -3
  27. package/dist/extensions/output-instructions.js +15 -11
  28. package/dist/extensions/posthog-events.js +12 -8
  29. package/dist/extensions/posthog-mcp.d.ts +23 -12
  30. package/dist/extensions/posthog-mcp.d.ts.map +1 -1
  31. package/dist/extensions/posthog-mcp.js +49 -11
  32. package/dist/extensions/posthog-mcp.mjs +37 -3
  33. package/dist/extensions/request-headers.js +15 -11
  34. package/dist/extensions/sanitization.d.ts +2 -2
  35. package/dist/extensions/sanitization.d.ts.map +1 -1
  36. package/dist/extensions/sanitization.js +13 -8
  37. package/dist/extensions/sanitization.mjs +1 -0
  38. package/dist/extensions/session-token.js +17 -13
  39. package/dist/extensions/session-token.mjs +2 -2
  40. package/dist/extensions/session.js +16 -12
  41. package/dist/extensions/sink.js +14 -10
  42. package/dist/extensions/tools.js +15 -11
  43. package/dist/extensions/tracing-helpers.js +15 -11
  44. package/dist/extensions/transport-identity.js +15 -11
  45. package/dist/extensions/truncation.js +21 -16
  46. package/dist/index.d.ts +1 -1
  47. package/dist/index.d.ts.map +1 -1
  48. package/dist/index.js +22 -18
  49. package/dist/index.mjs +7 -7
  50. package/dist/types.d.ts +28 -4
  51. package/dist/types.d.ts.map +1 -1
  52. package/dist/types.js +2 -2
  53. package/dist/types.mjs +1 -0
  54. package/dist/version.d.ts +1 -1
  55. package/dist/version.js +15 -11
  56. package/dist/version.mjs +1 -1
  57. package/package.json +11 -11
  58. package/src/extensions/model-parameters.ts +7 -3
  59. package/src/extensions/posthog-mcp.ts +84 -12
  60. package/src/extensions/sanitization.ts +6 -2
  61. package/src/index.ts +1 -0
  62. package/src/types.ts +27 -4
  63. package/src/version.ts +1 -1
package/src/types.ts CHANGED
@@ -511,6 +511,13 @@ export interface ToolCallCaptureData extends McpCaptureCommon {
511
511
  * the host derived it. Defaults to `context_parameter` when an intent is set.
512
512
  */
513
513
  intentSource?: MCPAnalyticsIntentSource
514
+ /**
515
+ * The calling agent's self-reported model id -> `$mcp_llm_model`. On the
516
+ * custom-dispatcher path, read it from {@link PostHogMCP.prepareToolCall}.
517
+ */
518
+ llmModel?: string
519
+ /** How the model id was obtained -> `$mcp_llm_model_source`. */
520
+ llmModelSource?: MCPAnalyticsModelSource
514
521
  /** Captured call arguments → `$mcp_parameters` (sanitized + truncated). */
515
522
  parameters?: unknown
516
523
  /** Captured tool result → `$mcp_response` (sanitized + truncated). */
@@ -586,18 +593,30 @@ export interface PrepareToolListOptions {
586
593
  reportMissing?: boolean
587
594
  }
588
595
 
596
+ /** Options for {@link PostHogMCP.prepareToolCall}. */
597
+ export interface PrepareToolCallOptions {
598
+ /**
599
+ * The tool descriptor before PostHog preparation. Pass this on stateless or
600
+ * multi-replica servers so SDK argument ownership is resolved per request.
601
+ */
602
+ originalTool?: { inputSchema?: unknown }
603
+ }
604
+
589
605
  /**
590
606
  * Result of {@link PostHogMCP.prepareToolCall}: the intent pulled off the
591
- * incoming call, the arguments with the injected `context` removed (so your tool
592
- * handler and its schema validation never see it), and whether the call targeted
593
- * the `get_more_tools` virtual tool.
607
+ * incoming call, the arguments with SDK-owned analytics fields removed, and
608
+ * whether the call targeted the `get_more_tools` virtual tool.
594
609
  */
595
610
  export interface PreparedToolCall {
596
611
  /** The agent's stated intent (the `context` argument), if present. */
597
612
  intent?: string
598
613
  /** Where the intent came from. Always `context_parameter` here when set. */
599
614
  intentSource?: MCPAnalyticsIntentSource
600
- /** The call arguments with the injected `context` key stripped out. */
615
+ /** The agent's self-reported model id, when `captureModel` is enabled and owned by the SDK. */
616
+ llmModel?: string
617
+ /** How the model id was obtained. Always `self_reported` when present. */
618
+ llmModelSource?: MCPAnalyticsModelSource
619
+ /** The call arguments with SDK-owned `context` and `llm_model` keys removed. */
601
620
  args?: Record<string, unknown>
602
621
  /** True when `name` is the `get_more_tools` virtual tool. */
603
622
  isMissingCapability: boolean
@@ -610,6 +629,10 @@ export interface MissingCapabilityCaptureData extends McpCaptureCommon {
610
629
  * on the `get_more_tools` call) → `$mcp_intent`.
611
630
  */
612
631
  context?: string
632
+ /** The calling agent's self-reported model id -> `$mcp_llm_model`. */
633
+ llmModel?: string
634
+ /** How the model id was obtained -> `$mcp_llm_model_source`. */
635
+ llmModelSource?: MCPAnalyticsModelSource
613
636
  /** Captured call arguments → `$mcp_parameters` (sanitized + truncated). */
614
637
  parameters?: unknown
615
638
  }
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export const version = '0.12.0'
1
+ export const version = '0.13.0'