Skip to content

Commit fb41622

Browse files
jules-pCopilotsophietheking
authored
GitHub MCP in Chat in GitHub (#56802)
Co-authored-by: Jules Porter <[email protected]> Co-authored-by: Copilot <[email protected]> Co-authored-by: Sophie <[email protected]>
1 parent af72b4b commit fb41622

File tree

7 files changed

+88
-3
lines changed

7 files changed

+88
-3
lines changed

content/copilot/concepts/chat.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,16 @@ For more information, see [AUTOTITLE](/copilot/customizing-copilot/adding-reposi
4343

4444
{% data reusables.copilot.change-the-ai-model %}
4545

46-
## Extending {% data variables.copilot.copilot_chat_dotcom_short %}
46+
## Extending {% data variables.copilot.copilot_chat_short %}
47+
48+
{% data variables.copilot.copilot_chat_short %} can be extended in a variety of ways to enhance its functionality and integrate it with other tools and services. This can include using the Model Context Protocol (MCP) to provide context-aware AI assistance, or connecting third-party tools to leverage {% data variables.product.github %}’s AI capabilities.
49+
50+
### Extending {% data variables.copilot.copilot_chat_short %} with MCP
51+
52+
MCP is an open standard that defines how applications share context with large language models (LLMs). MCP provides a standardized way to connect AI models to different data sources and tools, enabling them to work together more effectively.
53+
54+
You can configure MCP servers to provide context to {% data variables.copilot.copilot_chat_short %} in various IDEs, such as {% data variables.product.prodname_vscode %} and JetBrains IDEs. For {% data variables.copilot.copilot_chat_dotcom_short %}, the {% data variables.product.github %} MCP server is automatically configured, enabling {% data variables.copilot.copilot_chat_short %} to perform a limited set of tasks, at your request, such as creating branches or merging pull requests. For more information, see [AUTOTITLE](/copilot/how-tos/context/model-context-protocol/extending-copilot-chat-with-mcp) and [AUTOTITLE](/copilot/how-tos/context/model-context-protocol/using-the-github-mcp-server).
55+
56+
### Extending {% data variables.copilot.copilot_chat_short %} with external tools
4757

4858
{% data reusables.copilot.copilot-extensions.extending-copilot-chat %}

content/copilot/how-tos/provide-context/use-mcp/use-the-github-mcp-server.md

Lines changed: 48 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ contentType: how-tos
2323
2424
{% vscode %}
2525

26+
{% data reusables.copilot.mcp.mcp-ide-preview-note %}
27+
2628
{% data reusables.copilot.mcp.about-github-mcp-server %}
2729

2830
## Prerequisites
@@ -209,10 +211,14 @@ The {% data variables.product.github %} MCP server enables you to perform a wide
209211
* In the {% data variables.copilot.copilot_chat_short %} box, you may be asked to give additional permissions or provide more information to complete the action.
210212
1. Follow the prompts to complete the action.
211213

214+
{% data reusables.copilot.mcp.troubleshooting-mcp-server %}
215+
212216
{% endvscode %}
213217

214218
{% jetbrains %}
215219

220+
{% data reusables.copilot.mcp.mcp-ide-preview-note %}
221+
216222
{% data reusables.copilot.mcp.about-github-mcp-server %}
217223

218224
## Prerequisites
@@ -285,10 +291,14 @@ The {% data variables.product.github %} MCP server enables you to perform a wide
285291
* In the {% data variables.copilot.copilot_chat_short %} box, you may be asked to give additional permissions or provide more information to complete the action.
286292
1. Follow the prompts to complete the action.
287293

294+
{% data reusables.copilot.mcp.troubleshooting-mcp-server %}
295+
288296
{% endjetbrains %}
289297

290298
{% xcode %}
291299

300+
{% data reusables.copilot.mcp.mcp-ide-preview-note %}
301+
292302
{% data reusables.copilot.mcp.about-github-mcp-server %}
293303

294304
## Prerequisites
@@ -356,10 +366,14 @@ The {% data variables.product.github %} MCP server enables you to perform a wide
356366
* In the {% data variables.copilot.copilot_chat_short %} box, you may be asked to give additional permissions or provide more information to complete the action.
357367
1. Follow the prompts to complete the action.
358368

369+
{% data reusables.copilot.mcp.troubleshooting-mcp-server %}
370+
359371
{% endxcode %}
360372

361373
{% eclipse %}
362374

375+
{% data reusables.copilot.mcp.mcp-ide-preview-note %}
376+
363377
{% data reusables.copilot.mcp.about-github-mcp-server %}
364378

365379
## Prerequisites
@@ -428,9 +442,42 @@ The {% data variables.product.github %} MCP server enables you to perform a wide
428442
* In the {% data variables.copilot.copilot_chat_short %} box, you may be asked to give additional permissions or provide more information to complete the action.
429443
1. Follow the prompts to complete the action.
430444

445+
{% data reusables.copilot.mcp.troubleshooting-mcp-server %}
446+
431447
{% endeclipse %}
432448

433-
{% data reusables.copilot.mcp.troubleshooting-mcp-server %}
449+
{% webui %}
450+
451+
>[!NOTE] MCP in {% data variables.copilot.copilot_chat_dotcom_short %} is currently in {% data variables.release-phases.public_preview %} and subject to change.
452+
453+
## About MCP in {% data variables.copilot.copilot_chat_dotcom_short %}
454+
455+
The {% data variables.product.github %} MCP server is a Model Context Protocol (MCP) server provided and maintained by {% data variables.product.github %}. MCP allows you to integrate AI capabilities with other tools and services, enhancing your development experience by providing context-aware AI assistance.
456+
457+
For more information on MCP, see [the official MCP documentation](https://modelcontextprotocol.io/introduction).
458+
459+
Within {% data variables.copilot.copilot_chat_dotcom_short %}, the {% data variables.product.github %} MCP server is automatically configured, with a limited set of skills available. This allows you to instruct {% data variables.copilot.copilot_chat_short %} to perform tasks such as creating branches or merging pull requests on your behalf. For a full list of available skills, see [AUTOTITLE](/copilot/reference/github-copilot-chat-cheat-sheet#mcp-skills).
460+
461+
## Using the {% data variables.product.github %} MCP server in {% data variables.copilot.copilot_chat_dotcom_short %}
462+
463+
The {% data variables.product.github %} MCP server is automatically configured in {% data variables.copilot.copilot_chat_dotcom_short %}. You can start using it immediately without any additional setup.
464+
465+
{% data reusables.copilot.immersive-mode-instructions %}
466+
1. In the prompt box, type a request related to the skill you want {% data variables.copilot.copilot_chat_short %} to perform, and press **Enter**.
467+
468+
Some examples of requests you can make are:
469+
* `Create a new branch called [BRANCH-NAME] in the repository [USERNAME/REPO-NAME].`
470+
* `Create a new branch called [BRANCH-NAME] in the repository [USERNAME/REPO-NAME].`
471+
* `Merge the pull request [PULL-REQUEST-NUMBER] in the repository [USERNAME/REPO-NAME].`
472+
473+
1. {% data variables.copilot.copilot_chat_short %} will ask you to confirm that you want to proceed with the action. Click **Allow** to confirm.
474+
1. {% data variables.copilot.copilot_chat_short %} will use the relevant skill from the {% data variables.product.github %} MCP server to perform the action you requested. {% data variables.copilot.copilot_chat_short %} will show you the result of the action in the chat interface.
475+
476+
## Limitations
477+
478+
The {% data variables.product.github %} MCP server in {% data variables.copilot.copilot_chat_dotcom_short %} is currently limited to a set of predefined skills. If you ask {% data variables.copilot.copilot_chat_short %} to perform an action that is not supported by the MCP server, it will still attempt to provide a helpful response, but it may not be able to perform the action as expected. For example, if you ask {% data variables.copilot.copilot_chat_short %} to create a new issue, it may provide you with a draft issue template, but you will still need to manually create the issue.
479+
480+
{% endwebui %}
434481

435482
## Further reading
436483

content/copilot/how-tos/use-chat/use-chat-in-github.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,10 @@ redirect_from:
2020
contentType: how-tos
2121
---
2222

23+
## Introduction
24+
25+
This guide describes how to use {% data variables.copilot.copilot_chat_short %} to ask questions about software development in {% data variables.product.github %}. You can ask general questions about software development, or specific questions about the issues or code in a repository. For more information, see [AUTOTITLE](/copilot/concepts/about-github-copilot-chat).
26+
2327
## Submitting a question to {% data variables.copilot.copilot_chat_short %}
2428

2529
You can open {% data variables.copilot.copilot_chat_short %} from any page on {% data variables.product.github %}. Certain questions may require you to be in a specific context, such as a repository, issue, or pull request. The following procedure describes how to ask a general software related question, and demonstrates the core functionality of {% data variables.copilot.copilot_chat_short %} on {% data variables.product.github %}. For more information on other scenarios, see [Asking {% data variables.copilot.copilot_chat_short %} questions in different contexts](/copilot/using-github-copilot/asking-github-copilot-questions-in-github#asking-copilot-chat-questions-in-different-contexts).

content/copilot/how-tos/use-chat/use-chat-in-ide.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,10 @@ shortTitle: Use Chat in IDE
1919
contentType: how-tos
2020
---
2121

22+
## Introduction
23+
24+
This guide describes how to use {% data variables.copilot.copilot_chat_short %} to ask questions about software development in your IDE. You can ask general questions about software development, or specific questions about the code in your project. For more information, see [AUTOTITLE](/copilot/concepts/about-github-copilot-chat).
25+
2226
{% vscode %}
2327

2428
## Prerequisites

content/copilot/how-tos/use-chat/use-chat-in-mobile.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ contentType: how-tos
2020

2121
## Overview
2222

23-
{% data variables.copilot.copilot_chat %} is a chat interface that lets you ask and receive answers to coding-related questions in {% data variables.product.prodname_mobile %}. You can also use {% data variables.copilot.copilot_chat %} on either {% data variables.product.github %} or within a supported IDE. For information on using {% data variables.copilot.copilot_chat %} in an IDE, see [AUTOTITLE](/copilot/github-copilot-chat/copilot-chat-in-ides/using-github-copilot-chat-in-your-ide).
23+
{% data variables.copilot.copilot_chat %} is a chat interface that lets you ask and receive answers to coding-related questions in {% data variables.product.prodname_mobile %}. You can also use {% data variables.copilot.copilot_chat %} on either {% data variables.product.github %} or within a supported IDE. For information about {% data variables.copilot.copilot_chat %}, see [AUTOTITLE](/copilot/concepts/about-github-copilot-chat).
2424

2525
{% data variables.copilot.copilot_mobile_short %} can help you with a variety of coding-related tasks, like offering you code suggestions, providing natural language descriptions of a piece of code's functionality and purpose, generating unit tests for your code, and proposing fixes for bugs in your code. For more information, see [AUTOTITLE](/copilot/github-copilot-chat/copilot-chat-in-github-mobile/about-github-copilot-chat-in-github-mobile).
2626

content/copilot/reference/cheat-sheet.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,22 @@ Available slash commands may vary, depending on your environment and the context
4444
| `/new` | Start a new conversation |
4545
| `/rename` | Rename a conversation. |
4646

47+
## MCP skills
48+
49+
Below is a list of the MCP skills that are currently available in {% data variables.copilot.copilot_chat_dotcom_short %}, and example prompts you can use to invoke them. You do not need to use the MCP skill name in your prompt; you can simply ask {% data variables.copilot.copilot_chat_short %} to perform the task.
50+
51+
| Skill | Example prompt |
52+
| --- | --- |
53+
| `create_branch` | Create a new branch called [BRANCH-NAME] in the repository [USERNAME/REPO-NAME]. |
54+
| `create_or_update_file` | Add a new file named `hello-world.md` to my [BRANCH-NAME] of [USERNAME/REPO-NAME] with the content: "Hello, world! This file was created from {% data variables.copilot.copilot_chat_dotcom_short %}!" |
55+
| `push_files` | Push the files `test.md` with the content "This is a test file" and `test-again.md` with the content "This is another test file" to the [BRANCH-NAME] in [USERNAME/REPO-NAME] |
56+
| `update_pull_request_branch`| Update the branch for pull request [PR-number] in [USERNAME/REPO-NAME] with the latest changes from the base branch. |
57+
| `merge_pull_request` | Merge pull request [PR-Number] in [USERNAME/REPO-NAME] |
58+
| `get_me` | Tell me about myself. |
59+
| `search_users` | Search for users with the name "Mona Octocat" |
60+
61+
For more information about using MCP skills in {% data variables.copilot.copilot_chat_short %}, see [AUTOTITLE](/copilot/how-tos/context/model-context-protocol/using-the-github-mcp-server).
62+
4763
{% endwebui %}
4864

4965
{% vscode %}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
>[!NOTE]
2+
> The remote {% data variables.product.github %} MCP server is currently in {% data variables.release-phases.public_preview %} and subject to change; use of the {% data variables.product.github %} MCP server locally is generally available (GA).
3+
>
4+
> While in {% data variables.release-phases.public_preview %}, access to the remote {% data variables.product.github %} MCP server through OAuth in {% data variables.product.prodname_copilot_short %} is governed by the {% data variables.product.prodname_copilot_short %} **Editor preview features** policy at the organization or enterprise level. PAT access to the server is managed by PAT policies.

0 commit comments

Comments
 (0)