Skip to content

Commit b00b70e

Browse files
feat: Add create_project and create_iteration_field tools for GitHub Projects V2
Co-authored-by: joaodotwork <50487816+joaodotwork@users.noreply.github.com> Co-authored-by: SamMorrowDrums <4811358+SamMorrowDrums@users.noreply.github.com>
1 parent 6d57d3b commit b00b70e

File tree

6 files changed

+699
-0
lines changed

6 files changed

+699
-0
lines changed

README.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -989,6 +989,22 @@ The following sets of tools are available:
989989

990990
<summary><picture><source media="(prefers-color-scheme: dark)" srcset="pkg/octicons/icons/project-dark.png"><source media="(prefers-color-scheme: light)" srcset="pkg/octicons/icons/project-light.png"><img src="pkg/octicons/icons/project-light.png" width="20" height="20" alt="project"></picture> Projects</summary>
991991

992+
- **create_iteration_field** - Create iteration field
993+
- **Required OAuth Scopes**: `project`
994+
- `duration`: Duration in days for each iteration (typically 7 for weekly) (number, required)
995+
- `field_name`: Field name (e.g., 'Sprint', 'Iteration') (string, required)
996+
- `iterations`: Array of iteration definitions (object[], required)
997+
- `owner`: GitHub username or organization name (string, required)
998+
- `owner_type`: Owner type (string, required)
999+
- `project_number`: The project's number (number, required)
1000+
- `start_date`: Start date in YYYY-MM-DD format (string, required)
1001+
1002+
- **create_project** - Create project
1003+
- **Required OAuth Scopes**: `project`
1004+
- `owner`: GitHub username or organization name (string, required)
1005+
- `owner_type`: Owner type (string, required)
1006+
- `title`: Project title (string, required)
1007+
9921008
- **projects_get** - Get details of GitHub Projects resources
9931009
- **Required OAuth Scopes**: `read:project`
9941010
- **Accepted OAuth Scopes**: `project`, `read:project`
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
{
2+
"annotations": {
3+
"title": "Create iteration field"
4+
},
5+
"description": "Create an iteration field on a ProjectsV2 with weekly sprints. Returns field ID and iteration IDs.",
6+
"inputSchema": {
7+
"properties": {
8+
"duration": {
9+
"description": "Duration in days for each iteration (typically 7 for weekly)",
10+
"type": "number"
11+
},
12+
"field_name": {
13+
"description": "Field name (e.g., 'Sprint', 'Iteration')",
14+
"type": "string"
15+
},
16+
"iterations": {
17+
"description": "Array of iteration definitions",
18+
"items": {
19+
"properties": {
20+
"duration": {
21+
"type": "number"
22+
},
23+
"startDate": {
24+
"type": "string"
25+
},
26+
"title": {
27+
"type": "string"
28+
}
29+
},
30+
"required": [
31+
"title",
32+
"startDate",
33+
"duration"
34+
],
35+
"type": "object"
36+
},
37+
"type": "array"
38+
},
39+
"owner": {
40+
"description": "GitHub username or organization name",
41+
"type": "string"
42+
},
43+
"owner_type": {
44+
"description": "Owner type",
45+
"enum": [
46+
"user",
47+
"org"
48+
],
49+
"type": "string"
50+
},
51+
"project_number": {
52+
"description": "The project's number",
53+
"type": "number"
54+
},
55+
"start_date": {
56+
"description": "Start date in YYYY-MM-DD format",
57+
"type": "string"
58+
}
59+
},
60+
"required": [
61+
"owner",
62+
"owner_type",
63+
"project_number",
64+
"field_name",
65+
"duration",
66+
"start_date",
67+
"iterations"
68+
],
69+
"type": "object"
70+
},
71+
"name": "create_iteration_field"
72+
}
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
{
2+
"annotations": {
3+
"title": "Create project"
4+
},
5+
"description": "Create a new GitHub Project (ProjectsV2). Returns the project ID and number.",
6+
"inputSchema": {
7+
"properties": {
8+
"owner": {
9+
"description": "GitHub username or organization name",
10+
"type": "string"
11+
},
12+
"owner_type": {
13+
"description": "Owner type",
14+
"enum": [
15+
"user",
16+
"org"
17+
],
18+
"type": "string"
19+
},
20+
"title": {
21+
"description": "Project title",
22+
"type": "string"
23+
}
24+
},
25+
"required": [
26+
"owner",
27+
"owner_type",
28+
"title"
29+
],
30+
"type": "object"
31+
},
32+
"name": "create_project"
33+
}

0 commit comments

Comments
 (0)