AI Skill StudioAI Skill Studio
Skills
Presets:

MCP config generator: .mcp.json for Claude Code, Claude Desktop and Cursor

Pick the servers, keep tokens in environment variables, and download the config for your client. Runs in your browser; nothing is uploaded.

Target Standard & File Format

AI Agent Rules & Skills
Context Shields & Privacy (Ignore Files)
Integrations & Machine Documentation
AI Governance & Multi-Agent Planning Suite

MCP Server

Valid
Set the path from a local folder
Also drafts rules from its manifest and code.

Valid for Claude Code (.mcp.json) and Claude Desktop (claude_desktop_config.json).

Model Context Protocol (MCP): how it works

The Model Context Protocol (MCP) is an open standard that lets AI tools call external servers for data and actions, such as GitHub issues, a Postgres database or files on disk. Each client lists its servers in a JSON file under an mcpServers key: a command that starts a local server (with args and env), or a URL for a remote one. Claude Code reads a project's .mcp.json from the repo root and asks before using its servers. Claude Desktop uses claude_desktop_config.json, and Cursor uses .cursor/mcp.json.

Where the file goes

  • ./.mcp.jsonClaude Code, projectCommitted with the repo so the team shares the same servers. Claude Code asks for approval before using them.
  • ~/Library/Application Support/Claude/claude_desktop_config.jsonClaude DesktopOn Windows: %APPDATA%\Claude\claude_desktop_config.json. Restart Claude Desktop after editing.
  • .cursor/mcp.jsonCursor, projectUse ~/.cursor/mcp.json for servers available in every project.

What goes in it

Local serverA command the client starts on your machine. Give a filesystem server only the folders it needs.
{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "./src", "./docs"]
    }
  }
}
Remote server with a tokenClaude Code expands ${VAR} from your environment when it loads .mcp.json, so the token never lands in git.
{
  "mcpServers": {
    "github": {
      "type": "http",
      "url": "https://api.githubcopilot.com/mcp/",
      "headers": { "Authorization": "Bearer ${GITHUB_PERSONAL_ACCESS_TOKEN}" }
    }
  }
}

Tips

  • Never commit tokens. Use ${VAR} references in .mcp.json and set the values in your shell.
  • Give filesystem servers only the folders they need, never your home directory or a drive root.
  • Use read-only database users and fine-grained, read-only GitHub tokens unless the agent has to write.
  • Only add servers you trust: a server sees what you send it and acts with the credentials you give it.
  • Restart the client after editing the config; most read it only at startup.

MCP Config presets (9)

Each one opens the generator with that file filled in for the stack. Change what you need, then copy or download it.

Which file do I need?

Each AI coding tool reads its own file from its own place. Find your tool, put the file where the table says, and check when it actually gets loaded. Every file name opens a generator for that format.

AI instruction files by tool, with location and load timing
Agent rules and tool config
Cursor<rule-name>.mdcGoes in: .cursor/rules/Loaded: Per rule: always, when globs match the files in play, when the agent finds the description relevant, or on @-mention.
Claude CodeSKILL.mdGoes in: .claude/skills/<skill-name>/, or ~/.claude/skills/ for all projectsLoaded: Name and description at startup. The full file only when a task matches or you run /skill-name.
Claude CodeCLAUDE.mdGoes in: Repo root, or ~/.claude/CLAUDE.md for all projectsLoaded: Every session, in full. A CLAUDE.md in a subfolder loads when Claude works there.
Codex, Cursor, Copilot coding agent and othersAGENTS.mdGoes in: Repo root. Nested files cover their subfolder.Loaded: At the start of each task. For Claude Code, add @AGENTS.md to CLAUDE.md.
Claude Code, Claude Desktop, Cursor.mcp.jsonGoes in: Repo root for Claude Code. Claude Desktop uses claude_desktop_config.json; Cursor uses .cursor/mcp.json.Loaded: At startup, so restart after editing. Claude Code asks before using servers from .mcp.json.
Windsurf<rule-name>.mdGoes in: .windsurf/rules/Loaded: Per rule trigger: always on, glob match, model decision, or manual @-mention.
GitHub Copilotcopilot-instructions.mdGoes in: .github/Loaded: With every Copilot Chat, code review and coding agent request in the repo. Not used for inline completions.
ChatGPT / OpenAI APIopenai-custom-instructions.mdGoes in: prompts/, as a copy you versionLoaded: Only when pasted into ChatGPT custom instructions or sent as the system message.
Gemini API / AI Studiogemini-system-instructions.jsonGoes in: prompts/, as a copy you versionLoaded: Only when passed as systemInstruction or pasted into AI Studio.
Ignore files
Cursor.cursorignoreGoes in: Repo rootLoaded: Always. Indexing and AI features skip matching files (best effort: terminal commands can still read them).
Claude Code.claudeignoreGoes in: Repo rootLoaded: Keep it as your pattern list, and mirror secret paths in permissions.deny in .claude/settings.json, the setting Claude Code documents for blocking reads.
Reference docs
Any LLM or crawlerllms.txtGoes in: Repo root, or your site root as /llms.txtLoaded: Only when a tool or person fetches it. Nothing loads it automatically.
Any agentARCHITECTURE.mdGoes in: Repo rootLoaded: When your rules file points to it, or when the agent explores the repo.
Planning docs
Any agentPRD.mdGoes in: Repo rootLoaded: When your rules file tells the agent to read it.
Any agentDESIGN.mdGoes in: Repo rootLoaded: When your rules file tells the agent to read it, usually before UI work.
Any agentTASK.mdGoes in: Repo rootLoaded: At the start and end of a task, if your rules say to read and update it.
Any agentMEMORY.mdGoes in: Repo rootLoaded: At session start, if your rules say so. Agents add lessons as they go.

