Endor Labs MCP server in OpenAI Codex
The Endor Labs MCP server helps developers and AI agents in the following ways:
- Provide guardrails for agents before code review: Reduce the number of known vulnerabilities entering your code and save developers time by checking AI agent suggestions in real time. Integrate security before an issue is discovered in CI or in production.
- Improve the speed of remediating security risks: Agents use vulnerability context from Endor Labs to help implement secure changes, from writing more secure code to upgrading dependencies.
The Endor Labs MCP server integrates directly into OpenAI Codex to scan your code as you write, catching security issues before they reach production.
The following sections walk you through setting up the Endor Labs MCP server:
- Tools in the Endor Labs MCP server
- Prerequisites for Endor Labs MCP server
- Choose your edition
- Developer Edition
- Enterprise Edition
- Manage MCP server tools
- Configure AGENTS.md
- Troubleshooting
Tools in the Endor Labs MCP server
The Endor Labs MCP server provides the following tools:
check_dependency_for_vulnerabilities: Check if a dependency in your project is vulnerable.check_dependency_for_risks: Check a dependency for security risks including vulnerabilities and malware.get_endor_vulnerability: Get the details of a specific vulnerability from the Endor Labs vulnerability database.get_resource: Retrieve additional context from commonly used Endor Labs resources about your software, such as findings, vulnerabilities, and projects.scan: Run an Endor Labs security scan to detect risks in your open source dependencies, find common security issues, and spot any credentials accidentally exposed in your Git repository.security_review: Perform security review analysis on code diffs. Analyzes local uncommitted changes (both staged and unstaged) compared to HEAD, or diffs between the main branch and the last commit. Requires the Enterprise Edition. You must specify your namespace in the MCP server configuration. You must also enable AI security code review for your namespace in the Endor Labs platform. See AI security code review for setup instructions.
After you set up the MCP server, you can choose to disable the tools that you do not want to use.
Prerequisites for Endor Labs MCP server
Ensure that the following prerequisites are met:
- OpenAI Codex CLI
- Node.js version 18 or later (required if you don’t have
endorctlinstalled) - Windows users: See Prerequisites for Endor Labs MCP server on Windows for additional instructions
Choose your edition
The Endor Labs MCP server has two editions:
- Developer Edition: A free edition that requires no configuration. A browser window opens on first use for authentication via GitHub, GitLab, or Google. The Developer Edition provides access to default security policies from Endor Labs.
- Enterprise Edition: A paid edition that enforces your organization’s specific security policies. Authenticate using GitHub, GitLab, Google, or SSO. You must specify your namespace to access your organization’s policies.
Additionally, if you already have Endor Labs configured locally (for example, from a previous endorctl init command), the MCP server can use your pre-existing configuration.
Developer Edition
The Endor Labs MCP server works out of the box with the Developer Edition. When you use the MCP server for the first time, a browser window opens, and you can authenticate with GitHub, GitLab, or Google. After authentication, the MCP server provides access to the free Developer Edition with the default security policies.
Developer Edition: Add the MCP server with a single command
Run the following command to add the MCP server to your project.
codex mcp add endor-cli-tools -- npx -y endorctl ai-tools mcp-server
Developer Edition: Add the MCP server with config.toml
Add the following to your ~/.codex/config.toml (or a project-scoped .codex/config.toml).
[mcp_servers.endor-cli-tools]
command = "npx"
args = ["-y", "endorctl", "ai-tools", "mcp-server"]
endorctl init, add --env ENDOR_TOKEN=automatic to the CLI command (or add the [mcp_servers.endor-cli-tools.env] section with ENDOR_TOKEN = "automatic" to config.toml). The MCP server reuses your existing configuration without requiring additional setup.
Developer Edition: Verify the installation
codex mcp list
Confirm that endor-cli-tools appears in the list. You can also use /mcp in the Codex TUI to view active MCP servers.
Try a test prompt
After installing the MCP server, try the following prompt in your AI chat or CLI to verify that the tools are working.
Check if the npm package lodash version 4.17.20 has any vulnerabilities
The MCP server uses the check_dependency_for_vulnerabilities tool to check for known vulnerabilities and return the results. If you see a response with vulnerability details, the MCP server is working correctly.
Enterprise Edition
For Enterprise Edition, you need your organization’s Endor Labs namespace and an authentication method. Ensure that your developers have Read-Only permissions to Endor Labs. See Authorization policies for more details.
Enterprise Edition: Add the MCP server with a single command
codex mcp add endor-cli-tools \
--env ENDOR_NAMESPACE=<namespace> \
--env ENDOR_MCP_SERVER_AUTH_MODE=<google|github|gitlab|sso> \
--env ENDOR_TOKEN=automatic \
-- npx -y endorctl ai-tools mcp-server
Replace <namespace> with your Endor Labs namespace and choose your authentication mode. If you choose sso, you must also add ENDOR_MCP_SERVER_AUTH_TENANT to the environment variables.
Enterprise Edition: Add the MCP server with config.toml
[mcp_servers.endor-cli-tools]
command = "npx"
args = ["-y", "endorctl", "ai-tools", "mcp-server"]
[mcp_servers.endor-cli-tools.env]
ENDOR_NAMESPACE = "<namespace>"
ENDOR_MCP_SERVER_AUTH_MODE = "<google|github|gitlab|sso>"
ENDOR_TOKEN = "automatic"
Replace <namespace> with your Endor Labs namespace and choose your authentication mode. If you choose sso, you must also add ENDOR_MCP_SERVER_AUTH_TENANT to the env section.
The following parameters are used to configure the MCP server. All parameters are optional. If no parameters are provided, the MCP server defaults to the Developer Edition with browser authentication.
ENDOR_MCP_SERVER_AUTH_MODE: (Optional) The authentication mode to use for the MCP server. You can use the following authentication modes:github,gitlab,google,sso. If you choosesso, you must addENDOR_MCP_SERVER_AUTH_TENANTas an additional parameter. If not specified, the MCP server defaults to browser authentication for the Developer Edition.ENDOR_NAMESPACE: (Optional) The namespace to use for the MCP server. Required for Enterprise Edition to access your organization’s specific policies. Not needed for Developer Edition.ENDOR_TOKEN: (Optional) Set toautomaticto reuse an existing localendorctlconfiguration. When set toautomatic, the MCP server skips browser authentication and uses your stored credentials. Do not set this to any other value; the MCP server manages the token internally during authentication.ENDOR_MCP_SERVER_AUTH_TENANT: (Optional) The tenant name for SSO authentication. Required whenENDOR_MCP_SERVER_AUTH_MODEis set tossofor Enterprise Edition access.
Enterprise Edition: Verify the installation
codex mcp list
Confirm that endor-cli-tools appears in the list.
Try a test prompt
After installing the MCP server, try the following prompt in your AI chat or CLI to verify that the tools are working.
Check if the npm package lodash version 4.17.20 has any vulnerabilities
The MCP server uses the check_dependency_for_vulnerabilities tool to check for known vulnerabilities and return the results. If you see a response with vulnerability details, the MCP server is working correctly.
Manage MCP server tools
In the Codex TUI, use /mcp to see your active MCP servers. You can also disable specific tools in the config.toml file:
[mcp_servers.endor-cli-tools]
command = "npx"
args = ["-y", "endorctl", "ai-tools", "mcp-server"]
enabled_tools = ["check_dependency_for_vulnerabilities", "scan"]
Configure AGENTS.md
To enhance the MCP server integration, you can add instructions in AGENTS.md at the root of your repository. Codex reads AGENTS.md files to guide AI development with your project-specific instructions.
-
Navigate to the root of your repository.
-
Create or edit the
AGENTS.mdfile in the root of your repository. -
Add appropriate rules for your project. For example, you can add a rule to check if the code is free from vulnerabilities.
Example AGENTS.md instructions
You can use the following AGENTS.md instructions as a quick start for the Endor Labs MCP server. Modify the instructions to meet your specific organization’s needs. For more information, refer to the OpenAI Codex AGENTS.md documentation.
# Software Composition Analysis (SCA) Rule (Endor Labs via MCP)
This project uses Endor Labs for automated dependency (SCA) scanning, integrated through the MCP server.
## Workflow
Every time a manifest or lockfile (package.json, requirements.txt, go.mod, pom.xml, etc.) is created or modified in any way, immediately do the following prior to performing your next task.
**Important**: Do not proceed after creating or modifying a manifest file without running this first.
- Run `endor-cli-tools` using the `check_dependency_for_vulnerabilities` tool via the MCP server.
- Provide the **ecosystem**, **dependency name**, and **version** always when making this tool call.
- If a vulnerability or error is identified:
- Upgrade to the suggested safe version, or
- Replace the dependency with a non-vulnerable alternative.
- Re-run the check using `endor-cli-tools` to confirm the issue is resolved.
## Notes
- All scans must be performed using the MCP server integration (`endor-cli-tools`). Do not invoke `endorctl` directly.
# Leaked Secrets Detection Rule (Endor Labs via MCP)
This project uses [Endor Labs](https://docs.endorlabs.com/) for automated security scanning, integrated through the MCP server.
## Workflow
Whenever a file is modified in the repository, and before the end of an agent session:
- Run `endor-cli-tools` using the `scan` tool via the MCP server to check for leaked secrets.
- If any secrets or errors are detected:
- Remove the exposed secret or correct the error immediately.
- Re-run the scan to verify the secret has been properly removed.
- Save scan results and remediation steps in a security log or as comments for audit purposes.
## Notes
- All scans must be performed using the MCP server integration (`endor-cli-tools`). Do not invoke `endorctl` directly.
- This scan must use the path of the directory from which the changed files are in. Use absolute paths.
# Static Application Security Testing (SAST) Rule (Endor Labs via MCP)
This project uses [Endor Labs](https://docs.endorlabs.com/) for automated SAST, integrated through the MCP server.
## Workflow
Whenever a file is modified in the repository, and before the end of an agent session:
- Run `endor-cli-tools` using the `scan` tool via the MCP server to perform SAST scans.
- If any vulnerabilities or errors are found:
- Present the issues to the user.
- Recommend and apply appropriate fixes (e.g., input sanitization, validation, escaping, secure APIs).
- Save scan results and remediation steps in a security log or as comments for audit purposes.
## Notes
- All scans must be performed using the MCP server integration (`endor-cli-tools`). Do not invoke `endorctl` directly.
- Do not invoke Opengrep directly.
- This scan must use the path of the directory from which the changed files are in. Use absolute paths.
Troubleshooting
Use the following troubleshooting steps to resolve common issues with the Endor Labs MCP server.
MCP server shows as disconnected or errored
- Verify Node.js and npx are available: run
npx --versionin your terminal. If the command fails, install Node.js version 18 or later. - Restart your IDE or CLI to reload the MCP server configuration.
- Check your config for syntax errors. Use a JSON or TOML validator, or switch to the configuration tool or CLI command instead of manual editing.
Authentication browser window does not open
- Ensure your IDE or CLI can open a browser. Check firewall or security software that might block browser launch.
- For Enterprise Edition, confirm
ENDOR_MCP_SERVER_AUTH_MODEis set correctly (google,github,gitlab, orsso). For SSO, ensureENDOR_MCP_SERVER_AUTH_TENANTis provided.
endorctl download times out
If npx -y endorctl hangs or times out (for example, behind a corporate proxy or firewall), install endorctl globally and update your MCP config to use it. For more information, see Install endorctl.
After installing endorctl, update your MCP config to call endorctl directly instead of npx.
Replace the command and args entries with:
"command": "endorctl",
"args": ["ai-tools", "mcp-server"]
Alternatively, configure your proxy settings for npm.
Tools return errors when invoked
- If you are using the Enterprise Edition, verify whether your namespace is correct and that your user has
Read-Onlypermissions. See Authorization policies for details. - Ensure endorctl is on your PATH if you installed it globally instead of using npx.
- Check that the working directory or project path is valid when invoking tools.
Config file has a syntax error and the IDE gives no useful message
.cursor/mcp.json, .vscode/mcp.json, .mcp.json, or .codex/config.toml) with a JSON or TOML linter. Alternatively, use the configuration tool or CLI command for your platform instead of editing the file manually.
Prerequisites for Endor Labs MCP server on Windows
On Windows, ensure the following prerequisites are met:
Install Node.js
If Node.js is not installed, download and install the LTS version from nodejs.org. During installation, ensure the option to add Node.js to PATH is selected.
Configure the PATH environment variable
After installing Node.js, verify that the npm global bin directory is in your PATH:
-
Run the following command in the command line.
npm config get prefixThis returns the npm global directory path, typically
C:\Users\<YourUsername>\AppData\Roaming\npm. -
Add the npm global directory path to the Path variable under User variables in your system’s environment variables settings.
-
Restart for the PATH changes to take effect.
Verify the setup
Run the following command in your terminal.
npx --version
If this returns a version number, your Windows setup is complete and the MCP server can use npx to run endorctl.
Feedback
Was this page helpful?
Thanks for the feedback. Write to us at support@endor.ai to tell us more.
Thanks for the feedback. Write to us at support@endor.ai to tell us more.