@jaypie/mcp 0.7.20 → 0.7.22

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.
@@ -9,7 +9,7 @@ import { gt } from 'semver';
9
9
  /**
10
10
  * Docs Suite - Documentation services (skill, version, release_notes)
11
11
  */
12
- const BUILD_VERSION_STRING = "@jaypie/mcp@0.7.20#3704c7bc"
12
+ const BUILD_VERSION_STRING = "@jaypie/mcp@0.7.22#e20270cd"
13
13
  ;
14
14
  const __filename$1 = fileURLToPath(import.meta.url);
15
15
  const __dirname$1 = path.dirname(__filename$1);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jaypie/mcp",
3
- "version": "0.7.20",
3
+ "version": "0.7.22",
4
4
  "description": "Jaypie MCP",
5
5
  "repository": {
6
6
  "type": "git",
@@ -0,0 +1,9 @@
1
+ ---
2
+ version: 1.2.13
3
+ date: 2026-02-18
4
+ summary: Update @jaypie/llm peer dependency to ^1.2.10
5
+ ---
6
+
7
+ ## Changes
8
+
9
+ - Update `@jaypie/llm` peer dependency to `^1.2.10`
@@ -0,0 +1,9 @@
1
+ ---
2
+ version: 1.2.14
3
+ date: 2026-02-18
4
+ summary: Bump for @jaypie/logger 1.2.2 Datadog log forwarding transport
5
+ ---
6
+
7
+ ## Changes
8
+
9
+ - Bump `@jaypie/logger` to 1.2.2 with opt-in Datadog log forwarding transport
@@ -0,0 +1,11 @@
1
+ ---
2
+ version: 1.2.10
3
+ date: 2026-02-18
4
+ summary: Add retry for transient network errors across all LLM providers
5
+ ---
6
+
7
+ ## Changes
8
+
9
+ - Add `isTransientNetworkError` utility that detects low-level Node.js/undici network errors (ECONNRESET, ETIMEDOUT, etc.) by inspecting error codes, messages, and the `error.cause` chain
10
+ - Integrate transient network error detection into all four provider adapters (Anthropic, Gemini, OpenAI, OpenRouter) so network errors are classified as retryable instead of unknown
11
+ - Add retry logic to `StreamLoop` for connection-level failures before any chunks are yielded; mid-stream failures emit an error chunk instead of throwing
@@ -0,0 +1,15 @@
1
+ ---
2
+ version: 1.2.2
3
+ date: 2026-02-18
4
+ summary: Add opt-in Datadog log forwarding transport for non-Lambda environments
5
+ ---
6
+
7
+ ## Changes
8
+
9
+ - Add `DatadogLogTransport` that ships logs directly to Datadog's Logs API via HTTPS when enabled by env vars
10
+ - Transport activates when `DATADOG_LOCAL_FORWARDING=true` and `DATADOG_API_KEY` is set — zero application code changes needed
11
+ - Batches logs (flush every 5s or at 100 entries) with atomic buffer swap and best-effort flush on process exit
12
+ - Auto-tags entries with `ddsource`, `service`, `env`, and `hostname` from DD_* and PROJECT_* env vars
13
+ - Transport errors are silently swallowed and never affect stdout logging
14
+ - Export `isDatadogForwardingEnabled()` and `_resetDatadogTransport()` for inspection and Lambda lifecycle
15
+ - `init()` now resets the Datadog transport so env vars are re-read between Lambda invocations
@@ -0,0 +1,10 @@
1
+ ---
2
+ version: 0.7.21
3
+ date: 2026-02-18
4
+ summary: Add release notes for @jaypie/llm 1.2.10 and jaypie 1.2.13
5
+ ---
6
+
7
+ ## Changes
8
+
9
+ - Add release notes for `@jaypie/llm` 1.2.10 (transient network error retry)
10
+ - Add release notes for `jaypie` 1.2.13
@@ -0,0 +1,10 @@
1
+ ---
2
+ version: 0.7.22
3
+ date: 2026-02-18
4
+ summary: Add logger release notes for Datadog log forwarding transport
5
+ ---
6
+
7
+ ## Changes
8
+
9
+ - Add release notes for `@jaypie/logger` 1.2.2
10
+ - Add release notes for `jaypie` 1.2.14
package/skills/datadog.md CHANGED
@@ -50,6 +50,37 @@ log.error("Payment failed", {
50
50
  });
51
51
  ```
52
52
 
53
+ ## Direct Log Forwarding (Non-Lambda)
54
+
55
+ For local dev, eval runs, and CI where CloudWatch subscription filters aren't available, enable direct HTTP forwarding to Datadog's Logs API:
56
+
57
+ ```bash
58
+ DATADOG_LOCAL_FORWARDING=true DATADOG_API_KEY=your-key npm run dev
59
+ ```
60
+
61
+ This activates automatically in `@jaypie/logger` — zero code changes needed. Logs are batched (flush every 5s or 100 entries) and shipped via HTTPS to `http-intake.logs.{DD_SITE}/api/v2/logs`.
62
+
63
+ ### Environment Variables
64
+
65
+ | Variable | Description | Default |
66
+ |----------|-------------|---------|
67
+ | `DATADOG_LOCAL_FORWARDING` | Enable forwarding (`true`/`false`) | `false` |
68
+ | `DATADOG_API_KEY` | Datadog API key (required) | — |
69
+ | `DD_SITE` | Datadog intake site | `datadoghq.com` |
70
+ | `DD_SERVICE` / `PROJECT_SERVICE` | Service tag | `unknown` |
71
+ | `DD_ENV` / `PROJECT_ENV` | Environment tag | `local` |
72
+ | `DD_HOST` / `PROJECT_HOST` | Hostname tag | `os.hostname()` |
73
+
74
+ ### Inspection
75
+
76
+ ```typescript
77
+ import { isDatadogForwardingEnabled } from "@jaypie/logger";
78
+
79
+ if (isDatadogForwardingEnabled()) {
80
+ // Transport is active
81
+ }
82
+ ```
83
+
53
84
  ## @jaypie/datadog Package
54
85
 
55
86
  The `@jaypie/datadog` package provides utilities:
@@ -112,6 +112,34 @@ const table = new JaypieDynamoDb(this, "myApp", {
112
112
 
113
113
  ## Local Development
114
114
 
115
+ Use docker-compose for local DynamoDB. The `@jaypie/dynamodb` MCP tool can generate a `docker-compose.yml` with custom ports.
116
+
117
+ ### Suggested package.json Scripts
118
+
119
+ ```json
120
+ {
121
+ "scripts": {
122
+ "dynamo:init": "docker compose up -d && npm run dynamo:create-table",
123
+ "dynamo:create-table": "AWS_ACCESS_KEY_ID=local AWS_SECRET_ACCESS_KEY=local aws dynamodb create-table --table-name jaypie-local --attribute-definitions AttributeName=pk,AttributeType=S AttributeName=sk,AttributeType=S --key-schema AttributeName=pk,KeyType=HASH AttributeName=sk,KeyType=RANGE --billing-mode PAY_PER_REQUEST --endpoint-url http://127.0.0.1:9060 2>/dev/null || true",
124
+ "dynamo:remove": "docker compose down -v",
125
+ "dynamo:start": "docker compose up -d",
126
+ "dynamo:stop": "docker compose down"
127
+ }
128
+ }
129
+ ```
130
+
131
+ | Script | Description |
132
+ |--------|-------------|
133
+ | `dynamo:init` | Start containers and create the default table |
134
+ | `dynamo:create-table` | Create the local table (idempotent) |
135
+ | `dynamo:remove` | Stop containers and delete data volumes |
136
+ | `dynamo:start` | Start containers (data persists) |
137
+ | `dynamo:stop` | Stop containers (data persists) |
138
+
139
+ Adjust the `--endpoint-url` port and `--table-name` to match your `docker-compose.yml`.
140
+
141
+ ### Manual Setup
142
+
115
143
  ```bash
116
144
  # Start local DynamoDB
117
145
  docker run -p 8000:8000 amazon/dynamodb-local