create_project_card
Generate a new card in a project column by specifying the column ID and adding note content. Simplify task organization and tracking within your project workflow.
Instructions
Create a new card in a project column
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| column_id | Yes | The ID of the column | |
| note | Yes | The note content for the card |
Implementation Reference
- src/operations/projects.ts:199-218 (handler)Core implementation of the create_project_card tool: makes POST request to GitHub Projects API to create a new card in a column.export async function createProjectCard( github_pat: string, column_id: number, note: string ): Promise<z.infer<typeof ProjectCardSchema>> { const response = await githubRequest( github_pat, `https://api.github.com/projects/columns/${column_id}/cards`, { method: "POST", body: { note, }, headers: { "Accept": "application/vnd.github.inertia-preview+json", }, } ); return ProjectCardSchema.parse(response); }
- src/operations/projects.ts:91-98 (schema)Input schema definitions for create_project_card tool (public and internal versions with GitHub PAT).export const CreateProjectCardSchema = z.object({ column_id: z.number().describe("The ID of the column"), note: z.string().describe("The note content for the card"), }); export const _CreateProjectCardSchema = CreateProjectCardSchema.extend({ github_pat: z.string().describe("GitHub Personal Access Token"), });
- src/index.ts:270-273 (registration)Registration of the create_project_card tool in the MCP server's tool list, including name, description, and input schema reference.name: "create_project_card", description: "Create a new card in a project column", inputSchema: zodToJsonSchema(projects.CreateProjectCardSchema), },
- src/index.ts:721-728 (handler)Dispatcher handler in main server that parses arguments and delegates to projects.createProjectCard implementation.case "create_project_card": { const args = projects._CreateProjectCardSchema.parse(params.arguments); const { github_pat, column_id, note } = args; const result = await projects.createProjectCard(github_pat, column_id, note); return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }], }; }