Markdown提示渲染工具

一个用于渲染Markdown提示并写入GitHub Copilot指令文件的Spring Boot服务。

  • by rajashashankmuppirala
  • Java
  • 本地部署
  • 更新于
在 GitHub 查看 rajashashankmuppirala/spring-boot-mcp-copilot

使用说明

Spring Boot MCP 服务器 — Copilot 指令与提示

这台服务器提供了工具/资源以供 渲染Markdown提示 并且到 写 .github/copilot-instructions.md 上传到GitHub仓库。

先决条件

  • Java 21
  • Maven 3.9+

构建并运行(stdio传输)

mvn -q -e -DskipTests package
java -jar target/spring-boot-mcp-copilot-1.0.0.jar

MCP服务器运行在 STDIO 翻译为中文是“标准输入输出(Standard Input and Output)”。 (没有监听的TCP端口)。您的MCP客户端(例如,JetBrains AI Assistant或GitHub Copilot Chat)应作为命令启动此进程。

替代方案(SSE/WebSocket)

开关 spring.ai.mcp.server.transport 在里面 src/main/resources/application.yml 并正常运行(例如。, mvn spring-boot:run)。

暴露的MCP功能

工具

  • listPrompts() → 列出以下可用的提示文件 copilot/prompts/。
  • renderPrompt(name, args?) → 根据名称和模板参数渲染一个提示;返回渲染后的文本+前置内容。
  • writeCopilotInstructionsFromFile(owner, repo, branch, token, file, args?)
    渲染(结果/图像) copilot/instructions/{file}.md 与;和;带着 args 并写入到 .github/copilot-instructions.md 使用GitHub内容API。

资源

  • instructionMd(file) → 退货 {meta, body} of copilot/instructions/{file}.md 用于聊天上下文。

你将编辑的文件

  • copilot/instructions/org-default.md — 全组织基线(如需,请复制到组织设置中)
  • copilot/instructions/spring-boot-repo.md — 渲染到仓库
  • copilot/prompts/*.md — 使用YAML前置信息的可重用提示

模板令牌

使用 {{name}} 或者 {{name|DEFAULT}} 在MD文件内部。参数通过工具调用来传递。

在 IntelliJ 中连接(JetBrains AI 助手)

  1. IntelliJ IDEA 2025.1及以上版本 和;与;带着 人工智能助手 以及MCP支持。
  2. 首选 设置 | 工具 | AI 助手 | 模型上下文协议 (MCP) 并且 添加 一个服务器:
    • 交通命令(STDIO)
    • 命令: java
    • 论点;争论点: -jar, <FULL_PATH>/target/spring-boot-mcp-copilot-1.0.0.jar
    • 工作目录项目文件夹
  3. 连接后,打开AI聊天并运行:
    • /tool listPrompts
    • /tool renderPrompt {"name":"spring-boot-coding","args":{"feature":"Order API","package":"com.example.orders"}}
    • /tool writeCopilotInstructionsFromFile {"owner":"<you>","repo":"<repo>","branch":"main","token":"<PAT>","file":"spring-boot-repo","args":{"serviceName":"orders-service"}}

注:

  • 对于仓库说明,GitHub 会查找 .github/copilot-instructions.md。
  • 确保您的PAT(个人剂量计/便携式分析仪等,具体根据上下文确定)已 repo 范围。
  • 如果你更倾向于审查而非直接提交代码,请使用分支保护+拉取请求(PRs)。

安全

  • 代币在调用时传递;它是 不是 由服务器存储。考虑使用您的MCP客户端的秘密存储功能。
  • 在您的MCP主机上记录日志;服务器默认仅打印最少的日志。

许可证

Apache-2.0(许可证)