Token导航 LogoToken导航TokenDH.com
Prompt Logger logo
开发工具未说明官方级别未说明来源级核验

Prompt Logger

MCP Server

一个最小化的模型上下文协议(MCP)服务器,允许MCP感知客户端(如支持MCP的VS Code Copilot Chat)将提示持久化到Git仓库中作为Markdown文件(带有YAML前置元数据)。每次保存都会创建一个新文件,提交并推送到配置的远程仓库。

工具数

2

提示词数

0

GitHub Stars

0

资源数

0
Git集成版本控制C#VS Code开发工具VS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

alexniklev

提供方

alexniklev

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

提示记录器——MCP服务器

一个最小的模型上下文协议(MCP)服务器,允许支持MCP的客户端(例如支持MCP的VS Code Copilot Chat)将提示作为Markdown文件(带YAML frontmatter)持久化到Git存储库中。每次保存都会创建一个新文件,提交并推送到配置的远程。

当前作用域:单个工具(SavePrompt)。检索/列出是存根或未来的路线图项目。

为什么

在正常的Git工作流程中,将有趣的提示/对话捕获为不可变的、版本化的工件,以便它们可以:

  • 已审核(历史、差异)
  • 已审核并标记
  • 跨会话/团队成员重用
  • 由其他自动化处理(索引、分析、嵌入管道)

功能(现已实现)

  • 将提示保存到Git存储库中(本地+推送)
  • 使用时间戳+slug自动生成文件名
  • YAML frontmatter created_at (UTC ISO 8601)
  • 最小、依赖性轻的代码路径
  • 运行MCP stdio传输

路线图/计划

  • 添加元数据注入(作者、标签、模型、会话id)
  • 可选延迟推送(切换即时推送与仅本地推送)
  • 列表/搜索提示工具
  • 获取单个提示工具(实际文件读取)
  • 尺寸限制(MAX_PROMPT_SIZE)
  • Git作者身份环境变量
  • 可选分支定位
  • 稳健的错误表面(JSON结构化工具输出)

文件布局

保存的提示示例(由当前实现生成):

---
created_at: 2025-01-05T14:22:33.1234567Z
---

What is the weather in Sofia tomorrow?

文件名格式

prompt-YYYYMMDD_HHmms-.md

  • YYYYMMDD_HHmms =UTC时间戳(可排序,毫秒精度)
  • ` =提示的第一行非空行,小写,修剪,消毒(字母数字)+ - / _`,最多40个字符)
  • 例子: prompt-20250105_142233512-what-is-the-weather-in-sofia.md

暴露的工具(MCP)

工具说明参数
SavePrompt将提示文本保存到仓库,提交,推送。返回路径+提交信息(今天提交SHA占位符)。prompt (字符串,必填)
GetPrompt占位符(返回一个存根字符串)。prompt (字符串)

SavePrompt返回形状(当前字符串形式)

Saved: prompts/prompt-20250105_142233512-example.md
Commit: committed
Pushed: True

如果失败:

Error: 

(计划:通过工具API返回结构化JSON。)

环境变量(当前支持)

变量目的默认值
REPO_PATH要写入的现有Git工作副本的路径。当前工作目录
PROMPTS_FOLDER用于存储提示文件的目录(相对于repo根目录)。prompts
路线图中提到的其他变量(作者身份、推送控制、大小限制)尚未实现,此处有意省略。

Git远程/身份验证

代码假定repo位于 REPO_PATH 已经配置了远程和适当的凭据,可用于 git (SSH代理、凭证管理器等)。它只是运行:

git pull
git add 
git commit -m "Add prompt "
git push

快速开始

  1. 准备Git仓库(现有的或新的):
   git init prompt-archive
   cd prompt-archive
   git remote add origin 
   git pull origin main || true
  1. 克隆此项目(或在工作区中添加为工具服务)。
  2. (可选)设置环境变量:
   set REPO_PATH=path\to\prompt-archive
   set PROMPTS_FOLDER=prompts
  1. 运行MCP服务器:
   dotnet run --project src/PromptLoggerMcpServer
  1. 配置 .vscode/mcp.json (支持MCP的VS代码):
   {
     "servers": {
       "PromptLoggerMcpServer": {
         "type": "stdio",
         "command": "dotnet",
         "args": [
           "run",
           "--project",
           "src/PromptLoggerMcpServer"
         ],
         "env": {
           "REPO_PATH": "C:/dev/prompt-archive"
         }
       }
     }
   }
  1. 在Copilot Chat(或另一个MCP客户端)中,调用该工具:
   /tool PromptLoggerMcpServer.SavePrompt prompt="What is the weather in Sofia tomorrow?"
  1. 检查回购:
   git log --oneline -1
   ls prompts/

错误处理

典型故障原因:

  • REPO_PATH 不是Git仓库(缺失 .git 目录)
  • 空提示文本
  • Git命令失败(网络/身份验证/非快进)

错误以简单字符串的形式返回,以 Error:.

限制/注意事项

  • 总是立即推送(还不能选择退出)
  • 无结构化JSON响应
  • 无重复数据删除/哈希(每次调用=新文件)
  • 时间戳之外没有元数据丰富
  • GetPrompt 是一个存根
  • 没有并发协调(同时写入可能会竞争,但文件名使用毫秒精度;在极端并行的情况下仍然可能)

发布说明

1.0.0(初始)

  • 初始MCP服务器脚手架
  • SavePrompt 具有git pull/add/commit/push工作流的工具
  • 时间戳+slug文件名策略
  • YAML frontmatter created_at
  • 基本错误消息
  • 存根 GetPrompt 工具

发展

dotnet build
dotnet run --project src/PromptLoggerMcpServer

贡献

欢迎发布问题/PR。重点领域:元数据、检索工具、结构化输出、测试。

许可证

MIT(如果存在,请参阅许可证;否则在公开分发之前添加一个)。

参考文献

  • 模型上下文协议:https://modelcontextprotocol.io/
  • 协议规范:https://spec.modelcontextprotocol.io/
  • VS代码MCP服务器指南:https://code.visualstudio.com/docs/copilot/chat/mcp-servers
  • NuGet MCP指南:https://aka.ms/nuget/mcp/guide

______________________________________________________________________

未来的改进将在问题跟踪器中跟踪。欢迎提出建议。

目录标签

目录标签

Git集成版本控制C#VS Code开发工具本地部署提示管理自动化工具

支持客户端

VS Code

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

2

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP