Best for
- Use this skill when a user has the MongoDB MCP server installed but hasn't configured the required environment variables, or when they ask about connecting to MongoDB/Atlas and don't have the credentials set up.
fcakyon/claude-codex-settings/plugins/mongodb-skills/skills/mongodb-mcp-setup/SKILL.md
Guide users through configuring key MongoDB MCP server options. Use this skill when a user has the MongoDB MCP server installed but hasn't configured the required environment variables, or when they ask about connecting to MongoDB/Atlas and don't have the credentials set up.
Decision brief
This skill guides users through configuring the MongoDB MCP server for use with an agentic client.
Compatibility matrix
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/fcakyon/claude-codex-settings --skill "plugins/mongodb-skills/skills/mongodb-mcp-setup"Inspect the Agent Skill "mongodb-mcp-setup" from https://github.com/fcakyon/claude-codex-settings/blob/ccd2e764cc57ba1e8de4833615a04d540ba1295a/plugins/mongodb-skills/skills/mongodb-mcp-setup/SKILL.md at commit ccd2e764cc57ba1e8de4833615a04d540ba1295a. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
Before anything else, determine which agentic client the user is running. This controls how credentials are configured in Step 1 and Step 5.
Check whether credentials are already configured.
If no valid configuration exists, present the options:
If the user chooses Option A:
Explain where and how to obtain their connection string:
Permission review
The documentation asks the agent to run terminal commands or scripts.
docker infoEvidence record
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 90/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 961 | Source | Repository attention, not individual Skill quality |
| Compatibility | 0 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
This skill guides users through configuring the MongoDB MCP server for use with an agentic client.
The MongoDB MCP server requires authentication. Users have three options:
Connection String (Option A): Direct connection to a specific cluster
MDB_MCP_CONNECTION_STRING environment variableService Account Credentials (Option B): MongoDB Atlas Admin API access
atlas-connect-clusterMDB_MCP_API_CLIENT_ID and MDB_MCP_API_CLIENT_SECRET environment variablesAtlas Local (Option C): Local development with Docker
This is an interactive step-by-step guide. The agent detects the user's environment and provides tailored instructions, but never asks for or handles credentials — users add those directly to their shell profile or agentic client config in Step 5. Make this clear to the user whenever credentials come up in Steps 3a and 3b.
Before anything else, determine which agentic client the user is running. This controls how credentials are configured in Step 1 and Step 5.
Run:
env | grep "^CODEX_"
CODEX_* variables are present → the user is running a shell-based client (Claude, Cursor, Gemini CLI, Copilot CLI, etc.). Credentials are configured via shell profile environment variables.CODEX_* variables are present → the user is running Codex. Credentials are stored in ~/.codex/config.toml (macOS/Linux) or %USERPROFILE%\.codex\config.toml (Windows), not in shell environment variables. The desktop app does not inherit shell env vars when launched from Finder, Launchpad, or the Windows Start menu.Carry this client type (Codex vs. shell-based) forward through every subsequent step.
Check whether credentials are already configured.
For shell-based clients — check the current environment:
env | grep "^MDB_MCP" | sed '/^MDB_MCP_READ_ONLY=/!s/=.*/=[set]/'
For Codex — search ~/.codex/config.toml (macOS/Linux) or %USERPROFILE%\.codex\config.toml (Windows):
grep -E 'MDB_MCP_(CONNECTION_STRING|API_CLIENT_ID|API_CLIENT_SECRET|READ_ONLY)' ~/.codex/config.toml 2>/dev/null | sed '/MDB_MCP_READ_ONLY/!s/[[:space:]]*=[[:space:]].*/ = "[set]"/'
Interpretation (both):
MDB_MCP_CONNECTION_STRING appears → connection string auth is configuredMDB_MCP_API_CLIENT_ID and MDB_MCP_API_CLIENT_SECRET appear → service account auth is configured. If only one is present, treat it as incomplete.MDB_MCP_READ_ONLY appears → read-only mode is enabledPartial Configuration Handling:
config.toml for Codex, from their shell profile for shell-based clients), then proceed with Steps 2–5Important: If the user wants an Atlas Admin API action (managing clusters, creating users, performance advisor) but only has MDB_MCP_CONNECTION_STRING, explain they need service account credentials and offer to walk through setup.
If no valid configuration exists, present the options:
Connection String (Option A) — Best for:
Service Account Credentials (Option B) — Best for:
Atlas Local (Option C) — Best for:
Ask the user which option they'd like to proceed with.
If the user chooses Option A:
Explain where and how to obtain their connection string:
For MongoDB Atlas:
<username> and <password> with your database user credentialsFor self-hosted MongoDB:
mongodb://username:password@host:port/databaseExpected formats:
mongodb://username:password@host:port/databasemongodb+srv://username:[email protected]/databasemongodb://host:port (local, no auth)Proceed to Step 4 (Determine Read-Only Access).
If the user chooses Option B:
Direct the user to create a MongoDB Atlas Service Account:
Full documentation: https://www.mongodb.com/docs/mcp-server/prerequisites/
Walk them through the key steps:
⚠️ CRITICAL: The user MUST add their IP address to the service account's API Access List, or all Atlas Admin API operations will fail.
Steps:
0.0.0.0/0 allows access from any IP — this is a significant security risk. Only use it as a last resort for temporary testing and remove it immediately afterward. It should never be used in production.This is more secure than global Network Access settings as it only affects API access, not database connections.
Proceed to Step 4 (Determine Read-Only Access).
If the user chooses Option C:
Verify Docker is installed:
docker info
If not installed, direct them to: https://www.docker.com/get-started
Atlas Local requires no credentials — the user is ready to go:
atlas-local-create-deploymentatlas-local-list-deploymentsSkip Steps 4 and 5 (no configuration needed) and proceed to Step 6 (Next Steps).
Only applies to Options A and B. Skip to Step 6 for Option C.
Ask whether they want read-only or read-write access:
Read-Write (default): Full data access, modifications allowed
Read-Only: Data reads only, no modifications
If read-only: include the read-only flag in the credential snippet in Step 5. If read-write: omit it (defaults to read-write).
Proceed to Step 5 (Configure Credentials).
Do not ask for or handle credentials — provide exact instructions so the user can add them directly.
For shell-based clients — store credentials in a dedicated ~/.mcp-env file (not directly in the shell profile), then source it from the profile. This keeps credentials out of files that are often group/world readable by default and prevents accidentally committing them to git.
For Codex — add to ~/.codex/config.toml (macOS/Linux) or %USERPROFILE%\.codex\config.toml (Windows).
Show the user the appropriate snippet:
For Connection String (Option A):
Shell-based clients (~/.mcp-env):
export MDB_MCP_CONNECTION_STRING="<paste-your-connection-string-here>"
Codex (config.toml):
[mcp_servers.mongodb.env]
MDB_MCP_CONNECTION_STRING = "<paste-your-connection-string-here>"
For Service Account (Option B):
Shell-based clients (~/.mcp-env):
export MDB_MCP_API_CLIENT_ID="<paste-your-client-id-here>"
export MDB_MCP_API_CLIENT_SECRET="<paste-your-client-secret-here>"
Codex (config.toml):
[mcp_servers.mongodb.env]
MDB_MCP_API_CLIENT_ID = "<paste-your-client-id-here>"
MDB_MCP_API_CLIENT_SECRET = "<paste-your-client-secret-here>"
If read-only was chosen (Step 4), also add:
Shell-based: export MDB_MCP_READ_ONLY="true" in ~/.mcp-env.
Codex: MDB_MCP_READ_ONLY = "true" under the same [mcp_servers.mongodb.env] section.
⚠️ Both config.toml and ~/.mcp-env are stored in plaintext. Do not commit them to version control.
Restrict permissions on ~/.mcp-env:
# adjust for windows if needed
chmod 600 ~/.mcp-env
Add source ~/.mcp-env to the shell profile (e.g. ~/.zshrc). Adjust for the detected shell (e.g. for fish: bass source ~/.mcp-env or set -x; for PowerShell: dot-source a .ps1 file instead).
Detect the shell and profile file by running echo $SHELL if needed.
Shell-based clients — reload the profile first, then verify:
source ~/.zshrc # adjust to match the profile file
env | grep "^MDB_MCP" | sed '/^MDB_MCP_READ_ONLY=/!s/=.*/=[set]/'
Codex:
# adjust path if on Windows
grep -E 'MDB_MCP_(CONNECTION_STRING|API_CLIENT_ID|API_CLIENT_SECRET|READ_ONLY)' ~/.codex/config.toml 2>/dev/null | sed '/MDB_MCP_READ_ONLY/!s/[[:space:]]*=[[:space:]].*/ = "[set]"/'
Expected output shows the configured key(s) with values redacted to [set]. If nothing appears, check that credentials were saved and (for shell-based clients) that the profile was reloaded.
Proceed to Step 6 (Next Steps).
Restart the agentic client:
source <profile-file> to load the new variables, and reopen the client from that same terminal session so it inherits the environment.config.toml.Verify MCP Server: After restart, test by performing a MongoDB operation.
Using the Tools:
atlas-connect-clusterReady to use: No restart or configuration needed!
Next steps:
atlas-local-create-deploymentatlas-local-list-deploymentssource (shell-based clients): Check the profile file path and confirm the file was saved.zshrc/.zprofile/PowerShell profiles. Use ~/.codex/config.toml (macOS/Linux) or %USERPROFILE%\.codex\config.toml (Windows) instead (see Step 5)mongodb:// or mongodb+srv://MDB_MCP_READ_ONLY is set — in config.toml under [mcp_servers.mongodb.env] for Codex, or via env | grep ^MDB_MCP_READ_ONLY for shell-based clientsset -x (fish) or $env: (PowerShell) instead of exportAlternatives
coreyhaines31/marketingskills
When the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program. Also use when the user mentions "A/B test," "split test," "experiment," "test this change," "variant copy," "multivariate test," "hypothesis," "should I test this," "which version is better," "test two versions," "statistical significance," "how long should I run this test," "growth experiments," "experiment velocity," "experiment backlog," "ICE score," "experimentation program
alirezarezvani/claude-skills
App Store Optimization (ASO) toolkit for researching keywords, analyzing competitor rankings, generating metadata suggestions, and improving app visibility on Apple App Store and Google Play Store. Use when the user asks about ASO, app store rankings, app metadata, app titles and descriptions, app store listings, app visibility, or mobile app marketing on iOS or Android. Supports keyword research and scoring, competitor keyword analysis, metadata optimization, A/B test planning, launch checklist
dotnet/skills
Migrates .NET test projects from VSTest to Microsoft.Testing.Platform (MTP). Use when user asks to "migrate to MTP", "switch from VSTest", "enable Microsoft.Testing.Platform", "use MTP runner", set OutputType=Exe only for test projects in Directory.Build.props, or mentions EnableMSTestRunner, EnableNUnitRunner, or UseMicrosoftTestingPlatformRunner. USE FOR: MTP behavioral differences vs VSTest (exit code 8, zero tests discovered, --ignore-exit-code, TESTINGPLATFORM_EXITCODE_IGNORE); centralizing
JasonColapietro/suede-creator-skills
Suede-owned experimentation discipline for hypotheses, sample sizing, test duration, significance, and repeatable experiment programs. Use when comparing variants, deciding whether a result is reliable, or building an experiment backlog and cadence. NOT FOR: analytics instrumentation (use suede-analytics), post-click conversion diagnosis (use suede-site-alchemy), or writing the variant copy itself (use suede-copy).