Other formats agents might prefer:
markdownjsonllms.txt

Agent? You probably want markdown or json, or Pod over MCP.

Reported issues for pmcp Desktop Extension by paiml

Pod holds 19 of 27 GitHub reports that passed its relevance review. This can include external user reports, maintainer-confirmed bugs, and concrete feature gaps. Treat them as evidence to inspect, not a count of distinct defects.

Back to pmcp Desktop Extension by paiml.

Most discussed

cargo pmcp deploy init --target-type google-cloud-run: scaffold .pmcp/deploy.toml with [target] + [gcp] + [server] + [environment] minimum-viable schema

Problem

cargo pmcp deploy init --target-type google-cloud-run (src/deployment/targets/google_cloud_run/mod.rs line ~99) currently scaffolds three files — Dockerfile, .dockerignore, and cloudbuild.yaml — but does not emit a .pmcp/deploy.toml. As a result, app-level configuration (environment variables, region, Cloud Run service name, memory/CPU sizing, ingress controls, allow-unauthenticated) has no declarative path. Operators who need to wire these values to a deployed serv

Read the thread · 2026-05-19 · open · 2 comments

cargo pmcp deploy --target-type google-cloud-run: switch default runtime base to gcr.io/distroless/cc-debian12 with opt-out [runtime] base knob

Problem

The generated Dockerfile produced by cargo pmcp deploy --target-type google-cloud-run (source: cargo-pmcp/src/deployment/targets/google_cloud_run/dockerfile.rs) uses FROM debian:bookworm-slim as the runtime stage and apt-installs ca-certificates and libssl3, producing runtime images on the order of ~80 MB. The runtime layer includes a full shell (bash/sh), apt, and a system package manager — none of which are required for a Rust HTTP server and all of which add to the a

Read the thread · 2026-05-19 · open · 2 comments

cargo pmcp deploy init --target-type google-cloud-run: support multi-crate isolated layouts via opt-in [layout] block in deploy.toml

Problem

cargo pmcp deploy init --target-type google-cloud-run emits one of two Dockerfile templates depending on detected layout, and both templates fail on multi-crate isolated layouts — for different reasons. The workspace template (cargo-pmcp/src/deployment/targets/google_cloud_run/dockerfile.rs line ~14) uses COPY . . followed by a cargo metadata regex-based step that excludes packages with "lambda" in their name. On a multi-crate isolated layout this over-bundles: every

Read the thread · 2026-05-19 · open · 2 comments

feat: Add OAuth client-side middleware with token injection and auto-refresh

Problem

The SDK has comprehensive server-side OAuth support (bearer token validation, scope middleware) but lacks client-side OAuth middleware for:

  • Automatic token injection into outgoing requests
  • 401/403 detection and automatic token refresh
  • Retry logic after re-authentication
  • Token lifecycle management (expiry tracking, proactive refresh)

This is critical for MCP clients connecting to OAuth-protected servers. The TypeScript SDK provides withOAuth for this use case.

Propo

Read the thread · 2025-10-08 · closed · 2 comments

feat: Add HttpMiddleware trait for transport-level HTTP concerns

Problem

The current middleware system operates at the Protocol/JSON-RPC layer, which misses HTTP-specific concerns like:

  • Header injection (auth tokens, correlation IDs, custom headers)
  • Request/response logging with header inclusion
  • Status code-based conditionals (retry on 429, circuit break on 503)
  • HTTP-specific transformations before reaching Protocol layer

The TypeScript SDK provides fetch-wrapping middleware for these concerns. We need equivalent ergonomics.

Proposed Solution

Read the thread · 2025-10-08 · closed · 2 comments

fix: .cargo/config.toml has local /mnt/zram/targets path — breaks CI

Bug

All CI jobs fail with:

error: failed to create directory /mnt/zram/targets — Permission denied (os error 13)

.cargo/config.toml has target-dir = "/mnt/zram/targets" committed, which only exists on a local dev machine.

Five-Whys

  1. Why permission denied? /mnt/zram/targets doesn't exist on GitHub runners.
  2. Why is Cargo using that path? .cargo/config.toml sets target-dir.
  3. Why is a local path in the repo? Developer's zram ramdisk config was committed.

Read the thread · 2026-04-05 · closed · outside contributor · 1 comment

Stdio Transport Non-Compliance with MCP Specification

The stdio transport implementation uses HTTP-style Content-Length header framing instead of the newline-delimited JSON-RPC messages required by the MCP specification. This causes incompatibility with standard MCP clients.

The specification is exacting here:


Messages are individual JSON-RPC requests, notifications, or responses.
Messages are delimited by newlines, and MUST NOT contain embedded newlines.

The server MUST NOT write anything to its stdout that is not a valid MCP message.
The 

[Read the thread](https://github.com/paiml/rust-mcp-sdk/issues/158) · 2026-01-15 · closed · outside contributor · 1 comment

### feat: Add first-class middleware integration to Client/Protocol/Transport

## Summary

The middleware system (`Middleware`, `AdvancedMiddleware`, `MiddlewareChain`, `EnhancedMiddlewareChain`) is comprehensive and powerful, but there's no standard integration path to attach middleware to `Client`, `Protocol`, or `Transport`. Users must manually invoke middleware chains, which is error-prone and defeats the purpose of having middleware infrastructure.

## Current State

**What exists:**
- ✅ Comprehensive middleware traits (`Middleware`, `AdvancedMiddleware`)
- ✅ Chain im

[Read the thread](https://github.com/paiml/rust-mcp-sdk/issues/80) · 2025-10-08 · closed · 1 comment

## Most recent

### StdioTransport: stdin EOF disables stdout, dropping responses to already-accepted requests

# StdioTransport: stdin EOF disables stdout, dropping responses to already-accepted requests

## Summary

`StdioTransport` uses a single `closed` flag for two independent streams. Reaching EOF on
**stdin** sets it, and `send()` then refuses every **stdout** write. A client that pipes a
batch of requests and closes stdin — the normal shape of a one-shot MCP session — never
receives the responses to requests the server already accepted and answered.

## Where

`src/shared/stdio.rs` (v2.17.0):

Read the thread · 2026-07-31 · closed · outside contributor · 0 comments

pmcp-workbook-server: 2 stale golden-tool tests quarantined from workspace-test gate

Summary

Two tests in pmcp-workbook-server fail against the committed golden bundle and are quarantined from the workspace-test CI gate (--exclude pmcp-workbook-server) so unrelated PRs can merge. They need workbook-domain review.

Failing tests

crates/pmcp-workbook-server/src/assemble.rs:

  • assemble::tests::build_server_from_golden_registers_five_tools (panics at :130)
  • assemble::tests::matching_bundle_id_succeeds (panics at :142)

Both assert the server built from t

Read the thread · 2026-07-05 · open · 0 comments

wasm support for pmcp-macros

Love that this project supports webassembly though I notice that the WasmMcpServer uses WasmTool, WasmResource and WasmPrompt rather than ToolHandler, PromptHandler and ResourceHandler. I've not spent a ton of time digging into the macro generation

Read the thread · 2026-06-11 · open · external user · 0 comments

Phase 75 SATD: cargo-pmcp commands roadmap (landing build, dev watch, add scaffolding)

Outstanding SATDs from Phase 75 Plan 75-04 triage (D-04)

Filed as part of Phase 75 SATD triage. Replaces 4 // TODO: Implement ... comments in cargo-pmcp/src/commands/ with // See #NNN — references after this issue is filed.

Outstanding follow-ups

  • cargo-pmcp/src/commands/landing/mod.rs:92 — Implement the landing build subcommand (currently prints "Build command coming in Phase 1!" and asks the user to fall back to npm run build).
  • `cargo-pmcp/src/commands/landing/

Read the thread · 2026-04-25 · closed · 0 comments

Phase 75 SATD: wire aws-sdk-secretsmanager into AWS secrets provider

Outstanding SATDs from Phase 75 Plan 75-04 triage (D-04)

Filed as part of Phase 75 SATD triage. Replaces 4 // TODO: Implement with aws-sdk-secretsmanager comments in cargo-pmcp/src/secrets/providers/aws.rs with // See #NNN — references after this issue is filed.

Outstanding follow-ups

  • cargo-pmcp/src/secrets/providers/aws.rs:96list(): integrate aws-sdk-secretsmanager list_secrets API; remove the Err(SecretError::ProviderError { ... "not yet implemented" }) stub.

Read the thread · 2026-04-25 · closed · 0 comments

Stdio example not working

Try example from README.md in the project root. Server started but not respond.

Read the thread · 2025-11-27 · open · external user · 0 comments

RFC: cargo-pmcp - Production-Grade MCP Server Development Toolkit

RFC: cargo-pmcp - Production-Grade MCP Server Development Toolkit

Type: RFC / Feature Request Labels: enhancement, RFC, tooling, cargo-pmcp, discussion


Summary

We propose cargo-pmcp - a batteries-included toolkit for building production-grade MCP servers in Rust. This RFC is based on real-world experience building 6 production MCP servers and incorporates proven patterns for security, scalability, and developer experience.

Goal: Make cargo-pmcp the

Read the thread · 2025-10-23 · closed · 0 comments

feat: Improve middleware developer ergonomics with macros, presets, and examples

Problem

Creating custom middleware currently requires significant boilerplate:

  • Manual trait implementations with async-trait
  • Verbose struct definitions
  • Repetitive priority/should_execute implementations
  • No guidance on typical middleware stacks per transport

The TypeScript SDK provides createMiddleware helper for concise middleware creation. We need equivalent Rust ergonomics plus:

  • Macro for concise custom middleware
  • Pre-configured middleware stacks per transport
  • Concrete int

Read the thread · 2025-10-08 · closed · 0 comments

feat: Add Prometheus and OpenTelemetry exporters for middleware metrics

Problem

The existing MetricsMiddleware collects metrics but lacks integration with standard observability platforms:

  • No Prometheus exporter for scraping
  • No OpenTelemetry integration for distributed tracing
  • No histogram/percentile metrics (only counters)
  • Manual metrics retrieval required

Production deployments need:

  • Automatic metrics export to monitoring systems
  • Distributed tracing correlation
  • Standard metric formats (Prometheus, OTLP)
  • Histograms for latency distribution

Read the thread · 2025-10-08 · open · 0 comments

feat: Add CompressionMiddleware for HTTP/WebSocket payloads

Problem

Large JSON-RPC payloads (especially resource content, tool results, and prompt responses) can significantly impact:

  • Network bandwidth usage
  • Request/response latency
  • Mobile/edge deployment performance

The TypeScript SDK doesn't have built-in compression, but this is a common production need for HTTP/WebSocket transports. Stdio transport should NOT use compression (breaks line-delimited framing).

Proposed Solution

Add CompressionMiddleware that operates at the HTTP transp

Read the thread · 2025-10-08 · open · 0 comments

feat: Enhance CircuitBreakerMiddleware and RateLimitMiddleware with scoping and metrics

Problem

Current CircuitBreakerMiddleware and RateLimitMiddleware implementations are global and lack production-grade features:

CircuitBreakerMiddleware limitations:

  • Global state (no per-endpoint/method/session scoping)
  • No persistence (resets on restart)
  • No aggregated metrics/observability
  • Fixed thresholds (no dynamic adjustment)

RateLimitMiddleware limitations:

  • Global limits (no per-endpoint/method/session scoping)
  • No persistence across restarts
  • No distributed co

Read the thread · 2025-10-08 · closed · 0 comments

The remaining reports are on the project's issue tracker.