Skip to main content
Glama

Codex Skills MCP is a production-oriented Model Context Protocol server and an installable Codex/ChatGPT desktop plugin for a continuously updated expert-skill library. It indexes a lightweight catalog, searches locally, downloads selected skills on demand, verifies every file, and keeps the working set auditable on disk.

Available as: GitHub-distributed Codex desktop plugin · standalone stdio MCP server · self-hosted Streamable HTTP MCP server.

Codex Skills desktop interface

Why Codex Skills MCP

Capability

What it means

Progressive loading

Search costs tokens; full instructions and assets are downloaded only after a skill is selected.

Small model surface by default

Standard MCP clients receive 8 focused tools. ChatGPT/Codex MCP Apps hosts can opt into the 22-tool UI surface.

Integrity-first downloads

Known files are checked against size and Git blob SHA before entering the cache.

Local-first cache

Skills materialize under ~/.codex-skills-cache and remain reusable across sessions.

Resilient installation

Direct GitHub, the official read-only mirror, jsDelivr and fallback mirrors can race without exposing credentials.

Agent keeps judgment

Search results are candidates, not mandatory loading instructions. The agent can use none, one, or several skills.

Related MCP server: studiox-skills-mcp

Quick Start

Codex desktop plugin

Add this repository as a Codex marketplace once:

codex plugin marketplace add Zhan-ZhangZ/codex-skills-mcp --ref main

Then install it from the Codex Plugins directory, or from the CLI:

codex plugin add codex-skills@codex-skills-marketplace

Plugin users do not need Node.js, npm or npx. The plugin launcher starts the bundled MCP server with the runtime supplied by the Codex desktop app. Start a new chat after installation.

See GitHub plugin marketplace for updates, version pinning, runtime selection and troubleshooting.

Standalone MCP server

Standalone stdio and self-hosted deployments require Node.js 22 or newer:

npx -y codex-skills-mcp@beta

The current source release is 1.6.2. The beta npm dist-tag remains the standalone channel for the current feature line.

Codex CLI

codex mcp add codex-skills -- npx -y codex-skills-mcp@beta

Or add this to ~/.codex/config.toml:

[mcp_servers.codex-skills]
command = "npx"
args = ["-y", "codex-skills-mcp@beta"]

Claude Desktop

{
  "mcpServers": {
    "codex-skills": {
      "command": "npx",
      "args": ["-y", "codex-skills-mcp@beta"]
    }
  }
}

Cursor

Create .cursor/mcp.json in the project:

{
  "mcpServers": {
    "codex-skills": {
      "command": "npx",
      "args": ["-y", "codex-skills-mcp@beta"]
    }
  }
}

More client and self-hosting setups are in Installation.

How It Works

flowchart LR
    A["MCP client"] --> B["Codex Skills MCP"]
    B --> C["Local manifest + BM25 index"]
    C --> D["Tool result: candidate skills"]
    D --> E["read_skill: selected skill only"]
    E --> F["Verified local cache"]
    F --> G["Agent executes SKILL.md"]
    F --> H["MCP App / resources"]

The server never downloads the entire library at startup. It loads a compact manifest, builds a keyword/task index locally, then materializes complete skill directories only after selection. See Architecture and Agent protocol.

The Codex plugin uses the same stdio MCP implementation. Only installation and runtime discovery change: Codex launches a compact cross-platform launcher instead of resolving npx and a user-installed Node.js binary.

The screenshot uses the deterministic preview host. Live skill, domain and usage counts come from the current manifest and local usage history.

Tool Surface

Core tools

All standard MCP clients receive these 8 tools:

Tool

Purpose

search_skills

Keyword or task-oriented skill discovery

list_categories

Browse current categories and counts

plan_workflow

Produce a candidate shortlist for a task

read_skill

Materialize and read a selected skill

load_skill_file

Read a supporting file from the cache

list_skill_files

Browse files, nested skills, or a bounded file tree

skill_status

Verify cache completeness

diagnostics

Inspect recent calls, errors, cache and configuration

Host compatibility

Host

Core tools

Interactive library / skill tray

@ mentions and settings

ChatGPT desktop app (local plugin)

Yes

Yes

Yes

Codex desktop app

Yes

Yes

Yes

ChatGPT web/mobile with a compatible remote MCP server

Yes

Depends on MCP Apps support

Depends on host

Codex CLI, Claude Desktop, Cursor, Windsurf and other standard MCP clients

Yes

No

No

中文兼容提示: 可视技能库和技能托盘(skills.tray)是 MCP Apps 界面,不是标准 MCP 能力。安装本项目本地插件时,它们只会在支持 MCP Apps 的 ChatGPT 桌面端或 Codex 桌面端出现。Codex CLI、Claude Desktop、Cursor、 Windsurf 等客户端仍可使用 8 个核心工具和 skill:// 资源,但不会显示技能托盘。 本地插件在 ChatGPT 中也只应在本地执行线程里使用,@ 提及不会出现在云端线程。

The bundled local plugin is Desktop only. Its UI library, skills.tray skill tray, attachment handoff, @ mentions and native settings panel require a ChatGPT/Codex desktop host that supports MCP Apps and OpenAI MCP extensions. The local plugin can only be installed from the ChatGPT desktop app, and the manifest is marked with requires_local_executor.

Standard MCP clients still receive the complete agent workflow through the 8 core tools and skill:// resources; they do not display the visual skill tray.

MCP Apps and host extensions

ChatGPT/Codex MCP Apps hosts additionally receive the interactive library, settings, mentions and app-facing tools. This includes:

  • skills.library, skills.tray, skills.browse and skills.query;

  • shared search history and progress tools;

  • inline image preview and per-skill cache removal;

  • settings.read, settings.update and refresh_skills_list;

  • search_mentions and the skill://{name} resource family.

Use --tool-profile core|full|auto to override host detection. The complete reference is in Tools and Host extensions.

Configuration

The defaults work without a config file. Common options:

--cache-dir <path>             Cache location
--skills-dir <path>            Use a local skill library
--http                         Start Streamable HTTP transport
--host <addr>                  HTTP bind address
--port <port>                  HTTP port
--tool-profile <mode>          auto | core | full
--manifest-ttl <seconds>       Manifest refresh age
--manifest-poll <seconds>      Background freshness poll
--download-concurrency <n>     Parallel skill file downloads
--no-official-mirror           Disable the official CN endpoint
--no-hedge                     Race all endpoints immediately

Full flags, environment variables and persisted settings are documented in Configuration.

Security and Privacy

  • HTTP mode binds to 127.0.0.1 by default and validates Host/Origin allowlists.

  • GitHub credentials are sent only to GitHub endpoints, never to mirrors.

  • Skill paths are checked for traversal and symlink escapes.

  • Downloaded files are validated before they are accepted as cache content.

  • App Markdown is sanitized, and external links open with noopener noreferrer.

  • Anonymous usage counting is enabled by default. On upgrade it uploads one per-skill cumulative backfill, then daily successful-call increments. It never uploads prompts, paths or task content. Users can disable uploads in plugin settings without affecting local usage.

See SECURITY.md for vulnerability reporting and the threat model, and PRIVACY.md for telemetry details and opt-out behavior.

Commercial Use

Personal, educational, open-source and internal business use is free. Commercial sale, paid deployment/support, paid hosting, or bundling with a paid product requires the official logo, non-original-source notice and source link defined by the license.

非原创:本项目基于 codex-skills-mcp(合塑研工)二次开发,由 [销售方名称] 独立提供,非原作者官方发行版。

Read Commercial licensing, the controlling LICENSE, and the ready-to-use brand assets. This is a source-available license, not a standard OSI-approved license.

Documentation

Document

Contents

Installation

Client setup, local mode, HTTP deployment

GitHub plugin marketplace

Codex-only install, update, runtime and rollback

Configuration

CLI, environment and persisted settings

Architecture

Runtime components, cache and network design

Tools

Core, app and extension tool surface

Agent protocol

Recommended discovery and execution flow

Host extensions

MCP Apps and OpenAI extension integration

Performance

Design constraints and reproducible benchmarks

Commercial licensing

Free use and commercial conditions

Releasing

Release checklist and maintainer workflow

Development

npm ci
npm test
npm run build:plugin
npm run check:plugin
npm run check:package

The default suite is offline and covers search, cache validation, hedging, HTTP safety, MCP Apps, extension registration and real stdio flows. CI runs on Node.js 22 and 24 and exercises the plugin launcher on macOS, Windows and Linux.

Contributions are welcome. Read CONTRIBUTING.md before opening a pull request. Use Support for operational questions.

Project Layout

src/         MCP server, search, loader, transport and tools
app-src/     MCP App frontend source
assets/      Built app asset
plugin/      Codex plugin distribution
.agents/     GitHub marketplace catalog
brand/       Official logo and commercial attribution kit
docs/        User and maintainer documentation
examples/    Ready-to-copy MCP client configurations
scripts/     Build, verification and benchmark utilities
test/        Offline regression suites

License

Codex Skills MCP Commercial Attribution License 1.0, with an unofficial Chinese reference. Third-party content remains under its own terms; see NOTICE.

Codex Skills MCP is an independent project and is not an official product of OpenAI, Anthropic, Cursor or any other MCP host vendor.

Available Tools

6 tools
list_categoriesA

List all skill categories in the codex-skills library with their skill counts. Use this to get an overview of available domains.

Inputs: no named parameters.

list_skill_filesA

List the file tree of a skill or a subdirectory within it. Use this to understand a large skill's structure before deciding which files to load.

Inputs: skill_name (required), path, max_depth.

load_skill_fileA

Read a specific file from within a skill's directory. Use this after read_skill when you need to access scripts, configs, README, or other resources referenced in the skill instructions.

Inputs: file_path (required), skill_name (required).

plan_workflowA

Given a task description, suggest relevant skills that could be combined to accomplish it. Returns a list of recommended skills — the actual orchestration and execution order should be decided by you (the Agent).

Inputs: task_description (required).

read_skillA

Read a skill's full instructions (SKILL.md), file structure, and dependency info. Call this after search_skills to load a skill you want to use. The instructions contain the role and execution rules you should follow.

Inputs: name (required).

search_skillsA

Search the codex-skills library by natural language query. Returns matching skills ranked by relevance. Use this as the primary entry point to discover skills for a task.

Inputs: query (required), limit, category.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.3/5.0

    Scored across 6 tools

    Disambiguation4/5

    search_skills and plan_workflow both return skill recommendations, which could cause slight confusion, but the descriptions clarify that search_skills is for finding a single skill while plan_workflow is for combining multiple skills. The other tools (list_categories, read_skill, load_skill_file, list_skill_files) have clearly distinct purposes.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern with lowercase and underscores (search_skills, list_categories, read_skill, load_skill_file, list_skill_files, plan_workflow). No mixing of styles or irregular naming.

    Tool Count5/5

    Six tools is well-scoped for a skill library server, covering discovery, browsing, reading, and planning without excess or deficiency.

    Completeness5/5

    The tool set fully covers the lifecycle of using a skill library: discovering skills (search_skills), exploring categories (list_categories), reading skill instructions (read_skill), accessing files (list_skill_files, load_skill_file), and planning multi-skill workflows (plan_workflow). No obvious gaps for a read-only skill consumption server.

    Maintenance

    ActivityActive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers