Codex Plugin Examples: Building AI Integrations with the OpenAI Plugins Repository
The OpenAI plugins repository contains curated Codex plugin examples that bundle Markdown-based skills with JSON manifests, enabling AI agents to discover capabilities and execute real-world tasks through Model Context Protocol (MCP) servers.
The openai/plugins repository serves as the canonical reference for developers building Codex-compatible extensions. These Codex plugin examples demonstrate how to package procedural knowledge, metadata, and external API connectors into portable units that AI assistants can invoke through natural language prompts.
Anatomy of a Codex Plugin
Each example in the repository follows a consistent architecture that separates discovery metadata from execution logic. This structure ensures that Codex can index capabilities without loading implementation details until needed.
The Plugin Manifest
Every plugin includes a .codex-plugin/plugin.json file that provides the core metadata Codex reads to list the plugin in its marketplace. This manifest contains the name, short and long descriptions, and MCP server connection details. For example, the Zoom plugin’s manifest includes concise descriptions of its meeting automation capabilities and points to the underlying MCP server.
Skill Definitions
Capabilities are defined in SKILL.md files located under plugins/<plugin-name>/skills/. These Markdown files contain procedural instructions and YAML frontmatter that enables automatic discovery. The frontmatter includes fields such as retrieval.aliases, intents, entities, pathPatterns, and bashPatterns, which Codex indexes to match user requests to specific capabilities without additional code.
MCP Server Integration
When a skill needs to perform external API calls, it references an MCP server defined in the plugin configuration. This architecture keeps credentials and authentication out of the skill files, preserving security while allowing Codex to act on the user’s behalf. The MCP server handles the actual HTTP requests to services like Zoom, Zotero, or Vercel.
Repository Structure and Conventions
All Codex plugin examples follow identical structural conventions, making them plug-and-play for the Codex runtime.
| Component | Purpose | Location |
|---|---|---|
| Plugin Manifest | Metadata describing the plugin and MCP connection | plugins/<plugin-name>/.codex-plugin/plugin.json |
| Skills | Markdown files defining individual capabilities | plugins/<plugin-name>/skills/*/SKILL.md |
| Documentation | Human-readable setup and usage instructions | plugins/<plugin-name>/README.md |
| References | Supporting API docs and troubleshooting guides | plugins/<plugin-name>/skills/*/references/ |
Real-World Codex Plugin Examples
The repository includes production-ready implementations for popular services. Each example demonstrates how to translate API documentation into Codex-native skills.
Zoom Meeting Scheduler
The Zoom plugin enables Codex to create meetings through natural language requests. The skill definition in plugins/zoom/skills/oauth/SKILL.md defines the workflow:
# Schedule a Zoom meeting
description: Use this skill to create a new Zoom meeting.
## Steps
1. Prompt the user for meeting title, date, and duration.
2. Call the Zoom MCP endpoint `create_meeting` with the collected parameters.
3. Return the meeting join URL to the user.
## Example Prompt
> "Schedule a Zoom meeting called *Project Sync* for tomorrow at 10 am lasting 30 minutes."
When a user enters a similar prompt, Codex matches the intent to this skill, executes the prescribed steps, and calls the Zoom MCP server to generate the meeting.
Zotero Citation Manager
The Zotero plugin demonstrates integration with local desktop applications. Located in plugins/zotero/skills/zotero/SKILL.md, this skill searches the user's local Zotero library:
# Insert a citation from Zotero
description: Search a local Zotero library and add a citation key to the current draft.
## Steps
1. Ask the user for a search query (author, title, tags, etc.).
2. Query the Zotero local API (`http://localhost:23119`) for matching items.
3. Offer the top results; when the user selects one, insert its citation key (e.g., `Doe2024`) into the document at the cursor location.
## Example Prompt
> "Add a citation for the paper about quantum entanglement I saved last week."
This example shows how Codex plugin examples can bridge local desktop APIs with conversational AI workflows.
Vercel Deployment Automation
The Vercel plugin in plugins/vercel/skills/vercel-api/SKILL.md enables continuous deployment triggers:
# Deploy a Vercel project
description: Trigger a Vercel deployment from Codex.
## Steps
1. Identify the Vercel project name (ask the user if ambiguous).
2. Call the Vercel MCP endpoint `trigger_deploy` with the project identifier.
3. Return the deployment URL and status to the user.
## Example Prompt
> "Deploy the `my-nextjs-site` project on Vercel."
Render Platform Integration
The Render plugin demonstrates tool-specific adjustments. In plugins/render/skills/render-mcp/SKILL.md, the documentation includes distinct sections for different AI assistants:
### Codex
To use this skill with Codex, ensure the Render MCP server is running and configured with your API key. Codex will automatically discover the available endpoints through the plugin manifest.
### Cursor
For Cursor users, add the following configuration to your `.cursor/mcp.json` file...
This pattern ensures that Codex plugin examples remain compatible across the growing ecosystem of AI coding assistants.
How Skill Discovery Works
Codex indexes skills by parsing the YAML frontmatter in each SKILL.md file. The frontmatter establishes retrieval aliases and intent patterns that map natural language to specific capabilities. When a user prompts Codex with "schedule a meeting," the runtime matches this against the intents and retrieval.aliases defined in the Zoom plugin's skill metadata, then loads the corresponding Markdown to execute the workflow.
The system also supports path-based discovery through pathPatterns and shell command detection via bashPatterns, allowing skills to activate based on the user's current working directory or terminal context.
Summary
- Codex plugin examples combine
.codex-plugin/plugin.jsonmanifests withskills/SKILL.mddefinitions to create discoverable AI capabilities. - Skills use YAML frontmatter with
retrieval.aliases,intents, andentitiesto enable automatic natural-language matching without custom code. - MCP servers handle authentication and API execution, keeping credentials secure while allowing Codex to perform real-world actions.
- The repository includes working implementations for Zoom, Zotero, Vercel, and Render that demonstrate tool-specific adaptations and local API integration.
Frequently Asked Questions
What is the difference between a skill and a plugin?
A plugin is the container defined by .codex-plugin/plugin.json that registers capabilities with Codex, while skills are individual atomic capabilities defined in SKILL.md files under the skills/ directory. One plugin can contain multiple related skills, such as a Zoom plugin containing separate skills for scheduling meetings and generating join links.
How does Codex authenticate with external APIs?
Authentication is handled entirely by MCP servers referenced in the plugin manifest. According to the source code in the openai/plugins repository, this design keeps credentials and tokens out of skill Markdown files, ensuring that sensitive information remains within the MCP server configuration rather than being exposed to the AI model or version control.
Can these plugins work with AI assistants other than Codex?
Yes, the repository structure supports multi-tool compatibility. Skills often include conditional sections for different assistants, such as ### Codex or ### Cursor headings within the same SKILL.md file. The Render plugin example specifically demonstrates this pattern by providing distinct setup instructions for Codex, Claude Code, and Cursor users.
Where are the plugin manifests and skill files located?
Each plugin follows the path plugins/<plugin-name>/ where the manifest lives at .codex-plugin/plugin.json and skills reside in skills/<skill-name>/SKILL.md. For example, the Zotero citation skill is located at plugins/zotero/skills/zotero/SKILL.md, while the Zoom plugin manifest is at plugins/zoom/.codex-plugin/plugin.json.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →