Cline + GitHub MCP 学习记录

打印 上一主题 下一主题

主题 1769|帖子 1769|积分 5309

简介

本文旨在引导读者快速入门 GitHub MCP (Model Context Protocol) 服务,并联合 Cline 插件举行实践操纵。通过本文,你将了解到如何设置 Cline 以连接 GitHub MCP 服务器,创建堆栈,推送和拉取文件,以及创建和提交到新的分支。本文以图文并茂的方式,详细记录了整个操纵过程,帮助你轻松上手 GitHub MCP 服务。
设置MCP


安装Cline插件。

在settings中设置API Provider、API KEY、Model、Custom Instructions,点击Done保存。

测试能否对话。

成功收到模型的相应。

点击MCP Servers。

可以看到很多可选择的MCP服务。

我们选择GitHub的MCP服务举行安装。

点击安装后,进入谈天窗口,ai会引导MCP的安装。


运行命令,在当前的工作区创建了github-mcp-server目次。

接着,ai会读取MCP的设置文件cline_mcp_settings.json。

ai读取后,哀求修改cline_mcp_settings.json 文件的内容。添加了 GitHub MCP 服务器的设置。使用 write_to_file 工具来更新文件,使用 README 中的 NPX 示例,并将 disabled 设置为 false,autoApprove 设置为 []。

更新后,ai向我们哀求GitHub的token。

我们在GitHub上创建一个token

给token定名。

赋予全部堆栈的权限。


选择渺小权限的设置,我们答应Administration(堆栈创建、删除、设置、团队和协作者)、Codespaces(创建、编辑、删除和列出 Codespaces)、Contents(堆栈内容、提交、分支、下载、发行版和合并)的读写权限。


点击天生token。

复制token到cline对话。

添加token到设置文件cline_mcp_settings.json。

cline_mcp_settings.json 更新后添加了 GitHub 个人访问令牌。ai哀求通过使用 search_repositories 工具来演示服务器的功能,搜索查询词为 “modelcontextprotocol” 的堆栈。

工具报错了,提示连接失败,由于设置文件里的路径写错了。

将cline_mcp_settings.json文件手动修改为图中样式。

可以看到GitHub这里滑块已经显示绿色,表明它的MCP服务安装成功。
创建堆栈


哀求ai创建一个名为MCP-Test的公共堆栈。

这里调用了MCP服务的create_repository工具来创建堆栈。


至此已成功设置了 GitHub MCP 服务器,并在我的 16Miku 账户下创建了一个名为 MCP-Test 的公共堆栈。

可以在https://github.com/16Miku/MCP-Test查察到该堆栈已成功创建。

可以在这里查察该MCP服务有哪些功能。
推送文件


我们创建一个MCP-Test当地空间。

用Trae打开该文件夹,哀求ai在当前文件夹创建一个精美的网页文件,用于介绍MCP协议。

点击保存。


这里open index.html 是一个 macOS 体系上用于在默认浏览器中打开 HTML 文件的便捷命令。 由于我的体系是windows11,不能实行该命令。

更改默认的终端设置Terminal: Select Default Profile。

修改默认终端为Windows PowerShell。

命令ai使用powershell打开index.html。


可以看到ai编写的MCP介绍浅显网页。

让ai将当前项目提交到MCP-Test堆栈。


这里显示推送文件到 GitHub 堆栈时报错,提示堆栈为空。虽然创建堆栈时设置了自动初始化,但大概没有成功创建 main 分支。所以要确认分支名称是 main,然后再次实行推送。


工具实行再次失败,并出现雷同的错误。即 create_repository 工具中的 autoInit 参数并没有创建默认分支。ai将实行使用 create_branch 工具显式地创建一个分支,然后再推送文件。

工具实行再次失败,并出现雷同的错误。显示 create_branch 工具也要求堆栈有一些初始内容。
ai将实行使用 create_or_update_file 工具直接在堆栈中创建一个文件。这应该会初始化堆栈并创建一个默认分支。

MCP服务调用了create_or_update_file工具来创建README.md文件。

可以看到相应信息。

可以看到提交信息。
  1. {
  2.   "content": {
  3.     "name": "README.md",
  4.     "path": "README.md",
  5.     "sha": "6df9e3391c2545417f91eb0eb835bfe93e027ef3",
  6.     "size": 52,
  7.     "url": "https://api.github.com/repos/16Miku/MCP-Test/contents/README.md?ref=main",
  8.     "html_url": "https://github.com/16Miku/MCP-Test/blob/main/README.md",
  9.     "git_url": "https://api.github.com/repos/16Miku/MCP-Test/git/blobs/6df9e3391c2545417f91eb0eb835bfe93e027ef3",
  10.     "download_url": "https://raw.githubusercontent.com/16Miku/MCP-Test/main/README.md",
  11.     "type": "file",
  12.     "_links": {
  13.       "self": "https://api.github.com/repos/16Miku/MCP-Test/contents/README.md?ref=main",
  14.       "git": "https://api.github.com/repos/16Miku/MCP-Test/git/blobs/6df9e3391c2545417f91eb0eb835bfe93e027ef3",
  15.       "html": "https://github.com/16Miku/MCP-Test/blob/main/README.md"
  16.     }
  17.   },
  18.   "commit": {
  19.     "sha": "7e51328cb860bc173935dac54bb88b02cf7201f0",
  20.     "node_id": "C_kwDOOZ_f8doAKDdlNTEzMjhjYjg2MGJjMTczOTM1ZGFjNTRiYjg4YjAyY2Y3MjAxZjA",
  21.     "url": "https://api.github.com/repos/16Miku/MCP-Test/git/commits/7e51328cb860bc173935dac54bb88b02cf7201f0",
  22.     "html_url": "https://github.com/16Miku/MCP-Test/commit/7e51328cb860bc173935dac54bb88b02cf7201f0",
  23.     "author": {
  24.       "name": "16Miku",
  25.       "email": "wenwenzi2022@outlook.com",
  26.       "date": "2025-04-15T17:29:27Z"
  27.     },
  28.     "committer": {
  29.       "name": "16Miku",
  30.       "email": "wenwenzi2022@outlook.com",
  31.       "date": "2025-04-15T17:29:27Z"
  32.     },
  33.     "message": "Create README.md",
  34.     "tree": {
  35.       "sha": "54535f544b314b0ff453cedf70c1ec2249f82535",
  36.       "url": "https://api.github.com/repos/16Miku/MCP-Test/git/trees/54535f544b314b0ff453cedf70c1ec2249f82535"
  37.     },
  38.     "parents": []
  39.   }
  40. }
复制代码

这里显示在 MCP-Test 堆栈中成功创建了 README.md 文件。表明已经初始化了堆栈并创建了一个默认分支。ai将再次实行推送 index.html 文件。

这里ai调用了MCP服务的push_files工具。

收到相应信息。

这里显示已成功推送index.html文件到MCP-Test堆栈。

在GitHub上可以看到出现了README.md和index.html文件。
拉取文件


哀求ai将在远程堆栈创建的README.md同步拉取到当地。

ai调用了MCP服务的get_file_contents工具,哀求拉取README.md文件。

从远程堆栈加载了README.md文件,并预备写在当地。

保存后,成功拉取了README.md文件到当地。
提交到分支


哀求ai创建一个branch_test.html文件,并在远程堆栈创建新的分支branch1,提交当前项目全部文件到该分支。

创建了branch_test.html 文件。接下来将使用MCP服务的create_branch工具,在远程堆栈中创建名为 branch1 的新分支。

收到相应信息。

创建了branch1分支后,调用MCP服务的push_files工具推送全部文件到该分支。


收到相应信息。

这里显示已创建分支branch1,并推送当前全部文件到该分支。

可以看到github堆栈中成功创建了branch1并提交了全部文件。
总结

通过本文的详细步调,我们成功地完成了以下操纵:

  • 设置 Cline 插件并连接 GitHub MCP 服务器: 详细介绍了如何在 Cline 中设置 API Provider、API Key、Model 和 Custom Instructions,并成功连接 GitHub MCP 服务器。办理了连接失败的问题,确保了 Cline 与 GitHub MCP 服务器的正常通信。
  • 创建 GitHub 堆栈: 使用 MCP 服务的 create_repository 工具成功创建了一个名为 MCP-Test 的公共堆栈,为后续的文件操纵奠基了基础。
  • 推送文件到 GitHub 堆栈: 办理了堆栈为空导致推送失败的问题,通过 create_or_update_file 工具创建了 README.md 文件,初始化了堆栈并创建了默认分支,最终成功将 index.html 文件推送到了 MCP-Test 堆栈。
  • 从 GitHub 堆栈拉取文件: 使用 MCP 服务的 get_file_contents 工具成功将远程堆栈中的 README.md 文件拉取到当地,实现了远程堆栈与当地文件的同步。
  • 创建并提交到新的分支: 使用 MCP 服务的 create_branch 工具成功创建了名为 branch1 的新分支,并将当前项目标全部文件推送到了该分支,实现了多分支管理。
总而言之,本文完备地演示了如何使用 Cline 插件和 GitHub MCP 服务举行代码堆栈的管理,包括设置、创建、推送、拉取和分支管理等操纵。希望本文能帮助你更好地明白和使用 GitHub MCP 服务,进步开发服从。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

用多少眼泪才能让你相信

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表