Skip to content

Remove non-spec progress/update method from MCP parser #4170

@jhrozek

Description

@jhrozek

Summary

The MCP parser's methodHandlers map in pkg/mcp/parser.go contains an entry for "progress/update" which is not a valid method in any MCP specification version (2024-11-05, 2025-03-26, 2025-06-18, or 2025-11-25).

The actual spec-defined method for progress notifications is notifications/progress, which is also correctly handled in the map.

Details

File: pkg/mcp/parser.go, line 194

"progress/update":            handleProgressMethod,
  • progress/update maps to handleProgressMethod (extracts progressToken as string only)
  • notifications/progress maps to handleProgressNotificationMethod (extracts progressToken as both string and numeric)

The extra entry is functionally harmless since no real MCP client/server would send this method name, but it could confuse maintainers into thinking it's a real spec method.

Suggested Fix

Remove the "progress/update" entry from the methodHandlers map. If it was intentionally kept for backwards compatibility with a non-standard implementation, add a comment explaining why.

Found During

Code review of #4157 (PR adding notifications/elicitation/complete to parser).

🤖 Generated with Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workinggoPull requests that update go codemcp

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions