Claude Surfaces & Features β Developer Navigation Guide
Claude exists across multiple surfaces, each with distinct capabilities, scopes, and target audiences. This guide maps the landscape for developers who need to know where to work and why it matters.
1. The Three Primary Surfacesβ
| Surface | Interface | Who it's for |
|---|---|---|
| Claude.ai Chat | Browser / web app | Everyone β quick questions, writing, analysis |
| Claude.ai Projects | Browser / web app | Organized, persistent, team-shared workspaces |
| Claude Code | Terminal / IDE extensions | Developers β coding, agentic tasks, automation |
These are not modes of the same app. They are separate products with different capabilities and different persistent state.
2. Chat vs. Projects: What's the Difference?β
Chat (claude.ai regular conversations)β
A regular chat is stateless across sessions. Claude has no memory of your previous chats. Each conversation starts fresh. Good for:
- One-off questions
- Quick drafts or translations
- Exploring ideas without wanting prior context to interfere
Projects (claude.ai β "New Project")β
A Project is a persistent workspace with:
- System instructions β A prompt that applies to every conversation in this project
- Uploaded knowledge β PDFs, code files, docs that Claude can reference
- Conversation history β All conversations inside a project share context over time
- Scoped connectors β MCP connectors that are active only within this project
Think of a project as a "pre-configured Claude instance" for a recurring domain (e.g., a "BSH Compliance Research" project with our regulatory docs uploaded, or a "Saurus Docs" project with the repo context).
On Teams and Enterprise plans, projects can be shared across the team. Every team member gets the same system instructions and knowledge base β consistent Claude behavior without copy-pasting prompts.
When to use whichβ
| Scenario | Use |
|---|---|
| One-off draft, translation, brainstorm | Chat |
| Recurring domain (compliance, support, product research) | Project |
| Coding tasks, refactoring, CI automation | Claude Code |
| Team needs consistent AI persona/knowledge base | Shared Project |
3. Claude Code: Routines vs. Scheduleβ
Claude Code adds two distinct scheduling mechanisms. They sound similar but operate differently.
Routines (Hooks)β
Hooks are shell commands wired to Claude Code events β they fire automatically when something happens in a Claude Code session:
// .claude/settings.json
{
"hooks": {
"PostToolUse": [
{
"matcher": "Bash",
"hooks": [{ "type": "command", "command": "npx eslint --fix $FILE" }]
}
]
}
}
Hooks are event-driven, local, and synchronous with Claude's actions. They are not scheduled by time β they fire when Claude does something.
Schedule (Scheduled Remote Agents)β
/schedule creates cron-based remote agents that run on Anthropic's infrastructure on a time interval, independently of whether you have a Claude Code session open:
/schedule every day at 09:00 β check for new GitHub issues and summarize them in Slack
- Runs in the cloud, not on your machine
- Persists across restarts
- No terminal session required
- Managed via
/schedule list//schedule delete
Quick comparisonβ
| Hooks (Routines) | Schedule | |
|---|---|---|
| Trigger | Claude Code event | Time (cron) |
| Runs on | Your machine | Anthropic cloud |
| Session required | Yes | No |
| Use case | Lint on save, format on edit | Daily summaries, nightly checks |
4. Connectors: Why They Appear in Three Placesβ
You will find "connectors" in three distinct locations in the Claude.ai UI. This is intentional β each scope does something different.
4.1 Global Connectors (Settings β Connectors)β
Available in every conversation and every project across your account. Use this for tools you always want β e.g., a search connector, a calendar connector.
4.2 Project-Scoped Connectors (Project β Settings β Connectors)β
Available only inside a specific project. Useful when a connector is only relevant in one domain (e.g., a Jira connector active only in your "Sprint Planning" project, not in your "Customer Emails" project).
4.3 Plugins (within a conversation)β
"Plugins" is Anthropic's branding for curated first-party or verified connectors that appear in the conversation toolbar. These are the same MCP-based connectors under the hood β they are just surfaced differently (rendered UI, one-click activation). Examples: Figma, Canva, Asana.
4.4 The MCP Connector Developer Guideβ
The MCP Connector Guide is for building your own connector β writing the server code, deploying it, and registering it as a custom connector in any of the scopes above.
Mental modelβ
Plugins β curated first-party, rendered UI, in-chat toolbar
β same MCP protocol underneath
Global Connectors β your registered MCP servers, available everywhere
Project Connectors β same, but scoped to one project
Custom Connector β you built the MCP server (see the Dev Guide)
5. As a Developer: Claude Desktop vs. Claude Codeβ
This is the most important question for daily workflow.
Claude Desktop (the native GUI app)β
Claude Desktop is a native Mac/Windows application that wraps the claude.ai chat experience. It adds:
- Local MCP server support via
claude_desktop_config.json - Persistent conversations (same as claude.ai Projects)
- Works offline for the UI (but model calls still need internet)
Target audience: Non-developers who want local MCP tools (Notion, Slack, Calendar) without touching a terminal.
Limitations for developers:
- No codebase awareness β it does not know what's in your project
- No git integration
- No hooks, no routines, no
/slash commands(beyond built-ins) - Cannot run tests, linters, or build commands
- MCP config is per-machine, not per-project
- No IDE integration
Claude Code (Terminal / IDE)β
Claude Code is a developer CLI designed to operate inside your project's context. It understands:
- Your entire codebase (reads files, navigates the tree)
- Git state (current branch, diff, log)
- Running processes (dev servers, test runners)
- Your terminal environment
Developer-specific features:
| Feature | Claude Code | Claude Desktop |
|---|---|---|
| Codebase reading | β Full tree | β |
| Git awareness | β | β |
| Run shell commands | β | β |
| Hooks / event automation | β | β |
/schedule remote agents | β | β |
| MCP tools (local) | β
claude mcp add | β config file |
| MCP tools (remote/HTTP) | β | Limited |
| IDE integration | β VS Code, JetBrains | β |
| Project-scoped config | β
.claude/settings.json | β |
| Custom slash commands | β
SKILL.md | β |
| CLAUDE.md instructions | β | β |
Claude Desktop is not a developer tool. If your work involves code, a terminal, or a project directory, Claude Desktop cannot help you there. Use Claude Code in the terminal or via the VS Code / JetBrains extension instead.
When Claude Desktop is still useful for developersβ
- Non-code domains in a GUI context: Research sessions, writing, document review β where you want a polished GUI without a terminal.
- Local MCP testing (quick): Verifying a locally built MCP server works before deploying β faster to wire up in
claude_desktop_config.jsonfor a smoke test than full Claude Code MCP setup. - Non-technical colleagues: Handing off a configured Desktop setup to a PM or designer who needs local tools.
The recommended developer setupβ
Daily coding work β Claude Code in terminal / IDE extension
Project automation β Claude Code + Hooks + /schedule
Quick questions β claude.ai in browser (or claude.ai Projects for your domain)
Local MCP smoke test β Claude Desktop (then switch to Claude Code for real use)
6. MCP Scope Matrixβ
Here's the full picture of where MCP servers can be registered and what they can reach:
| MCP Scope | Registered in | Available in | Per-project config |
|---|---|---|---|
| Claude Code β user scope | claude mcp add -s user | All Claude Code sessions | β (global) |
| Claude Code β project scope | claude mcp add -s project | This project only | β
.mcp.json |
| Claude.ai β global connector | Settings β Connectors | All chats + projects | β |
| Claude.ai β project connector | Project β Settings β Connectors | This project only | β |
| Claude Desktop | claude_desktop_config.json | Desktop app only | β (machine-wide) |
7. Quick Decision Treeβ
I want to...
β
βββ Chat with Claude quickly, no setup
β βββ β claude.ai Chat
β
βββ Give Claude persistent context for a recurring domain
β βββ β claude.ai Project (+ upload docs, set instructions)
β
βββ Share a Claude workspace with my team
β βββ β claude.ai Shared Project (Teams/Enterprise plan)
β
βββ Work on code, run commands, understand my repo
β βββ β Claude Code (terminal or IDE extension)
β
βββ Automate a recurring task on a schedule
β βββ β Claude Code + /schedule
β
βββ Auto-trigger actions when Claude writes code
β βββ β Claude Code + Hooks
β
βββ Build a custom MCP connector
β βββ β See MCP Connector Dev Guide, deploy as custom connector
β
βββ Just want a GUI, no terminal, with local MCP tools
βββ β Claude Desktop (note: not for active dev work)
All AI-generated content is a draft and requires human review before external use.