Skip to content

Assign MCPs & Tools to Copilot #7955

@MitchTalmadge

Description

@MitchTalmadge

Goal

I would like to be able to assign tools to Copilot when it is generating a PR title/description. It would be useful to allow it to access the Atlassian MCP and research the issue that I am working on, for example.

I could not find an issue related to this — please let me know if I missed it.

My Attempt

I've been able to assign a prompt as follows:

  1. Create a prompt at .github/prompts/pull-request-instructions.prompt.md:

    ---
    mode: agent
    tools: ['getJiraIssue', 'searchJiraIssuesUsingJql']
    ---
    When creating a pull request, please follow these guidelines to ensure clarity and consistency:
    
    1. **Issue Research (First Step):**
      - Before writing the title and description, check your branch name for an issue key and use the Atlassian MCP to research the Jira issue details if applicable.
      - Extract the issue key from your branch name (e.g., 'DEV-1234' from 'bf/mitch/DEV-1234-something-something').
      - Use `mcp_atlassian_atl_searchJiraIssuesUsingJql` or `mcp_atlassian_atl_getJiraIssue` with the extracted issue key to get the full issue context.
      - Review the issue summary, description, acceptance criteria, and any comments to understand the problem thoroughly.
      - This ensures your pull request accurately reflects the issue requirements and provides proper context.
    
    2. **Pull Request Title:**
      - If your branch name includes an issue key (e.g., 'DEV-1234'), start the title with this key in square brackets, followed by a space. For example: `[DEV-1234] Add User Authentication Feature`.
      - Use the issue summary from Jira as inspiration, but make it concise and specific to the changes made.
      - Use Title Case for the main title, capitalizing the first letter of each major word.
      - Keep the title descriptive of the actual solution implemented, not just the problem.
    
    3. **Pull Request Description:**
      - Begin the description with the issue key on its own line, formatted as `[DEV-1234]`.
      - Include a brief problem statement based on the Jira issue description - what was wrong or what needed to be addressed.
      - Reference the original issue's expected behavior or acceptance criteria where relevant.
      - Use bullet points to list the specific fixes or changes made in the pull request. This helps reviewers quickly understand the scope of your changes.
      - If the issue had multiple parts, address each part clearly.
      - Ensure that your description is clear and provides enough context for reviewers to understand the purpose and impact of your changes.
  2. Add the prompt to the instructions in .vscode/settings.json:

    "github.copilot.chat.pullRequestDescriptionGeneration.instructions": [
      {"file": ".github/prompts/pull-request-instructions.prompt.md"}
    ]
  3. Run the tool in GitHub Pull Requests UI when making a new PR.

However, it is obviously not using the MCP when I observe the emitted PR title & description. When checking the debug logs, it is showing that the prompt is not being parsed, but is copied verbatim into the custom instructions:

Image Image

Thanks

I appreciate any help with this, whether I am doing something wrong, or just some closure that what I am doing is not currently possible. This would be a very helpful feature!

Thank you!

Metadata

Metadata

Assignees

No one assigned

    Labels

    feature-requestRequest for new features or functionality

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions