Skip to content

Commit 320990c

Browse files
committed
README on SEPs
1 parent 2f9c4a2 commit 320990c

File tree

1 file changed

+120
-0
lines changed

1 file changed

+120
-0
lines changed

seps/README.md

Lines changed: 120 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,120 @@
1+
# Specification Enhancement Proposals (SEPs)
2+
3+
> **Experimental**: This is an experimental alternative method for creating SEPs. The default method remains using GitHub issues as described at https://modelcontextprotocol.io/community/sep-guidelines.
4+
5+
## Overview
6+
7+
This directory contains SEPs in markdown file format, similar to Python's PEP system. Each SEP is a standalone markdown document that describes a proposed enhancement to the MCP specification.
8+
9+
## File Naming Convention
10+
11+
SEP files use the format: `{NUMBER}-{TITLE}.md`
12+
13+
Where:
14+
- **NUMBER**: The pull request number that introduces this SEP
15+
- **TITLE**: A short, lowercase, hyphenated title
16+
17+
Examples:
18+
- `1234-resource-templates.md`
19+
- `1567-sampling-improvements.md`
20+
21+
## Creating a New SEP
22+
23+
1. **Draft your SEP** as a markdown file with a temporary name (e.g., `DRAFT-your-feature.md`)
24+
25+
2. **Create a pull request** adding your SEP file to the `seps/` directory
26+
27+
3. **Rename your file** to use the PR number as the SEP number (e.g., PR #1850`1850-your-feature.md`)
28+
29+
4. **Update the SEP header** to reference the correct number
30+
31+
5. **Find a Sponsor** - A Core Maintainer or Maintainer who will shepherd your proposal through review
32+
33+
## SEP File Structure
34+
35+
```markdown
36+
# SEP-{NUMBER}: {Title}
37+
38+
- **Status**: Draft | In-Review | Accepted | Rejected | Withdrawn | Final
39+
- **Type**: Standards Track | Informational | Process
40+
- **Created**: YYYY-MM-DD
41+
- **Author(s)**: Name <email> (@github-username)
42+
- **Sponsor**: @github-username
43+
- **PR**: #{NUMBER}
44+
45+
## Abstract
46+
47+
Brief (~200 word) technical summary of the proposal.
48+
49+
## Motivation
50+
51+
Why is this change needed? Why is the current protocol inadequate?
52+
53+
## Specification
54+
55+
Detailed technical specification of the proposed changes.
56+
57+
## Rationale
58+
59+
Design decisions made and alternatives that were considered.
60+
61+
## Backward Compatibility
62+
63+
How does this affect existing implementations? (Required for incompatible changes)
64+
65+
## Security Implications
66+
67+
Any security concerns related to this proposal.
68+
69+
## Reference Implementation
70+
71+
Link to or description of a reference implementation (required before Final status).
72+
```
73+
74+
## SEP Types
75+
76+
- **Standards Track**: New protocol features or changes affecting interoperability
77+
- **Informational**: Design issues, guidelines, or information without new features
78+
- **Process**: Changes to MCP processes or governance
79+
80+
## Status Workflow
81+
82+
`Draft``In-Review``Accepted``Final`
83+
84+
Alternative outcomes: `Rejected`, `Withdrawn`, or `Superseded`
85+
86+
- **Draft**: Initial proposal, sponsor assigned, informal review
87+
- **In-Review**: Open for formal community and maintainer review
88+
- **Accepted**: Approved, pending reference implementation
89+
- **Final**: Implemented and merged into the specification
90+
- **Rejected**: Not accepted after review
91+
- **Withdrawn**: Author withdrew the proposal
92+
- **Superseded**: Replaced by a newer SEP
93+
94+
## The Sponsor Role
95+
96+
A Sponsor is a Core Maintainer or Maintainer who:
97+
- Reviews the proposal and provides feedback
98+
- Requests changes based on community input
99+
- Initiates formal review when the SEP is ready
100+
- Shepherds the proposal through the acceptance process
101+
102+
You can find potential sponsors in the maintainers list. Tag them in your PR to request sponsorship.
103+
104+
## Why PR Numbers?
105+
106+
Using the PR number as the SEP number:
107+
- Eliminates need for maintainer number assignment
108+
- Creates natural traceability between proposal and discussion
109+
- Prevents number conflicts
110+
- Simplifies the contribution process
111+
112+
## Acceptance Criteria
113+
114+
- Prototype/reference implementation
115+
- Clear benefit to the MCP ecosystem
116+
- Community consensus
117+
118+
## Relationship to Issue-Based SEPs
119+
120+
This file-based approach complements the existing issue-based SEP process. Contributors may choose either method based on preference. The canonical SEP guidelines remain at https://modelcontextprotocol.io/community/sep-guidelines

0 commit comments

Comments
 (0)