MCP: the USB-C of AI
Model Context Protocol (MCP) is the plug standard for AI. Anthropic proposed it in late 2024; by 2026 every major AI app supports it. If you learn one interoperability layer, learn this one.
What MCP actually is
MCP is an open protocol for connecting AI applications ("clients") to data sources and tools ("servers"). Think of it like USB-C: any compliant server plugs into any compliant client.
What an MCP server exposes
- Tools — actions the client can call (like function calling, but standardized).
- Resources — data the client can read (files, database rows, docs).
- Prompts — reusable prompt templates that any client can list and invoke.
MCP servers worth knowing about
| Server | What it does | For you |
|---|---|---|
| Filesystem | Read/write local files | Let Claude Desktop safely edit files in a chosen folder |
| GitHub | Repos, issues, PRs, commits | Already available in Computer as a connector; also as MCP |
| Figma Dev Mode MCP | Read Figma frames, components, tokens | Directly relevant — pipe your Figma into any AI IDE |
| Cloudflare | Workers, KV, R2, Vectorize | Deploy from Claude Desktop / Computer |
| Playwright | Real browser automation | Automate RFP portal scraping |
| Notion / Slack / Linear | Standard SaaS integrations | Your PM stack, one install |
Install your first MCP server (2 minutes)
In Claude Desktop, edit ~/Library/Application Support/Claude/claude_desktop_config.json:
JSON{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"/Users/you/business-docs"
]
},
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_yourtoken" }
}
}
}
Restart Claude Desktop. You now have file-system and GitHub tools inside every conversation.
Writing your own MCP server (skeleton)
Python · MCP SDKfrom mcp.server.fastmcp import FastMCP
mcp = FastMCP("my-business-tools")
@mcp.tool()
def estimate_project(scope: str, pages: int) -> dict:
"""Estimate cost + timeline for a web project.
Args:
scope: high-level description of the work
pages: number of unique page templates
Returns: dict with low_usd, high_usd, weeks
"""
base = 4000 + pages * 1200
return {
"low_usd": base,
"high_usd": int(base * 1.6),
"weeks": max(3, pages // 2),
}
if __name__ == "__main__":
mcp.run()
Add it to claude_desktop_config.json and Claude can now call estimate_project in any conversation. Same server plugs into Cursor, Windsurf, or any MCP-aware client with zero changes.
Your custom internal tools — cost estimator, quote generator, requirement extractor, inventory checker — become portable. Build once, use in every AI app you touch. No vendor lock-in.
Install and use one MCP server today
- Install Claude Desktop if you don't have it.
- Add the
filesystemserver pointing at a scratch folder. - Ask Claude: "Look at every .pdf in that folder and tell me which look like RFPs."
- Watch it use the
list_directoryandread_filetools live.