Skip to content

Real-World MCP Patterns

Now that you understand MCP servers, let’s look at patterns that make them truly useful in real workflows.

Combine multiple MCP servers in a single workflow:

You: "Check our Notion product spec for the new user dashboard,
then build it and deploy to Cloudflare Pages"
Claude:
1. [Notion MCP] Searches for and reads the product spec
2. [File tools] Creates the components based on the spec
3. [Bash] Runs the build
4. [Cloudflare MCP] Deploys to Pages

This is powerful because Claude has context from the spec while building.

Use a database MCP server for data-driven development:

You: "Query the D1 database for the top 10 users by activity,
then create a report page showing their stats"
Claude:
1. [Cloudflare MCP] Queries D1 for user data
2. [File tools] Creates a report component with real data
3. Returns the result

Keep services in sync:

You: "For each open GitHub issue labeled 'bug',
create a corresponding page in our Notion bug tracker"
Claude:
1. [Bash/gh CLI] Fetches open bug issues
2. [Notion MCP] Checks for existing pages
3. [Notion MCP] Creates new pages for missing bugs

Use MCP to pull context that improves code generation:

You: "Read our API documentation from Notion and generate
TypeScript types for all the endpoints"
Claude:
1. [Notion MCP] Reads the API docs
2. [File tools] Generates accurate TypeScript types

The types will match your actual API because Claude read the real docs, not just guessed.

Use MCP for operational visibility:

You: "List all our Cloudflare Workers, check which ones
haven't been updated in 30 days, and create a
maintenance report"
Claude:
1. [Cloudflare MCP] Lists all Workers with metadata
2. [Analysis] Identifies stale Workers
3. [File tools] Creates a markdown report
4. [Notion MCP] Optionally posts to your team workspace
  • Only give MCP servers the permissions they need
  • Use read-only API keys when Claude only needs to read data
  • Separate read and write servers if needed
  • Never hardcode API keys in MCP server config files that get committed
  • Use environment variables or a secrets manager
  • Keep .claude/settings.json in .gitignore if it contains keys
  • Claude will show you MCP tool calls before executing them
  • Review operations that create, modify, or delete external data
  • Be especially careful with write operations on production services

You can configure as many MCP servers as you need:

{
"mcpServers": {
"cloudflare": { ... },
"notion": { ... },
"my-wordpress": { ... },
"internal-api": { ... }
}
}

Claude sees all tools from all servers and can combine them fluidly.

  1. Configure at least two MCP servers (e.g., Cloudflare + Notion)
  2. Ask Claude to perform a task that requires both
  3. Observe how Claude coordinates between them
  4. Think about what internal tools at your organization could benefit from an MCP server