qidao123.com技术社区-IT企服评测·应用市场
标题:
Cline + GitHub MCP 学习记录
[打印本页]
作者:
用多少眼泪才能让你相信
时间:
3 天前
标题:
Cline + GitHub MCP 学习记录
简介
本文旨在引导读者快速入门 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文件。
可以看到相应信息。
可以看到提交信息。
{
"content": {
"name": "README.md",
"path": "README.md",
"sha": "6df9e3391c2545417f91eb0eb835bfe93e027ef3",
"size": 52,
"url": "https://api.github.com/repos/16Miku/MCP-Test/contents/README.md?ref=main",
"html_url": "https://github.com/16Miku/MCP-Test/blob/main/README.md",
"git_url": "https://api.github.com/repos/16Miku/MCP-Test/git/blobs/6df9e3391c2545417f91eb0eb835bfe93e027ef3",
"download_url": "https://raw.githubusercontent.com/16Miku/MCP-Test/main/README.md",
"type": "file",
"_links": {
"self": "https://api.github.com/repos/16Miku/MCP-Test/contents/README.md?ref=main",
"git": "https://api.github.com/repos/16Miku/MCP-Test/git/blobs/6df9e3391c2545417f91eb0eb835bfe93e027ef3",
"html": "https://github.com/16Miku/MCP-Test/blob/main/README.md"
}
},
"commit": {
"sha": "7e51328cb860bc173935dac54bb88b02cf7201f0",
"node_id": "C_kwDOOZ_f8doAKDdlNTEzMjhjYjg2MGJjMTczOTM1ZGFjNTRiYjg4YjAyY2Y3MjAxZjA",
"url": "https://api.github.com/repos/16Miku/MCP-Test/git/commits/7e51328cb860bc173935dac54bb88b02cf7201f0",
"html_url": "https://github.com/16Miku/MCP-Test/commit/7e51328cb860bc173935dac54bb88b02cf7201f0",
"author": {
"name": "16Miku",
"email": "wenwenzi2022@outlook.com",
"date": "2025-04-15T17:29:27Z"
},
"committer": {
"name": "16Miku",
"email": "wenwenzi2022@outlook.com",
"date": "2025-04-15T17:29:27Z"
},
"message": "Create README.md",
"tree": {
"sha": "54535f544b314b0ff453cedf70c1ec2249f82535",
"url": "https://api.github.com/repos/16Miku/MCP-Test/git/trees/54535f544b314b0ff453cedf70c1ec2249f82535"
},
"parents": []
}
}
复制代码
这里显示在 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企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 qidao123.com技术社区-IT企服评测·应用市场 (https://dis.qidao123.com/)
Powered by Discuz! X3.4