create_issue
Add issues to GitHub repositories by specifying owner, repo, title, and body through Multi-MCPs, a unified server integrating multiple third-party APIs for streamlined development workflows.
Instructions
Create an issue in a repository
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| body | No | ||
| owner | Yes | ||
| repo | Yes | ||
| title | Yes |
Implementation Reference
- src/apis/github/github.ts:106-114 (handler)The main handler function for the 'create_issue' tool. It validates inputs, checks for GitHub token configuration, and calls the GitHubClient's createIssue method to perform the API request.async create_issue(args: Record<string, unknown>) { if (!cfg.githubToken) throw new Error("GITHUB_TOKEN is not configured"); const owner = String(args.owner || ""); const repo = String(args.repo || ""); const title = String(args.title || ""); const body = args.body ? String(args.body) : undefined; if (!owner || !repo || !title) throw new Error("owner, repo and title are required"); return client.createIssue(owner, repo, title, body); },
- src/apis/github/github.ts:67-76 (schema)Input schema for the 'create_issue' tool, defining the expected parameters: owner, repo, title (required), and optional body.inputSchema: { type: "object", properties: { owner: { type: "string" }, repo: { type: "string" }, title: { type: "string" }, body: { type: "string" }, }, required: ["owner", "repo", "title"], },
- src/apis/github/github.ts:64-77 (registration)Registration of the 'create_issue' tool in the GitHub toolset, including name, description, and input schema.{ name: "create_issue", description: "Create an issue in a repository", inputSchema: { type: "object", properties: { owner: { type: "string" }, repo: { type: "string" }, title: { type: "string" }, body: { type: "string" }, }, required: ["owner", "repo", "title"], }, },
- src/apis/github/github.ts:22-27 (helper)Helper method on GitHubClient class that performs the actual HTTP POST request to GitHub API to create an issue.createIssue(owner: string, repo: string, title: string, body?: string) { return this.request(`/repos/${owner}/${repo}/issues`, { method: "POST", body: { title, body }, }); }
- src/tools/register.ts:26-26 (registration)Invocation of registerGitHub() in the central tool registration function, which includes the 'create_issue' tool among others.registerGitHub(),