kubeview-mcp 1.5.0 → 1.6.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 (30) hide show
  1. package/CHANGELOG.md +17 -1
  2. package/README.md +20 -2
  3. package/SKILL.md +263 -0
  4. package/TODO.md +11 -0
  5. package/dist/src/server/MCPServer.d.ts +11 -0
  6. package/dist/src/server/MCPServer.d.ts.map +1 -1
  7. package/dist/src/server/MCPServer.js +70 -23
  8. package/dist/src/server/MCPServer.js.map +1 -1
  9. package/dist/src/tools/meta/PlanStepTool.d.ts +70 -0
  10. package/dist/src/tools/meta/PlanStepTool.d.ts.map +1 -0
  11. package/dist/src/tools/meta/PlanStepTool.js +109 -0
  12. package/dist/src/tools/meta/PlanStepTool.js.map +1 -0
  13. package/dist/src/version.d.ts +1 -1
  14. package/dist/src/version.js +1 -1
  15. package/dist/tests/compat/McpSdkCompatibility.test.d.ts +2 -0
  16. package/dist/tests/compat/McpSdkCompatibility.test.d.ts.map +1 -0
  17. package/dist/tests/compat/McpSdkCompatibility.test.js +72 -0
  18. package/dist/tests/compat/McpSdkCompatibility.test.js.map +1 -0
  19. package/dist/tests/server/MCPServer.integration.test.js +91 -0
  20. package/dist/tests/server/MCPServer.integration.test.js.map +1 -1
  21. package/dist/tests/server/MCPServer.test.js +14 -0
  22. package/dist/tests/server/MCPServer.test.js.map +1 -1
  23. package/dist/tests/tools/argocd/ArgoCDAppLogsTool.test.js +9 -0
  24. package/dist/tests/tools/argocd/ArgoCDAppLogsTool.test.js.map +1 -1
  25. package/dist/tests/tools/meta/PlanStepTool.test.d.ts +2 -0
  26. package/dist/tests/tools/meta/PlanStepTool.test.d.ts.map +1 -0
  27. package/dist/tests/tools/meta/PlanStepTool.test.js +78 -0
  28. package/dist/tests/tools/meta/PlanStepTool.test.js.map +1 -0
  29. package/package.json +5 -4
  30. package/RELEASE.md +0 -154
package/CHANGELOG.md CHANGED
@@ -7,6 +7,23 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [1.6.0] - 2026-02-04
11
+
12
+ ### Changed
13
+ - **MCP SDK compatibility hardening**: Pin `@modelcontextprotocol/sdk` to `^1.25.3`.
14
+ - **Type import policy**: Disallow removed loose type exports (`Tools`, `Prompts`, `Resources`, `Roots`, `Sampling`) from `@modelcontextprotocol/sdk/types.js`.
15
+
16
+ ### Added
17
+ - Introduced the plan_step tool for structured planning and tracking during investigations.
18
+ - Added detailed skills documentation for debugging Kubernetes clusters in SKILL.md.
19
+ - Improved error handling for malformed JSON-RPC payloads in MCPServer.
20
+ - Added tests for the new plan_step tool and ensured compatibility with the updated SDK.
21
+
22
+ ## [1.5.1] - 2026-01-14
23
+
24
+ ### Changed
25
+ - **Add error logging for ArgoCD API log fetch failure**
26
+
10
27
  ## [1.5.0] - 2025-12-21
11
28
 
12
29
  ### Added
@@ -18,7 +35,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
18
35
  - **Release v1.5.0**
19
36
  - **Update README.md to enhance project description and add link to the article**
20
37
 
21
-
22
38
  ## [1.4.7] - 2025-12-03
23
39
 
24
40
  ### Changed
package/README.md CHANGED
@@ -19,6 +19,14 @@ Learn more about the benefits of code mode and implementation in [Evicting MCP t
19
19
 
20
20
  ---
21
21
 
22
+ ## MCP SDK Compatibility
23
+
24
+ - This project is pinned to `@modelcontextprotocol/sdk@^1.25.3`.
25
+ - Legacy loose type imports (`Tools`, `Prompts`, `Resources`, `Roots`, `Sampling`) are disallowed.
26
+ - This compatibility pass intentionally excludes Streamable HTTP transport migration and icon metadata rollout.
27
+
28
+ ---
29
+
22
30
  ## 🚀 Quick Start
23
31
 
24
32
  ### Prerequisites
@@ -86,6 +94,16 @@ Configure the server using environment variables:
86
94
 
87
95
  ### Utilities
88
96
  - **`run_code`**: Execute sandboxed TypeScript code for complex tasks.
97
+ - **`plan_step`**: Record step-by-step planning state for long, complex investigations.
98
+
99
+ ### Why `plan_step` really helps:
100
+
101
+ 1. **Stable multi-step planning without bloating chat context.**
102
+ Instead of dumping a massive plan into the conversation, the agent can store step-by-step progress in `plan_step` and keep user-facing responses clean.
103
+ 2. **A consistent state machine for long tasks.**
104
+ Complex workflows usually need: plan -> execute step 1 -> verify -> step 2 -> backtrack -> branch -> finalize. `plan_step` gives the agent a structured way to follow that lifecycle without losing track.
105
+ 3. **Better tool routing.**
106
+ Good agents alternate between thinking and acting. `plan_step` encourages that rhythm: log intent, call real tools, capture outcome, decide next step.
89
107
 
90
108
  ---
91
109
 
@@ -108,9 +126,9 @@ For complex tasks requiring logic, loops, or data processing, use **Code Mode**:
108
126
  "env": { "MCP_MODE": "code" }
109
127
  ```
110
128
 
111
- ### 💡 Pro Tip: Code Mode Prompt
129
+ ### 💡 Pro Tip: `code-mode` MCP Prompt
112
130
 
113
- The server includes a built-in prompt named **`code-mode`** that injects the full TypeScript API documentation, tool overview, and examples into the context.
131
+ The server includes a built-in MCP server prompt named **`code-mode`** that injects the full TypeScript API documentation, tool overview, and examples into the context.
114
132
 
115
133
  **In Cursor IDE**:
116
134
  Simply type `/kubeview/code-mode` in the prompt (or select it from the `/` prompt menu). This gives the AI the exact context it needs to write correct `run_code` scripts immediately.
package/SKILL.md ADDED
@@ -0,0 +1,263 @@
1
+ # KubeView MCP Skills: Debugging Kubernetes Clusters
2
+
3
+ This document contains reusable investigation playbooks ("skills") for debugging Kubernetes clusters using the KubeView MCP server.
4
+
5
+ ## Assumptions & Constraints
6
+
7
+ - **Read-Only by Design**: Avoid making state changes (edit, delete, scale) through these tools unless explicitly authorized.
8
+ - **Documentation**: Use `search_tools` to find new capabilities.
9
+ - **Prefer MCP Tools**: Use `kube_*` tools over shelling out to `kubectl`.
10
+ - **Security First**: Treat output as potentially sensitive.
11
+ - **Declarative over Imperative**: When suggesting fixes, provide YAML snippets rather than `kubectl patch/edit` commands.
12
+
13
+ ## Tool Quick Map
14
+
15
+ - **Cluster + Workloads**: `kube_list`, `kube_get`, `kube_metrics`
16
+ - **Logs**: `kube_logs` (single pod), `kube_log` (multi-pod with filters + events)
17
+ - **Network**: `kube_net`, `kube_exec`, `kube_port`
18
+ - **Discovery**: `search_tools` (tools-mode), `run_code` (code-mode)
19
+
20
+ In code-mode (`run_code`), these become `tools.kubernetes.*` (e.g., `tools.kubernetes.list`).
21
+
22
+ ---
23
+
24
+ ## Debugging Decision Tree
25
+
26
+ ```
27
+ Issue reported
28
+
29
+ ├─ Pod not running? ──────────► See: Debug a Pod that Won't Start
30
+
31
+ ├─ Service unreachable? ──────► See: Debug a Service With No Traffic
32
+
33
+ ├─ Deployment stuck? ─────────► See: Debug a Deployment
34
+
35
+ ├─ Node issues? ──────────────► See: Node Debugging
36
+
37
+ └─ Performance/Resources? ────► See: Resource Debugging
38
+ ```
39
+
40
+ ---
41
+
42
+ ## Skill: Cluster Triage (fast)
43
+
44
+ **Intent**: Get a high-signal overview and decide where to drill down next.
45
+
46
+ **Procedure**:
47
+
48
+ 1. **Cluster overview (diagnostics)**
49
+ ```json
50
+ { "tool": "kube_list", "args": {} }
51
+ ```
52
+
53
+ 2. **Metrics + diagnostics**
54
+ ```json
55
+ { "tool": "kube_metrics", "args": { "diagnostics": true, "includeSummary": true, "topN": 5 } }
56
+ ```
57
+
58
+ 3. **Identify "Worst" Namespaces** (if not obvious)
59
+ - Look for high counts of `CrashLoopBackOff` or `Pending`.
60
+ - List pods in that namespace:
61
+ ```json
62
+ { "tool": "kube_list", "args": { "namespace": "<ns>" } }
63
+ ```
64
+
65
+ ---
66
+
67
+ ## Skill: Debug a Pod that Won't Start / CrashLoop
68
+
69
+ **Intent**: Identify why a pod is Pending / CrashLoopBackOff / ImagePullBackOff / OOMKilled.
70
+
71
+ **Procedure**:
72
+
73
+ 1. **Describe the pod with events + diagnostics**
74
+ ```json
75
+ {
76
+ "tool": "kube_get",
77
+ "args": {
78
+ "resourceType": "pod",
79
+ "name": "<pod>",
80
+ "namespace": "<ns>",
81
+ "includeEvents": true,
82
+ "includeDiagnostics": true
83
+ }
84
+ }
85
+ ```
86
+
87
+ 2. **Pull logs (current & previous)**
88
+ ```json
89
+ {
90
+ "tool": "kube_logs",
91
+ "args": { "podName": "<pod>", "namespace": "<ns>", "tailLines": 100, "previous": true }
92
+ }
93
+ ```
94
+
95
+ 3. **Common Pod Issues Checklist**:
96
+ - **CrashLoopBackOff**:
97
+ - Exit Code 1: App error (check logs).
98
+ - Exit Code 137: OOMKilled (check memory limits vs usage).
99
+ - Exit Code 143: Graceful termination timeout or SIGTERM.
100
+ - **ImagePullBackOff**:
101
+ - Check image name/tag spelling.
102
+ - Check ImagePullSecrets (registry auth).
103
+ - **Pending**:
104
+ - Insufficient CPU/Memory (Cluster full?).
105
+ - Unsatisfiable Node Affinity/Selector.
106
+ - PVC binding failure.
107
+
108
+ ---
109
+
110
+ ## Skill: Debug a Deployment / Rollout Not Progressing
111
+
112
+ **Intent**: Explain why a deployment has missing/zero ready replicas.
113
+
114
+ **Procedure**:
115
+
116
+ 1. **Check Deployment Status & Conditions**
117
+ ```json
118
+ {
119
+ "tool": "kube_get",
120
+ "args": {
121
+ "resourceType": "deployment",
122
+ "name": "<deploy>",
123
+ "namespace": "<ns>",
124
+ "includeEvents": true
125
+ }
126
+ }
127
+ ```
128
+
129
+ 2. **Inspect ReplicaSets** (Is a new RS failing to spin up?)
130
+ ```json
131
+ {
132
+ "tool": "kube_list",
133
+ "args": { "resourceType": "replicaset", "namespace": "<ns>", "labelSelector": "<k=v>" }
134
+ }
135
+ ```
136
+
137
+ 3. **Aggregate Logs** (See if new pods are failing immediately)
138
+ ```json
139
+ {
140
+ "tool": "kube_log",
141
+ "args": {
142
+ "namespace": "<ns>",
143
+ "ownerKind": "Deployment",
144
+ "ownerName": "<deploy>",
145
+ "since": "30m",
146
+ "includeEvents": true
147
+ }
148
+ }
149
+ ```
150
+
151
+ **Common Issues**:
152
+ - **Progressing Stuck**: New ReplicaSet can't create pods (quota? errors?).
153
+ - **Available < Desired**: Pods running but failing Readiness Probe.
154
+ - **Old ReplicaSets not cleaning up**: Deployment strategy issues.
155
+
156
+ ---
157
+
158
+ ## Skill: Debug a Service With No Traffic / No Endpoints
159
+
160
+ **Intent**: Determine if the issue is Selector, Pod Readiness, or Network Policy.
161
+
162
+ **Procedure**:
163
+
164
+ 1. **Verify Endpoints Exist**
165
+ ```json
166
+ {
167
+ "tool": "kube_get",
168
+ "args": { "resourceType": "endpoints", "name": "<svc>", "namespace": "<ns>" }
169
+ }
170
+ ```
171
+ - *Empty?* Check Service Selector vs Pod Labels. Are pods Ready?
172
+
173
+ 2. **Test Connectivity from inside cluster**
174
+ ```json
175
+ {
176
+ "tool": "kube_net",
177
+ "args": {
178
+ "sourcePod": "<debug-pod>",
179
+ "namespace": "<ns>",
180
+ "targetService": "<svc>",
181
+ "runServiceConnectivityTest": true,
182
+ "runDnsTest": true
183
+ }
184
+ }
185
+ ```
186
+
187
+ ---
188
+
189
+ ## Skill: Node Debugging
190
+
191
+ **Intent**: Identify if node-level issues (Pressure, Taints) are causing pod failures.
192
+
193
+ **Procedure**:
194
+
195
+ 1. **List Nodes & Status**
196
+ ```json
197
+ { "tool": "kube_list", "args": { "resourceType": "node" } }
198
+ ```
199
+
200
+ 2. **Describe Specific Node**
201
+ ```json
202
+ { "tool": "kube_get", "args": { "resourceType": "node", "name": "<node>", "includeEvents": true } }
203
+ ```
204
+
205
+ **Conditions to Watch**:
206
+ - **Ready**: Must be `True`.
207
+ - **MemoryPressure / DiskPressure / PIDPressure**: If `True`, node is evicting/blocking pods.
208
+ - **NetworkUnavailable**: CNI plugin failure?
209
+
210
+ ---
211
+
212
+ ## Skill: Resource Debugging
213
+
214
+ **Intent**: Detect resource bottlenecks (CPU throttling, OOM).
215
+
216
+ **Procedure**:
217
+
218
+ 1. **Top Pods/Nodes**
219
+ ```json
220
+ { "tool": "kube_metrics", "args": { "topN": 10, "includeSummary": true } }
221
+ ```
222
+
223
+ 2. **OOMKilled Investigation**
224
+ - Check `kube_get` pod status for `LastState: OOMKilled`.
225
+ - Solution: Increase Memory Limit or fix leak.
226
+
227
+ 3. **CPU Throttling**
228
+ - If app is slow but no errors: Check if usage is near CPU Limit.
229
+ - Solution: Increase CPU Limit (or remove limit and keep request).
230
+
231
+ ---
232
+
233
+ ## Skill: Long Investigation Hygiene (using `plan_step`)
234
+
235
+ **Intent**: Keep multi-step debugging stable and reviewable.
236
+
237
+ **Template**:
238
+ ```json
239
+ {
240
+ "tool": "plan_step",
241
+ "args": {
242
+ "step": "Triage cluster health, then drill into failing namespace workloads",
243
+ "stepNumber": 1,
244
+ "totalSteps": 4,
245
+ "nextStepNeeded": true
246
+ }
247
+ }
248
+ ```
249
+
250
+ ---
251
+
252
+ ## Skill: One-shot Code Mode Triage (Advanced)
253
+
254
+ **Intent**: Use `run_code` for complex logic (e.g., "Find all pods without resource limits").
255
+
256
+ **Example**:
257
+ ```typescript
258
+ const pods = await tools.kubernetes.list({ resourceType: 'pod' });
259
+ const noLimits = pods.items.filter(p =>
260
+ p.spec.containers.some(c => !c.resources?.limits)
261
+ );
262
+ return { count: noLimits.length, names: noLimits.map(p => p.metadata.name) };
263
+ ```
package/TODO.md CHANGED
@@ -1,2 +1,13 @@
1
+ - Generate SKILL.md with all the tools and their descriptions for ease of use by the agent.
2
+ Make your MCP server “skill-friendly” with a few small technical tweaks
3
+ • Ensure tool names and schemas are stable and descriptive, because Skills rely on predictable interfaces.
4
+ • Provide a single “diagnostics snapshot” tool (even if it internally calls others) so Skills can start with one cheap probe.
5
+ • Include golden examples in your docs/prompts that Skills can copy, and keep them updated as your toolset evolves. This aligns with how Skills are described across Claude/Cursor/Codex: instructions + resources that steer behavior reliably. 
6
+
7
+ - A major trend in 2026 is giving agents tools to "think" before they act.
8
+ Sequential Thinking: Add a tool called `plan_step` that allows the agent to output its reasoning process into a structured format before calling a "real" tool. This improves reliability for complex DevOps tasks.
9
+ https://github.com/modelcontextprotocol/servers/tree/main/src/sequentialthinking
10
+
11
+
1
12
  - kube_logs (multiple log streams + events, selectors support)
2
13
  - add support for k8s context selector
@@ -42,6 +42,7 @@ export interface MCPServerOptions {
42
42
  skipGracefulShutdown?: boolean;
43
43
  }
44
44
  export declare class MCPServer {
45
+ private static readonly MAX_MALFORMED_STDIN_LOGS;
45
46
  private server;
46
47
  private transport;
47
48
  private logger;
@@ -51,7 +52,12 @@ export declare class MCPServer {
51
52
  private resourceTemplates;
52
53
  private plugins;
53
54
  private prompts;
55
+ private planStepTool?;
54
56
  private isShuttingDown;
57
+ private stdinChunkBuffer;
58
+ private malformedStdinCount;
59
+ private readonly stdinDecoder;
60
+ private readonly logMalformedPayloadPreview;
55
61
  private options;
56
62
  private eventListeners;
57
63
  constructor(options?: MCPServerOptions);
@@ -112,6 +118,11 @@ export declare class MCPServer {
112
118
  * Connect to the transport with improved error handling
113
119
  */
114
120
  private connectWithErrorHandling;
121
+ /**
122
+ * Inspect newline-delimited JSON-RPC messages and emit user-friendly diagnostics.
123
+ */
124
+ private inspectIncomingTransportData;
125
+ private inspectTransportLine;
115
126
  /**
116
127
  * Stop the MCP server
117
128
  */
@@ -1 +1 @@
1
- {"version":3,"file":"MCPServer.d.ts","sourceRoot":"","sources":["../../../src/server/MCPServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MCPServer.d.ts","sourceRoot":"","sources":["../../../src/server/MCPServer.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,8 @@ import winston from 'winston';
5
5
  import TransportStream from 'winston-transport';
6
6
  import { isSensitiveMaskEnabled, maskObjectDeep } from '../utils/SensitiveData.js';
7
7
  import { isMcpToolResult } from '../utils/McpToolResult.js';
8
+ import { PlanStepTool } from '../tools/meta/PlanStepTool.js';
9
+ import { StringDecoder } from 'node:string_decoder';
8
10
  const LOG_LEVEL_ORDER = [
9
11
  'debug',
10
12
  'info',
@@ -70,6 +72,7 @@ class MCPLoggingTransport extends TransportStream {
70
72
  }
71
73
  }
72
74
  export class MCPServer {
75
+ static MAX_MALFORMED_STDIN_LOGS = 5;
73
76
  server;
74
77
  transport;
75
78
  logger;
@@ -79,7 +82,13 @@ export class MCPServer {
79
82
  resourceTemplates = new Map();
80
83
  plugins = new Map();
81
84
  prompts = new Map();
85
+ planStepTool;
82
86
  isShuttingDown = false;
87
+ stdinChunkBuffer = '';
88
+ malformedStdinCount = 0;
89
+ stdinDecoder = new StringDecoder('utf8');
90
+ logMalformedPayloadPreview = process.env.MCP_LOG_MALFORMED_PAYLOAD_PREVIEW === 'true' ||
91
+ process.env.MCP_LOG_MALFORMED_PAYLOAD_PREVIEW === '1';
83
92
  options;
84
93
  eventListeners = [];
85
94
  constructor(options = {}) {
@@ -118,6 +127,10 @@ export class MCPServer {
118
127
  this.logger.info('MCPServer initialized');
119
128
  }
120
129
  registerBuiltInTools() {
130
+ this.planStepTool = new PlanStepTool();
131
+ this.registerTool(this.planStepTool.tool, async (params) => {
132
+ return this.planStepTool.execute(params);
133
+ });
121
134
  const searchTool = {
122
135
  name: 'search_tools',
123
136
  description: 'Search registered tools by name or description.',
@@ -487,36 +500,70 @@ export class MCPServer {
487
500
  * Connect to the transport with improved error handling
488
501
  */
489
502
  async connectWithErrorHandling() {
490
- // Add global handler for parse errors that might not be caught by the SDK
491
- const originalStdinData = process.stdin.listeners('data');
492
- // Add our handler before the SDK's handlers
493
- process.stdin.removeAllListeners('data');
494
- process.stdin.on('data', (chunk) => {
503
+ // Validate incoming JSON-RPC frames without disrupting SDK listeners.
504
+ const validateChunk = (chunk) => {
495
505
  try {
496
- // Try to parse as JSON to catch syntax errors early
497
- const str = chunk.toString().trim();
498
- if (str.length > 0) {
499
- try {
500
- JSON.parse(str);
501
- }
502
- catch (err) {
503
- this.logger.warn(`Received invalid JSON: ${str.substring(0, 100)}${str.length > 100 ? '...' : ''}`);
504
- this.logger.error('JSON parse error:', err);
505
- // Continue processing - the SDK will handle the error
506
- }
507
- }
506
+ const asString = Buffer.isBuffer(chunk) ? this.stdinDecoder.write(chunk) : chunk;
507
+ if (asString)
508
+ this.inspectIncomingTransportData(asString);
508
509
  }
509
- catch (err) {
510
- this.logger.error('Error in pre-processing stdin data:', err);
510
+ catch (error) {
511
+ this.logger.warn('Failed to inspect incoming MCP transport data', {
512
+ error: error instanceof Error ? error.message : String(error),
513
+ });
511
514
  }
512
- });
513
- // Re-add original listeners
514
- for (const listener of originalStdinData) {
515
- process.stdin.on('data', listener);
515
+ };
516
+ if (typeof process.stdin.prependListener === 'function') {
517
+ process.stdin.prependListener('data', validateChunk);
518
+ this.eventListeners.push({
519
+ target: process.stdin,
520
+ event: 'data',
521
+ handler: validateChunk,
522
+ });
523
+ }
524
+ else {
525
+ this.addTrackedListener(process.stdin, 'data', validateChunk);
516
526
  }
517
527
  // Connect to the transport
518
528
  await this.server.connect(this.transport);
519
529
  }
530
+ /**
531
+ * Inspect newline-delimited JSON-RPC messages and emit user-friendly diagnostics.
532
+ */
533
+ inspectIncomingTransportData(chunk) {
534
+ this.stdinChunkBuffer += chunk;
535
+ const lines = this.stdinChunkBuffer.split(/\r?\n/);
536
+ this.stdinChunkBuffer = lines.pop() ?? '';
537
+ for (const line of lines) {
538
+ this.inspectTransportLine(line);
539
+ }
540
+ }
541
+ inspectTransportLine(line) {
542
+ const trimmed = line.trim();
543
+ if (!trimmed)
544
+ return;
545
+ try {
546
+ JSON.parse(trimmed);
547
+ }
548
+ catch (error) {
549
+ const message = error instanceof Error ? error.message : String(error);
550
+ const payloadPreview = this.logMalformedPayloadPreview && !isSensitiveMaskEnabled()
551
+ ? `${trimmed.slice(0, 160)}${trimmed.length > 160 ? '...' : ''}`
552
+ : undefined;
553
+ if (this.malformedStdinCount < MCPServer.MAX_MALFORMED_STDIN_LOGS) {
554
+ this.logger.warn('MCP transport connection issue: malformed JSON-RPC payload', {
555
+ reason: message,
556
+ payloadPreview,
557
+ payloadLength: trimmed.length,
558
+ hint: 'Check that the client sends one valid JSON object per line to stdin.',
559
+ });
560
+ }
561
+ else if (this.malformedStdinCount === MCPServer.MAX_MALFORMED_STDIN_LOGS) {
562
+ this.logger.warn('Additional malformed MCP transport payloads are being suppressed');
563
+ }
564
+ this.malformedStdinCount += 1;
565
+ }
566
+ }
520
567
  /**
521
568
  * Stop the MCP server
522
569
  */
@@ -1 +1 @@
1
- {"version":3,"file":"MCPServer.js","sourceRoot":"","sources":["../../../src/server/MCPServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MCPServer.js","sourceRoot":"","sources":["../../../src/server/MCPServer.ts"],"names":[],"mappings":"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"}