What a good rule looks like

Agents follow rules they can check. Swap advice for commands, paths and explicit “never” lines.

Give commands, not wishes

CLAUDE.md or AGENTS.md
Vague
## Guidelines
- Write clean code.
- Follow best practices.
- Make sure tests pass.
Specific
## Commands
- Test one file: pnpm vitest run src/lib/date.test.ts
- Typecheck: pnpm tsc --noEmit
- Never run pnpm db:reset. It wipes the shared dev database.

Why it works: The agent can run each line as written, and the "never" rule names the exact command and the reason.

Scope rules to the files they cover

.cursor/rules/components.mdc
Vague
---
alwaysApply: true
---
Use React best practices.
Specific
---
globs: src/components/**/*.tsx
alwaysApply: false
---
- Reuse Button and Input from @/components/ui; never add a UI library.
- One component per file, named export, props typed with an interface.

Why it works: It loads only when a component file is in play, and every line is something the model can check.

Tell a skill when to run

SKILL.md
Vague
---
name: helper
description: Helps with code.
---
Specific
---
name: db-migration
description: Writes and reviews Prisma migrations. Use when schema.prisma changes or the user asks for a migration.
---

Why it works: Claude picks a skill by its description, so say what it does and when to use it.

Copy-ready starters

Complete files from the preset library. Copy one as it is, or open it to change the stack, commands and rules before you download it.

Browse the full preset library

Frequently asked questions

Where does the MCP config file go?

For Claude Code, .mcp.json in the repo root, or claude mcp add for personal servers. Claude Desktop uses claude_desktop_config.json (Settings > Developer > Edit Config). Cursor uses .cursor/mcp.json in the project or ~/.cursor/mcp.json for all projects.

Can I use the same config in VS Code?

Mostly. VS Code reads .vscode/mcp.json, where the top-level key is servers instead of mcpServers. The server entries have the same shape.

How do I keep API tokens out of the file?

Write ${GITHUB_PERSONAL_ACCESS_TOKEN} instead of the token. Claude Code expands environment variables in .mcp.json, so the real value stays in your shell or secret manager.

CLAUDE.md vs AGENTS.md: which do I need?

Claude Code reads CLAUDE.md. AGENTS.md is the shared file that OpenAI Codex, Cursor, GitHub Copilot's coding agent and a growing list of other agents read. If your team uses more than one tool, put the rules in AGENTS.md and add the line @AGENTS.md to CLAUDE.md so Claude Code imports the same file.

Why is Cursor ignoring my rules?

Usually it's the frontmatter. A rule with alwaysApply: false and no globs only loads when the agent decides its description is relevant, or when you @-mention it. Check that the file is in .cursor/rules/, that globs match the files you are editing, and that the description says when the rule applies. Rules don't affect Tab autocomplete at all.

How long should CLAUDE.md be?

Aim for under 200 lines. Claude Code loads the whole file into every session, so each line costs context and competes with the others for attention. Keep build and test commands, the folder layout and hard "never" rules in it. Move long procedures into skills or separate docs that the file points to.

Where do Claude Code skills go?

Each skill is a folder with a SKILL.md inside: .claude/skills/<skill-name>/SKILL.md for one project, or ~/.claude/skills/<skill-name>/SKILL.md for all of your projects. Claude Code keeps only each skill's name and description in context, and loads the full file when a task matches it or when you type /skill-name.

How do I stop AI tools from reading my .env files?

For Cursor, list secrets such as .env*, *.pem and *.key in .cursorignore at the repo root. For Claude Code, add deny rules like Read(./.env) and Read(./.env.*) under permissions.deny in .claude/settings.json, which is the setting Claude Code documents for blocking file reads. Neither replaces keeping secrets out of the repo.

Do AI tools read PRD.md, TASK.md or ARCHITECTURE.md automatically?

No. Agents load their own rules file (CLAUDE.md, AGENTS.md or Cursor rules) and nothing else on their own. Name the other docs in that file, for example "Read PRD.md and TASK.md before you start", and the agent opens them when it needs them. In CLAUDE.md you can also write @PRD.md, but that loads the file into every session.

Can it write rules from my existing code?

Yes. Click Read your code and point it at a GitHub repository or a local folder. Besides the manifest, it reads a sample of your source files and any existing CLAUDE.md, AGENTS.md or Cursor rules, then writes only the conventions most of the code follows, such as test layout, file naming, import alias, error classes and logger, each with how many files back it. The examples in the file quote a real function from your code.

Does AI Skill Studio upload my code?

No. Presets, code reading, editing and ZIP export all run in your browser, and nothing you type or import is sent to DevScratchpad. Reading a local folder happens entirely in your browser. Reading a GitHub repository is the only network call, and your browser sends it straight to GitHub.