mcpField
P
Project Context

Project Context

本地服务
github.com版本控制114 周前更新

关于 Project Context

Project Context 是供 Agent 按仓库处理问题的本地 MCP 服务,支持 Linear、GitHub Issues、GitHub Projects v2 和 Jira Cloud。它将映射与凭据保存在主机本地,并通过先预览、再应用的流程约束写入。

主要功能

  1. 01按仓库选择问题提供方
  2. 02搜索问题和用户
  3. 03预览并单次应用写入
  4. 04主机本地配置与凭据
  5. 05提供方专属的问题关系

适用场景

  1. 01查找当前仓库的问题
  2. 02准备受控的问题更新
  3. 03将凭据留在源代码仓库之外

MCP 相关

向 MCP 客户端提供 11 个具备输入输出架构的工具,用于解析仓库上下文并处理问题、用户、评论和变更。写入须先准备,再单次尝试应用。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"sandovalrr-project-context": {
"command": "npx",
"args": [
"-y",
"@sandovalrr/project-context-mcp"
],
"env": {
"PROJECT_CONTEXT_CONFIG_DIR": "<PROJECT_CONTEXT_CONFIG_DIR>",
"PROJECT_CONTEXT_STATE_DIR": "<PROJECT_CONTEXT_STATE_DIR>",
"PROJECT_CONTEXT_CWD": "<PROJECT_CONTEXT_CWD>"
}
}
}
}
启动命令npx -y @sandovalrr/project-context-mcp
需要配置的环境变量
PROJECT_CONTEXT_CONFIG_DIROptional absolute path to the host-local configuration directory
PROJECT_CONTEXT_STATE_DIROptional absolute path to the host-local runtime state directory
PROJECT_CONTEXT_CWDOptional repository fallback when the MCP client provides no filesystem root

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@sandovalrr/project-context-mcp0.4.0

工具

11

收录的工具列表 · 更新于 2 周前

参数类型必填说明
cwdstring否Git 工作目录;默认为服务进程的 cwd

详细介绍

project-context

project-context 是一个本地、与提供商无关的 MCP 服务,用于处理特定于代码仓库的问题。它为 Agent 提供统一且受保护的接口,用于访问 Linear、GitHub Issues、GitHub Projects v2 和 Jira Cloud,同时将项目映射和凭据保存在源代码仓库之外。

该服务会解析当前 Git 仓库,选择已配置的问题跟踪提供商,验证经过身份验证的账户,并将每次写入操作分为预览和仅尝试一次的应用步骤。拉取请求、发布、仓库管理、Git 身份验证和提交签名均不在支持范围内。

快速开始

要求:在 Linux 或 macOS 上使用 Node.js 22 或更高版本。

VERSION=0.1.0
npx -y --package="@sandovalrr/project-context-mcp@$VERSION" project-context setup
npx -y --package="@sandovalrr/project-context-mcp@$VERSION" project-context doctor

第一条命令会创建仅限当前主机访问的安全初始文件,不会覆盖任何已存在的文件:

~/.agents/config/project-context/projects.yaml
~/.agents/config/project-context/credentials.yaml
~/.agents/config/project-context/templates/
~/.agents/config/project-context/secrets/
~/.local/state/project-context/

复制并调整 examples/ 中经过清理的示例,验证结果,然后在你的 MCP 客户端中注册 project-context-mcp stdio 命令。Codex、Claude、Zed 和 VS Code 的完整配置位于 docs/installation.md。

安全模型

  • 仅限主机的 YAML 配置用于确定代码仓库、提供商、目标和预期身份。缺失或不明确的上下文会导致写入操作失败关闭。
  • 凭据从文件、环境变量、操作系统密钥链或仅通过 argv 传递的命令中获取。YAML 中不允许出现明文机密。
  • 提供商调用仅限固定的 HTTPS 来源,会拒绝重定向、限制响应大小和超时时间,并且绝不会自动重试写入操作。
  • Linear 问题操作使用 Linear 托管 MCP 工具的固定允许列表;project-context 绝不会代理上游服务范围更广的工具目录。
  • 已准备的写入操作在十分钟后过期,使用 AES-256-GCM 加密,并且只能领取一次。应用结果不确定时会标记为 indeterminate,且绝不会自动重放。
  • 修改审计记录仅包含元数据,文件权限为 0600,并在本地轮换。此项目不收集遥测数据。

请阅读 docs/threat-model.md,了解信任边界和剩余风险;阅读 docs/routing-and-safety.md,了解运行行为。

命令和 MCP 工具

project-context --help
project-context setup --guided
project-context config validate
project-context resolve --cwd /path/to/repository
project-context issue list --status open --status in_progress
project-context issue list --parent linear:ENG-42
project-context issue user search "John Smith"
project-context issue capabilities
project-context issue option search labels security
project-context issue option search cycle current
project-context issue get linear:ENG-42 --include-relations
project-context issue comment list github:#42 --limit 20
project-context issue prepare create --title "Child task" --parent ENG-42
project-context doctor
project-context audit list
project-context skill status
project-context integration manifest --client codex

stdio 服务公开了十一个工具:

  • resolve_project_context
  • list_issues
  • search_issues
  • list_users
  • search_users
  • search_issue_options
  • get_issue_capabilities
  • get_issue
  • list_issue_comments
  • prepare_issue_change
  • apply_issue_change

每个工具都有输入和输出架构。启动服务不会产生设置方面的副作用;如果缺少主机配置,工具会返回可执行操作的结构化错误。

Linear 还支持限定目标范围的子问题、截止日期、估算值、周期、里程碑、阻塞/相关/重复关系、评论回复和编辑、已归档问题列表,以及展开关系的读取。不会公开 SLA 字段、永久删除和非问题类 Linear 功能。

GitHub 还支持仓库问题类型和里程碑、原生父子问题层级、阻塞依赖项、重复关系、评论编辑、直接子问题列表,以及展开关系的读取。不会公开 GitHub 自定义字段映射、通用相关关系、串接式评论回复、拉取请求和仓库管理功能。

默认情况下,integration manifest 会打印与提供商无关的命令定义。传入 --client codex、claude、zed 或 vscode,即可输出固定到已安装软件包版本的原生可粘贴配置。自动化需要包含客户端、格式和配置的封装对象时,可添加 --json。

可选的 project-issues Agent 技能已打包,但绝不会作为 npm 生命周期副作用自动安装:

project-context skill status
project-context skill install

只有在查看状态后才使用 --replace;替换操作会创建带时间戳的备份。

文档

许可证和致谢

本项目采用 MIT 许可证,版权所有 2026 Richard Sandoval。软件副本或实质性部分必须保留版权和许可声明。

如果将本仓库用作另一个项目的起点,欢迎在显眼处注明:

基于 project-context,由 Richard Sandoval 创建。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。