MCP分析库
该存储库捕获了模型上下文协议(MCP)规范的演变, 实施、批评和相邻技术。它将深度研究成果配对 (包括Word文档),使用Python和TypeScript中的可复制工具。
开发容器确保贡献者使用相同的堆栈 紫外线 用于Python依赖管理和 pnpm 为了 Node/TypeScript工具。
入门指南
- 在开发人员容器中打开(推荐)
- 安装Dev Containers扩展并在容器中重新打开此文件夹。 - 启动脚本安装uv,配置 pnpm,将Python依赖项同步到 .venv,安装Node-dev依赖项,并配置Pandoc/XeLaTeX(包括 texlive-lang-cjk)用于文档导出。
- 本地设置(可选)
- 安装Python 3.11+、uv、Node.js 20+和pnpm 8+。 - 跑 uv sync 创造 .venv 并安装Python工具。 - 跑 pnpm install 安装TypeScript依赖项。
- 验证
- Python lint: uv run ruff check . - TypeScript lint: pnpm lint
仓库的规划
docs/--主要文件资产。
- prompts/ --生成研究或报告的提示。 - research/ --原始笔记、面试记录和原始材料。 - reports/ --已发布的可交付成果,包括Word文档(.docx). - implementations/ --MCP实施的好与坏的案例研究。 - spec/ --规格变更日志、带注释的读数和交叉引用。 - alternatives/ --与MCP竞争或互补的技术。 - templates/ --提示、报告和更改日志的模板。 - timeline/ --MCP生态系统的时序叙述。
scripts/python/--用Python编写的自动化。scripts/typescript/--用于数据处理或工具的TypeScript脚本。external/--上游工作副本/子模块,例如:
- external/mcp-spec --规范MCP规范仓库(包括2025年11月的模式: external/mcp-spec/schema/2025-11-25/). - external/ext-apps --MCP应用程序/UI扩展仓库。 - external/agentskills --agentskills规范仓库。 - external/anthropic-skills --人类学技能库。 - external/govuk-mcp --在中评估的示例服务器实现 docs/implementations/good/govuk-mcp/.
代理技能(VS代码复制人聊天)
此仓库尝试使用VS Code Copilot Chat 代理技能 (指令+资源Copilot可以按需加载)。
- 设置、故障排除(工作区信任/权限)和上游技能索引:
docs/skills.md. - 本地技能主页(存储在此仓库中的技能):
.github/skills/README.md.
快速入门(在当地尝试一项上游技能):
git submodule update --init --recursive
mkdir -p .github/skills/pdf
rsync -a --delete external/anthropic-skills/skills/pdf/ .github/skills/pdf/捕获Word文档
放置源 .docx 文件下 docs/reports/.包括配套的Markdown摘要 描述:
- 文件的背景和范围。
- 使用的数据来源和提示。
- 关键结论或见解。
在中使用提示模板 docs/templates/prompt-template.md 跟踪以下输入 生成了研究成果。
通过以下方式自动生成Markdown、LaTeX和PDF:
uv run scripts/python/docx_export.py docs/reports/source.docx --pdf输出与DOCX并排放置,并采用所需的 IRI- 前缀。
跟踪上游MCP规范
已发布的规范版本为https://modelcontextprotocol.io/specification.
根据工作流程,您有几个选项:
- Git子模块
- 更新为 git submodule update --remote. - 总结或差异属于 docs/spec/.
- 快照脚本
- 使用 scripts/python/fetch_mcp_spec.py 克隆或刷新本地副本(可选) 查看特定参考。
- 问题参考
- 引用上游更改时,链接到标记的发布或特定的拉取请求 因此,上下文保持持久。
记录中的每次同步或显著更改 docs/spec/change-log.md (请参阅中的模板 docs/templates).
工具
Python(uv)
- 依赖关系在中声明
pyproject.toml并安装了uv sync. - 通过以下方式运行Python实用程序
uv run例如。uv run scripts/python/fetch_mcp_spec.py --help. - 棉绒用途
ruff;类型检查用途mypy.
TypeScript(pnpm)
- 项目元数据和脚本位于
package.json. tsconfig.json目标为ES2022模块,输出为dist/.- 棉绒用途
eslint随着@typescript-eslint;格式化用途prettier.
持续集成
.github/workflows/ci.yml 安装依赖项并使用uv和执行lint/typecheck任务 pnpm。
贡献
- 打开一个描述文档或工具更改的问题。
- 在开发容器中工作,或确保与固定工具版本的本地对等。
- 更新下的相关文档
docs/并保持提示同步。 - 跑
pnpm lint和uv run ruff check .在打开pull请求之前。
发布流程
此仓库使用git标签进行轻量级发布。
# verify
uv run ruff check .
uv run mypy scripts/python
pnpm lint
pnpm typecheck
# bump versions + changelog, then
git add -A
git commit -m "Release vX.Y.Z"
git tag -a vX.Y.Z -m "vX.Y.Z"
git push origin main
git push origin vX.Y.Z后续步骤
- 在下添加新报告
docs/reports/并创建匹配的Markdown摘要。 - 同步
external/mcp-spec(子模块或脚本)并记录更改docs/spec/change-log.md.
