Skip to content

Conversation

LucaButBoring
Copy link
Contributor

Proposes guidance for client SDK implementations regarding the User-Agent header. The proposal defines a standard format for informative user agents including the SDK name, operating system, and programming language; additional metadata is allowed, but is deliberately left unspecified by this proposal.

Motivation and Context

Service owners use HTTP request logs as a tool for debugging client/server incompatibilities and evaluating the impact of operational events, and the User-Agent header is often one data point informing response decisions. Today, the official MCP SDKs leave the user agent unspecified, relying on the default values provided by their respective HTTP request libraries. This makes it difficult to distinguish between requests originating from specific SDK versions, leaving service owners to directly ask users for relevant runtime information and delaying turnaround times when operational events occur. Encouraging client SDK implementations to use descriptive user agents will remediate this in many cases.

How Has This Been Tested?

TS SDK: modelcontextprotocol/typescript-sdk#872

Breaking Changes

None

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Documentation update

Checklist

  • I have read the MCP Documentation
  • My code follows the repository's style guidelines
  • New and existing tests pass locally
  • I have added appropriate error handling
  • I have added or updated documentation as needed

Additional context

SEP: #1329

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant