Token导航 LogoToken导航TokenDH.com
Codifier MCP logo
数据服务stdio官方级别未说明来源级核验

Codifier MCP

MCP Server

codifier

CodifierMcp是一个远程MCP服务器,为AI助手提供共享的组织知识库,支持跨角色知识捕获和检索。

工具数

6

提示词数

0

GitHub Stars

0

资源数

0
TypeScriptClaude数据分析Claude DesktopClaudeCursorWindsurf

安装说明

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

作者 / 组织

JArchitectMPlus

提供方

JArchitectMPlus

最后核验

2026/5/17 20:20

运行时

Node.js

快速接入

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

命令预览

npx codifier init

详细介绍

CodifierMCP

人工智能驱动发展的制度记忆——跨组织角色

CodifierMcp是一个远程MCP(模型上下文协议)服务器,为AI助手提供共享、持久的组织知识。它捕获任何团队成员的学习、决策和研究结果,并将其呈现给任何其他成员,从而形成一个反馈循环,使组织随着时间的推移变得更加智能。

](https://nodejs.org/) ![TypeScript](https://www.typescriptlang.org/) ![MCP SDK](https://modelcontextprotocol.io/)

______________________________________________________________________

目录

- 关键能力 - 建筑 - 用例

- 环境变量 - MCP客户端配置

- 开发人员技能 - 研究员技能

______________________________________________________________________

概述

CodifierMcp弥合了人工智能助理与组织机构知识之间的差距。AI助手可以:

  1. 获取上下文:从共享知识库中检索相关规则、指南、决策和研究结果
  2. 更新存储器:保存在开发或研究过程中发现的新见解、模式和学习成果
  3. 跟随技能:引导式对话式工作流程,生成结构化工件(规则、路线图、研究报告)
  4. 与数据源集成:通过RepoMix拉入回购代码,并通过Athena查询数据仓库

这创造了一个良性循环,开发人员会话中的知识为研究人员的分析提供了信息,反之亦然。

关键能力

  1. 组织范围的知识持久性 --从任何人、任何角色、任何项目那里学到的知识都保存在一个共享的、可搜索的知识库中。六个月后,开发人员对遗留API的发现为研究人员的分析提供了信息。
  1. 经过身份验证的专有数据连接器 --RepoMix用于私有代码存储库;AWS Athena用于数据仓库。未来:SharePoint、Confluence、谷歌云端硬盘。
  1. 本地第一会话内存 --在任何会议中捕捉学习、陷阱、惯例和见解。在本地查看和编辑 docs/MEMORY.md,然后按需同步到共享KB。每个角色都能带来学习;内存捕获是基础能力。
  1. 通过技能引导减少摩擦 --特定角色的对话工作流。开发人员通过规则和路线图进行项目初始化。研究人员获得数据发现和综合。法学硕士阅读技能并指导对话——没有断断续续的循序渐进的协议。
  1. 多表面接入 --通过MCP集成开发环境(克劳德代码、光标、克劳德桌面、风帆、双子座、Codex、协作)。CLI安装程序(npx codifier init).未来:团队机器人。

建筑

┌──────────────────────────────────────────────────────┐
│   MCP Clients                                        │
│   (Claude Code, Cursor, Claude Desktop, Windsurf,    │
│    Gemini, Codex, Cowork)                             │
│                                                      │
│   Skills + docs/MEMORY.md       ← npx codifier init  │
│   Slash Commands (.claude/commands/ or .cursor/rules/)│
└──────┬──────────────────────────┬────────────────────┘
       │ stdio (local)            │ SSE/HTTP (remote)
       ↓                          ↓
┌─────────────────────────────────────────┐
│   CodifierMcp Server                    │
│   ├── Transport: stdio | StreamableHTTP | SSE │
│   ├── Auth: Bearer token middleware     │
│   └── MCP Tools (6)                     │
│       fetch_context / update_memory     │
│       delete_memory / manage_projects   │
│       pack_repo / query_data            │
└──────┬──────────────────────────────────┘
       │
  ┌────┴────────────────────────────────┐
  │ Supabase (PostgreSQL + pgvector)    │
  │  projects / repositories / memories │
  │  api_keys                           │
  └─────────────────────────────────────┘
       │
  Direct Integrations:
  ├── RepoMix (npm programmatic API)
  └── AWS Athena MCP (sidecar subprocess)

技能是客户端的。 每个技能都是LLM在本地读取的标记指令文件。LLM驱动对话,并仅调用MCP工具进行数据操作。没有服务器端会话状态。

用例

  • 项目初始化:按照初始化项目技能从描述、SOW或现有代码库生成Rules.md、Evals.md、Requirements.md和Roadmap.md
  • 布朗菲尔德登船:使用RepoMix打包现有仓库并生成架构摘要
  • 研究与分析:定义研究目标,发现Athena模式,执行查询,综合发现
  • 跨角色知识流:研究人员的发现(存储为 research_finding)由开发人员通过以下方式检索 fetch_context 初始化相关项目时
  • 入职AI助理:新的AI会话会自动学习团队的惯例和决策
  • 会话内存捕获:从任何会议中汲取经验教训——陷阱、惯例、见解—— docs/MEMORY.md 通过 /remember,然后通过以下方式同步到共享KB /push-memory 用于跨团队访问

______________________________________________________________________

先决条件

远程安装(推荐)

不需要本地设置。您需要:

  1. API身份验证令牌 --从您的Codifier部署管理员处获取
  2. MCP兼容AI客户端 --克劳德代码、光标、克劳德桌面、风帆、双子座、Codex或协作

在一个命令中安装Skills和MCP配置:

npx codifier init

这种脚手架技能 .codifier/skills/,将斜杠命令写入正确的客户端位置,提示您输入服务器URL和API密钥,写入 .codifier/config.json 并验证连接。

本地/自托管先决条件

  1. Node.js 18+node --version
  2. Supabase项目 --免费套餐 网站 supabase.com;需要项目URL和服务角色密钥
  3. (可选)AWS凭据 --使用Athena进行研究和分析技能
  4. (可选)GitHub/GitLab代币 --通过RepoMix访问私有回购

______________________________________________________________________

安装

远程安装(推荐)

# Scaffold Skills and MCP config into your project
npx codifier init

CLI会提示输入您的Codifier服务器URL(默认值: https://codifier-mcp.fly.dev)和API密钥,则:

  • 将所有技能复制到 .codifier/skills/
  • 创建 docs/MEMORY.md 用于会话内存捕获
  • 将斜线命令写入 .claude/commands/ (克劳德代码), .cursor/rules/ (光标),或 .codifier/commands/ (通用)
  • .mcp.json (Claude Code)或等效的客户端配置
  • 通过以下方式验证MCP连接 GET /health

Cowork(克劳德桌面插件)

npx codifier init --client cowork

这创建了一个 .claude-plugin/ 目录与 plugin.json 并使用YAML frontmatter复制命令文件(description, argument-hint)因此,Cowork在其命令下拉列表中注册了它们。从Claude Desktop中的项目目录安装插件。

或者,手动配置MCP连接:

# Claude Code CLI
claude mcp add --transport http codifier https://codifier-mcp.fly.dev/mcp \
  --header "Authorization: Bearer "

本地/自托管安装

# 1. Clone
git clone https://github.com/yourusername/codifierMcp.git
cd codifierMcp

# 2. Install dependencies
npm install

# 3. Build
npm run build

# 4. Configure
cp .env.example .env
# Edit .env with your values

______________________________________________________________________

配置

环境变量

# Data Store (supabase is default; confluence is legacy)
DATA_STORE=supabase

# Supabase (required when DATA_STORE=supabase)
SUPABASE_URL=https://your-project.supabase.co
SUPABASE_SERVICE_ROLE_KEY=your-service-role-key

# Transport mode
TRANSPORT_MODE=http          # or stdio for local MCP clients

# HTTP auth (required when TRANSPORT_MODE=http)
HTTP_PORT=3000
API_AUTH_TOKEN=your-secure-random-token   # openssl rand -base64 32

# Logging
LOG_LEVEL=info               # debug | info | warn | error

# RepoMix — private repo access (optional)
GITHUB_TOKEN=ghp_xxxx
GITLAB_TOKEN=glpat-xxxx
BITBUCKET_TOKEN=xxxx

# AWS Athena — Research & Analyze Skill (optional)
AWS_REGION=us-east-1
AWS_ACCESS_KEY_ID=xxxx
AWS_SECRET_ACCESS_KEY=xxxx
ATHENA_S3_OUTPUT_LOCATION=s3://your-bucket/athena-results/
ATHENA_DATABASE=dev_stage_mfour
ATHENA_WORKGROUP=primary
变量必填描述
DATA_STORE没有supabase (默认)或 confluence
SUPABASE_URL何时 supabaseSupabase项目URL
SUPABASE_SERVICE_ROLE_KEY何时 supabase服务角色密钥(非匿名密钥)
TRANSPORT_MODE没有stdio (默认)或 http
HTTP_PORTHTTP服务器的端口(默认值:3000)
API_AUTH_TOKEN何时 http用于身份验证的承载令牌
GITHUB_TOKEN对于私有仓库具有仓库读取权限的GitHub PAT
AWS_* / ATHENA_*用于研究和分析AWS凭据和Athena配置
ATHENA_DATABASEAthena数据库/目录名称(默认值: "dev_stage_mfour");可超过每 query_data 呼叫

MCP客户端配置

克劳德代码(CLI)

# Remote (recommended — or use npx codifier init)
claude mcp add --transport http codifier https://codifier-mcp.fly.dev/mcp \
  --header "Authorization: Bearer "

# Local
claude mcp add --transport http codifier http://localhost:3000/mcp \
  --header "Authorization: Bearer "

克劳德桌面版

Claude Desktop需要 mcp-remote 代理连接到SSE服务器:

{
  "mcpServers": {
    "codifier": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://codifier-mcp.fly.dev/mcp",
        "--header",
        "Authorization:Bearer "
      ]
    }
  }
}

游标/其他MCP客户端

在以下位置配置为StreamableHTTP服务器 https://codifier-mcp.fly.dev/mcp 随着 Authorization: Bearer 头球

______________________________________________________________________

MCP工具

Codifier通过MCP协议公开了6个工具:

工具说明
fetch_context从按以下条件筛选的KB中检索内存 project_id, memory_type (规则、文件、api_connect、学习、研究查找)和/或 tags
update_memory在活动项目范围内创建或更新内存
delete_memory通过以下方式删除内存 idproject_id
manage_projects创建、列出或切换活动项目;所有后续调用都仅限于此
pack_repo通过RepoMix压缩远程存储库,并将其作为版本快照存储在 repositories 表(本地路径被拒绝——服务器在Fly.io上远程运行)
query_data对雅典娜执行操作: list-tables (模式发现), describe-tables (列元数据), execute-query (允许SELECT和WITH/CTE查询)。接受可选 database 参数覆盖 ATHENA_DATABASE 一个是电话。

内存类型

类型描述
rule项目惯例、安全模式、编码标准
document技术规格、ADR、运行手册、最佳实践
api_contract端点规范、模式、身份验证要求
learning在人工智能辅助开发过程中获得的见解
research_finding研究与分析会议的数据分析结果

______________________________________________________________________

技能

技能是客户端的、与模型无关的代理工作流——LLM在本地读取的markdown指令文件。LLM驱动对话,并仅调用MCP工具进行数据操作。步骤之间没有服务器端会话状态或协议往返。

运行后 npx codifier init,技能生活 .codifier/skills/ 在您的项目中(或 skills/ 在Cowork的项目根源)。在中删除命令 .claude/commands/ (或您的客户的等效工具)激活每个技能。

skills/shared/codifier-tools.md 是一份参考文件,涵盖了所有6个MCP工具、它们的参数和使用模式。每个技能都引用它。

记忆技能(所有角色)

内存捕获是Codifier的基本功能——每个用例都会产生值得持久的学习,无论它是否产生结构化工件。

捕获会话(/remember)

引导和组织课程学习 docs/MEMORY.md.没有MCP调用--仅本地文件。

工作流程: 引导用户学习→ 分类(架构、gotcha、约定、工具、数据、流程)→ 对现有条目进行数据删除→ 附加到 docs/MEMORY.md

推送内存(/push-memory)

将未同步的本地学习同步到具有幂等性的共享知识库 [kb:] 注释。

工作流程: 阅读 docs/MEMORY.md → 识别没有 [kb:] 前缀→ 预览并确认→ call update_memory 每项→ 将返回的ID写回作为注释

召回(/recall)

展示本地和共享的团队学习。本地召回是即时的(无MCP呼叫);共享知识库召回使用 fetch_context 按当前任务上下文过滤。

开发人员技能

初始化项目(/codify)

适用于绿地和棕地项目。生成四个持久化到共享知识库的工件。

工作流程: 收集项目名称和描述→ 可选择接受SOW→ 可选择提供仓库URL→ 通过以下方式打包存储库 pack_repo → 生成Rules.md→ 生成Evals.md→ 生成需求.md→ 生成Roadmap.md→ 通过以下方式持久化所有工件 update_memory

上下文感知生成:

场景使用的上下文生成器行为
绿地+SOW描述+SOWSOW约束和标准中的规则
绿地,无SOW仅描述最低脚手架规则
棕地+SOW描述+SOW+回购快照目标状态规则;SOW优先于现有模式
Brownfield,无SOW描述+仓库快照从现有代码库模式中提取的规则

布朗菲尔德机载(/onboard)

打包现有的仓库,并以最少的仪式生成架构摘要。

工作流程: 收集仓库URL→ call pack_repo 对于每一个→ 存储版本化快照→ 生成架构摘要→ 通过以下方式坚持学习 update_memory

研究员技能

研究与分析(/research)

连接到Athena,探索数据,执行查询,综合发现。

工作流程: 确定研究目标→ 提供上下文→ 通过以下方式发现Athena模式 query_data list-tables → 选择相关表格→ 通过以下方式描述模式 query_data describe-tables → 生成SQL查询(执行前的用户评论)→ 通过以下方式执行已批准的查询 query_data execute-query → 综合研究结果→ 生成研究发现.md→ 坚持作为 research_finding 回忆通过 update_memory

______________________________________________________________________

远程服务器(HTTP模式)

快速开始

# Generate auth token
export API_AUTH_TOKEN=$(openssl rand -base64 32)

# Start in HTTP mode
TRANSPORT_MODE=http \
HTTP_PORT=3000 \
API_AUTH_TOKEN=$API_AUTH_TOKEN \
SUPABASE_URL=https://your-project.supabase.co \
SUPABASE_SERVICE_ROLE_KEY=your-key \
node dist/index.js

端点

端点方法身份验证描述
/healthGET健康检查--返回 {"status":"ok"}
/.well-known/oauth-authorization-serverGETOAuth授权服务器元数据(MCP SDK 1.7+发现)
/.well-known/oauth-protected-resourceGETOAuth保护的资源元数据
/mcpPOST流式HTTP传输——无状态(MCP协议2025-03-26);GET/DELETE返回405
/sseGET传统客户端的SSE传输
/messagesPOSTSSE消息端点

认证

除以下端点外的所有端点 /health, /.well-known/*,以及 OPTIONS 飞行前请求要求:

Authorization: Bearer 

没有有效令牌的请求将收到 401 使用OAuth标准错误正文进行响应:

{ "error": "unauthorized", "error_description": "..." }

______________________________________________________________________

发展

项目结构

codifierMcp/
├── src/
│   ├── index.ts                    # Entry point (transport branching)
│   ├── config/
│   │   └── env.ts                  # Zod-validated configuration
│   ├── http/
│   │   ├── server.ts               # Express server (StreamableHTTP + SSE)
│   │   └── auth-middleware.ts      # Bearer token authentication
│   ├── datastore/
│   │   ├── interface.ts            # IDataStore abstraction
│   │   ├── types.ts                # Shared datastore types
│   │   ├── factory.ts              # createDataStore() factory
│   │   ├── supabase-datastore.ts   # Supabase implementation (default)
│   │   ├── supabase-client.ts      # Supabase client wrapper
│   │   ├── supabase-types.ts       # Supabase type definitions
│   │   ├── atlassian-datastore.ts  # Confluence implementation (legacy)
│   │   ├── confluence-client.ts    # Confluence REST API client
│   │   ├── confluence-types.ts     # Confluence type definitions
│   │   └── content-parser.ts       # Content parsing utilities
│   ├── mcp/
│   │   ├── server.ts               # Registers exactly 6 tools
│   │   ├── schemas.ts              # Zod schemas for tool parameters
│   │   └── tools/                  # 6 tool implementations
│   │       ├── fetch-context.ts
│   │       ├── update-memory.ts
│   │       ├── delete-memory.ts
│   │       ├── manage-projects.ts
│   │       ├── pack-repo.ts
│   │       └── query-data.ts
│   ├── integrations/
│   │   ├── repomix.ts              # RepoMix programmatic API wrapper
│   │   └── athena.ts               # Athena MCP sidecar client
│   ├── services/
│   │   ├── context-service.ts      # Rule retrieval with relevance scoring
│   │   └── memory-service.ts       # Memory enrichment and storage
│   └── utils/
│       ├── logger.ts               # Logging (stderr only)
│       └── errors.ts               # Custom error classes
├── skills/
│   ├── shared/
│   │   └── codifier-tools.md       # All 6 MCP tools reference
│   ├── capture-session/
│   │   └── SKILL.md
│   ├── push-memory/
│   │   └── SKILL.md
│   ├── initialize-project/
│   │   ├── SKILL.md
│   │   └── templates/
│   ├── brownfield-onboard/
│   │   └── SKILL.md
│   └── research-analyze/
│       ├── SKILL.md
│       └── templates/
├── commands/                           # Slash commands (YAML frontmatter for Cowork registration)
│   ├── codify.md                   # /codify slash command
│   ├── onboard.md                  # /onboard slash command
│   ├── research.md                 # /research slash command
│   ├── remember.md                 # /remember slash command
│   ├── push-memory.md              # /push-memory slash command
│   └── recall.md                   # /recall slash command
├── cli/
│   ├── bin/codifier.ts             # CLI entry point
│   ├── detect.ts                   # LLM client detection
│   ├── init.ts                     # npx codifier init
│   ├── update.ts                   # npx codifier update
│   ├── add.ts                      # npx codifier add 
│   └── doctor.ts                   # npx codifier doctor
├── supabase/
│   └── migrations/
│       ├── 001_initial_schema.sql
│       └── 002_v2_schema.sql       # Drops sessions/insights; v2.0 schema
├── docs/
│   ├── rules.yaml                  # Project development rules
│   ├── evals.yaml                  # Rule evaluations
│   └── MEMORY.md                   # Session learnings (local-first, synced to KB via /push-memory)
├── Dockerfile
├── fly.toml
└── package.json

命令

npm install          # Install dependencies
npm run build        # Compile TypeScript → dist/
npm run dev          # Build + run (stdio mode)
npm run watch        # Watch mode (rebuild on changes)

添加新功能

  1. 审查 docs/rules.yaml 编写代码之前
  2. 跟随 IDataStore 任何存储更改的界面
  3. 使用来自的自定义错误类 utils/errors.ts
  4. 仅记录到stderr(从不输出stdout)——MCP使用stdout进行协议
  5. 使用Zod模式验证所有输入 src/mcp/schemas.ts
  6. 使用严格的TypeScript;需要显式类型

______________________________________________________________________

建筑细部

数据模式

迁移 002_v2_schema.sql (2026年2月24日申请)放弃了 sessionsinsights 桌子。活动架构有4个表:

关键字段目的
projectsid、名称、组织、元数据顶级容器;项目范围内的所有实体
repositoriesid、project_id、url、快照、file_tree、version_label来自RepoMix的版本化仓库快照
memoriesid、project_id、memory_type、标题、内容、标签、置信度、嵌入、source_role所有知识实体(规则、文档、学习、发现)
api_keysid,project_id,key_hashAPI密钥→ RLS的项目映射

检索策略

最有价值球员:精确匹配过滤 project_id, memory_type,以及 tags嵌入在写入时存储,但向量相似性搜索推迟到v2.1。

v2.1:混合检索——精确匹配过滤器+通过pgvector进行向量排名。

为什么使用技能而不是服务器端PlaybookRunner

最初的v2.0设计使用了服务器端 PlaybookRunner 带有a的状态机 sessions 桌子, run_playbook,以及 advance_step 工具。它在2026年2月被替换,原因有三:

  1. 消除往返:每个剧本步骤都需要一个MCP调用。技能允许LLM在其上下文窗口中管理工作流状态——无需额外调用步骤转换工具。
  2. 模型不可知论:技能标记文件适用于任何LLM客户端。YAML脚本格式将生成绑定到Codifier的服务器端提示程序集。
  3. 简化服务器:6个无状态工具更容易推理、测试和扩展。Fly.io部署始终运行(min_machines_running = 1, auto_stop_machines = false)--客户无冷启动延迟。

______________________________________________________________________

路线图

v2.1

特性描述
语义搜索启用矢量相似性 memories.embedding;混合检索
技能经理/雨伞MCPConfluence、SharePoint、GitHub、Jira连接器的代理模式
研究人员数据来源SharePoint+Google Drive作为研究和分析中的可选来源
建筑师技能技术评估、系统建模、ADR
战略家技能路线图规划、竞争分析
团队机器人只读知识库查询+技能步骤作为自适应卡片
SSO/入口ID用组织SSO替换API密钥验证
记忆关系关系查询中内存之间的图边

______________________________________________________________________

额外资源

______________________________________________________________________

使用克劳德代码构建

目录标签

目录标签

TypeScriptClaude数据分析AI开发辅助本地部署知识图谱团队协作决策支持

支持客户端

Claude DesktopClaudeCursorWindsurf

接入字段

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

stdio

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

oauth

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

codifier

工具数量(toolCount,工具数)

6

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdiooauth部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP