create-mcp-skill

Guide for creating new skills that use MCP (Model Context Protocol) servers with optimized performance patterns.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "create-mcp-skill" with this command: npx skills add cygnusfear/agent-skills/cygnusfear-agent-skills-create-mcp-skill

Create MCP Skill

Guide for creating new skills that use MCP (Model Context Protocol) servers with optimized performance patterns.

📚 Reference: See MCP CLI Guide (this document) for detailed patterns and best practices.

Overview

This skill helps you create a new skill that uses an MCP server by:

  • Setting up the skill directory structure

  • Discovering available MCP tools

  • Creating optimized command patterns

  • Applying performance best practices

Prerequisites

  • MCP CLI installed (brew install mcp or go install github.com/f/mcptools/cmd/mcptools@latest )

  • Target MCP server available (npm package, binary, etc.)

Process

  1. Discover Available Tools

First, explore what the MCP server offers:

List all tools

mcp tools SERVER_COMMAND

Get detailed JSON schema

mcp tools SERVER_COMMAND --format json

Interactive exploration

mcp shell SERVER_COMMAND

Type /h for help

Example:

Chrome DevTools

mcp tools bunx -y chrome-devtools-mcp@latest

Filesystem server

mcp tools npx @modelcontextprotocol/server-filesystem ~

  1. Test Individual Tools

Test each tool before documenting:

Template

echo -e 'TOOL_NAME {"param":"value"}\nexit' | timeout 30 mcp shell SERVER_COMMAND

Example

echo -e 'navigate_page {"url":"https://example.com"}\nexit' | timeout 30 mcp shell bunx -y chrome-devtools-mcp@latest -- --isolated

Check for:

  • Required vs optional parameters

  • Empty parameter schema issues

  • Response format

  • Execution time

  1. Create Skill Structure

skills/SKILL_NAME/ ├── SKILL.md # Main skill documentation └── .examples/ # (Optional) Example outputs

  1. Write Skill Documentation

Template for SKILL.md:


name: SKILL_NAME description: Brief description of what this skill does and when to use it. allowed-tools: Bash, Read, Write

Skill Name

Brief overview.

📚 See also: MCP CLI Guide (this document)

Setup

```bash

Installation instructions for the MCP server

```

Quick Start (FASTEST)

Common Task 1

```bash pkill -9 -f "server-pattern" 2>/dev/null; sleep 1; \ echo -e 'command1 {"param":"value"}\ncommand2 {"param":"value"}\nexit' | \ timeout 30 mcp shell SERVER_COMMAND [FLAGS] ```

Common Task 2

```bash

Another optimized pattern

```

⚡ Pattern: cleanup; sleep; echo commands | timeout shell

Key Tools

  • tool1 - Description (required params: param1, param2)
  • tool2 - Description (optional params: param1)

Important Notes

  • Server-specific quirks
  • Performance considerations
  • Common gotchas

Troubleshooting

Problem: [Common issue]

```bash

Solution

```

Best Practices Checklist

When creating an MCP-based skill, ensure:

✅ Performance

  • Quick Start section at the top with copy-paste ready commands

  • All examples use the optimized pattern: cleanup; sleep; echo | timeout shell

  • Shell mode recommended over individual calls

  • Cleanup commands included (pkill pattern)

  • Timeout wrapper on all shell commands (30s default)

✅ Parameter Handling

  • Parameters passed directly (no {"arguments":{}} wrapper)

  • Tools with optional-only params documented with workaround

  • Empty parameter bug addressed where applicable

  • Example commands show correct parameter format

✅ Documentation

  • Reference to MCP CLI guide included

  • Server installation instructions provided

  • Quick start patterns for common tasks

  • Key tools listed with parameter requirements

  • Troubleshooting section for common issues

  • Performance tips highlighted

✅ Command Structure

  • Correct argument order: mcp call TOOL SERVER --params '{}'

  • Server flags properly positioned with -- separator

  • Exit command included in shell mode examples

  • One-liner format (no backslash continuations if possible)

Example: Chrome DevTools Skill

See skills/chrome-devtools/SKILL.md for a complete example that follows all best practices.

Key features:

  • Quick start patterns at the top

  • 6-9x performance improvement documented

  • Optimized one-liners for common tasks

  • Comprehensive troubleshooting guide

  • References MCP CLI guide

Template Generator

Generate a basic skill structure:

Set variables

SKILL_NAME="my-mcp-skill" SERVER_COMMAND="bunx my-mcp-server@latest" SERVER_PATTERN="my-mcp-server"

Create directory

mkdir -p "skills/$SKILL_NAME"

Create SKILL.md with template

cat > "skills/$SKILL_NAME/SKILL.md" << 'EOF'

name: SKILL_NAME description: TODO - Add description allowed-tools: Bash, Read, Write

Skill Name

TODO - Add overview

📚 See also: MCP CLI Guide (this document)

Setup

# TODO - Add installation

Quick Start (FASTEST)

Common Task

pkill -9 -f "SERVER_PATTERN" 2>/dev/null; sleep 1; \
echo -e 'COMMAND\nexit' | \
timeout 30 mcp shell SERVER_COMMAND

Key Tools

- tool1 - TODO

Important Notes

- TODO

Troubleshooting

Problem: Issue

# Solution

EOF

Discover tools

mcp tools $SERVER_COMMAND

Test interactively

mcp shell $SERVER_COMMAND

## Common Patterns

### Pattern 1: Single Command Check

```bash
pkill -9 -f "PATTERN" 2>/dev/null; sleep 1; \
echo -e 'TOOL {"param":"value"}\nexit' | \
timeout 30 mcp shell SERVER -- --isolated

Pattern 2: Multi-Command Debug

pkill -9 -f "PATTERN" 2>/dev/null; sleep 1; \
echo -e 'CMD1 {"p":"v"}\nCMD2 {"p":"v"}\nCMD3 {"p":"v"}\nexit' | \
timeout 30 mcp shell SERVER -- --isolated

Pattern 3: With Custom Flags

pkill -9 -f "PATTERN" 2>/dev/null; sleep 1; \
echo -e 'COMMAND\nexit' | \
timeout 30 mcp shell SERVER -- --flag1 --flag2=value

Testing Your Skill

- 
Test cleanup pattern works:

pkill -9 -f "PATTERN" 2>/dev/null; sleep 1; echo "Cleanup OK"

- 
Test basic command:

echo -e 'list_tools\nexit' | timeout 10 mcp shell SERVER

- 
Test multi-command:

echo -e 'cmd1\ncmd2\ncmd3\nexit' | timeout 30 mcp shell SERVER

- 
Test with cleanup:

pkill -9 -f "PATTERN" 2>/dev/null; sleep 1; \
echo -e 'cmd1\ncmd2\nexit' | timeout 30 mcp shell SERVER

- 
Verify no hanging:

- Commands should complete within timeout

- Exit command should terminate session cleanly

Optimization Checklist

Compare your skill against the optimized pattern:

Aspect
Before
After

Commands per task
5-10
1

Manual cleanup
Yes
Automated

Failures from locks
Common
Zero

Execution time
60-90s
5-10s

Success rate
60-70%
100%

Resources

- MCP CLI Guide (this document) - Complete MCP CLI reference

- Chrome DevTools Skill - Reference implementation

- MCP Documentation - Official MCP docs

- mcptools GitHub - CLI tool source

Quick Reference

Every MCP skill should have:

- Quick Start section - Copy-paste ready commands

- Optimized pattern - cleanup; sleep; echo | timeout shell

- Performance note - Document speed improvement

- MCP CLI guide reference - MCP CLI patterns are documented in this skill

- Troubleshooting - Common issues and solutions

Every command should:

- Include cleanup (pkill -9 -f "PATTERN"
)

- Wait after cleanup (sleep 1
)

- Use shell mode for 2+ commands

- Have timeout wrapper

- End with exit

- Use correct parameter format (no "arguments" wrapper)

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

file-name-wizard

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

video-explorer

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

review-changes

No summary provided by upstream source.

Repository SourceNeeds Review