3.6 KiB
3.6 KiB
MCP Skills Inventory & Updates Needed
What We've Built
- 30 MCP servers (TypeScript) across 10 categories
- 11 GHL MCP Apps with structuredContent UI
- ~240 total tools
- Full deployment configs (Docker, Railway, Vercel)
- Marketing assets (diagrams, comparisons, landing pages)
Skills We Have
- mcp-apps-official — Building MCP Apps with UI (located in workspace)
- mcporter — Using/calling MCP servers as a client
- skill-creator — Creating AgentSkills
Skills We NEED (gaps identified)
1. MCP Server Development (NEW)
Why: We have no skill for building TypeScript MCP servers What it should cover:
- Project structure (src/, dist/, package.json, tsconfig.json)
- Tool definitions with proper JSON schema
- Server.ts setup with MCP SDK
- Error handling patterns
- Resource definitions
- Prompts (if applicable)
- Testing approach
- Build/compile process
- Common pitfalls we hit 30 times
2. MCP Server + App Integration (NEW)
Why: The workflow of building server tools + apps together isn't documented What it should cover:
- When to use apps vs just tools
- Passing tool results to apps
- structuredContent patterns we discovered
- App-tool coordination
- UI rendering best practices
3. MCP Deployment & Distribution (NEW)
Why: We built Docker, Railway, Vercel configs 30 times What it should cover:
- Docker containerization
- Railway.json patterns
- Environment variable management
- README templates
- GitHub repo structure
- npm publishing (if applicable)
Skills to UPDATE
mcporter skill
Current state: Focuses on calling MCP servers What to add:
- Examples from our 30 servers
- Common tool patterns
- Better error handling examples
mcp-apps-official skill
Current state: Good foundation What to add:
- Our 11 app examples as reference
- structuredContent patterns we used
- Common UI components (grids, cards, timelines)
- Best practices we discovered
Patterns We Learned (should go in new skills)
TypeScript MCP Server Patterns
- Tool naming: verb_noun format (get_contacts, create_campaign)
- Schema validation: Always use Zod for input validation
- Error wrapping: Try-catch with descriptive error messages
- Response format: Consistent { success, data, error } pattern
- Auth handling: Environment variables, never hardcode
- Rate limiting: Document in tool descriptions
- Pagination: When to use it, how to expose it
- Type safety: Leverage TypeScript fully, avoid
any
MCP App UI Patterns
- Grid layouts: Contact grids, pipeline boards
- Card components: Opportunity cards, invoice previews
- Timeline views: Activity feeds, contact history
- Stats dashboards: Campaign performance, agent metrics
- Forms: Quick actions embedded in UI
- Structured content: HTML-based, renders in Claude Desktop
Integration Patterns
- Multi-app servers: When one server should have multiple apps
- Tool → App flow: Call tool, render result in app UI
- State management: Apps are stateless, tools handle data
- Error states: How to show errors in app UI
Deployment Patterns
- Docker: Multi-stage builds, environment injection
- Railway: railway.json with start command + env template
- Vercel: For web-based MCP servers (if applicable)
- GitHub: README with setup, .env.example, gitignore
Action Plan
- Create
mcp-server-developmentskill (comprehensive) - Create
mcp-apps-integrationskill (server + apps workflow) - Create
mcp-deploymentskill (Docker/Railway/GitHub) - Update
mcp-apps-officialwith our 11 app examples - Update
mcporterwith our server examples