Tamilarasan555/mcp-prompt-explorer
If you are the rightful owner of mcp-prompt-explorer and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
The MCP Prompt Explorer Server is a comprehensive Model Context Protocol server designed to demonstrate the prompt feature with a focus on development tasks.
MCP Prompt Explorer Server 🚀
A comprehensive Model Context Protocol (MCP) server that demonstrates the prompt feature with 10 different development-focused prompts. This server is perfect for exploring how MCP prompts work and can be integrated into LLM applications like Claude Desktop.
📋 What are MCP Prompts?
MCP prompts are pre-configured, reusable templates that LLM applications can use. They:
- Standardize common tasks: Create consistent workflows
- Accept arguments: Dynamic prompts that adapt to your needs
- Provide structure: Well-formatted prompts for better results
- Save time: No need to craft prompts from scratch
✨ Features
This server includes 10 powerful prompts:
- 🔍 code-review - Comprehensive code review with focus areas
- 📚 explain-concept - Technical concept explanation with examples
- 🐛 debug-assistant - Debug code with error analysis
- 📖 api-documentation - Generate API documentation
- ♻️ refactor-suggestion - Code refactoring recommendations
- 🧪 test-generator - Generate unit tests
- 🏗️ architecture-review - System architecture analysis
- 💬 git-commit-message - Generate commit messages
- ⚡ sql-optimizer - SQL query optimization
- 🎓 learning-path - Personalized learning paths
🚀 Quick Start
Prerequisites
- Python 3.10 or higher
- pip or uv package manager
Installation
Option 1: Using UV (Recommended)
# Install UV if you haven't already
pip install uv
# Create and activate virtual environment
uv venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# Install dependencies
uv pip install mcp
Option 2: Using pip
# Create virtual environment
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# Install dependencies
pip install mcp
Running the Server
uv run server.py
🔧 Integration with Claude Desktop
To use this server with Claude Desktop, add it to your configuration:
macOS/Linux Configuration
Edit ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"prompt-explorer": {
"command": "python",
"args": ["/absolute/path/to/mcp_prompt_explorer_server.py"],
"env": {}
}
}
}
Windows Configuration
Edit %APPDATA%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"prompt-explorer": {
"command": "python",
"args": ["C:\\absolute\\path\\to\\mcp_prompt_explorer_server.py"],
"env": {}
}
}
}
Important: Replace /absolute/path/to/ with the actual path where you saved the server file.
Using with UV (Alternative)
If using UV, you can configure it like this:
{
"mcpServers": {
"prompt-explorer": {
"command": "uv",
"args": [
"run",
"--with",
"mcp",
"python",
"/absolute/path/to/mcp_prompt_explorer_server.py"
]
}
}
}
📖 Usage Examples
Once integrated with Claude Desktop, you can use prompts like this:
Example 1: Code Review
Use the code-review prompt with this Python code:
def calculate(a, b):
return a + b
The prompt will automatically format a comprehensive code review request.
Example 2: Explain a Concept
Use the explain-concept prompt to explain "async/await in Python"
for a beginner audience with code examples
Example 3: Debug Assistance
Use the debug-assistant prompt with this error:
"TypeError: unsupported operand type(s) for +: 'int' and 'str'"
And this code:
x = 5
y = "10"
result = x + y
Example 4: Generate Tests
Use the test-generator prompt with comprehensive coverage
for this function:
def factorial(n):
if n <= 1:
return 1
return n * factorial(n - 1)
🎯 Understanding Prompt Arguments
Each prompt has specific arguments:
Required Arguments
These must be provided for the prompt to work.
Optional Arguments
These customize the prompt behavior but have defaults.
Example from the code-review prompt:
code(required) - The code to reviewlanguage(optional) - Programming languagefocus(optional) - Specific focus area
🔍 Exploring the Code
Key Components
-
list_prompts()- Returns all available prompts- Called when client queries available prompts
- Returns prompt metadata including arguments
-
get_prompt()- Returns a specific prompt with arguments filled in- Takes prompt name and argument values
- Returns formatted prompt message
-
Prompt Structure:
Prompt( name="prompt-name", description="What this prompt does", arguments=[ PromptArgument( name="arg_name", description="What this argument is for", required=True/False, ), ], )
🛠️ Customizing Prompts
Want to add your own prompts? Here's how:
-
Add to
list_prompts():Prompt( name="my-custom-prompt", description="My awesome prompt", arguments=[ PromptArgument( name="input", description="Input data", required=True, ), ], ) -
Add handler in
get_prompt():elif name == "my-custom-prompt": input_data = arguments.get("input", "") return GetPromptResult( description="Custom prompt result", messages=[ PromptMessage( role="user", content=TextContent( type="text", text=f"Process this: {input_data}" ), ), ], )
📚 Learning Resources
🎨 Prompt Best Practices
Based on this server's implementation:
- Clear Structure: Use numbered lists and headers
- Specific Instructions: Be explicit about what you want
- Examples: Provide examples when helpful
- Formatting: Use XML tags or markdown for clarity
- Flexibility: Support optional arguments with sensible defaults
🐛 Troubleshooting
Server Not Showing Up in Claude Desktop
- Check configuration file syntax (valid JSON)
- Verify absolute path to server file
- Ensure Python/UV is in PATH
- Restart Claude Desktop after configuration changes
- Check Claude Desktop logs
Import Errors
# Make sure mcp is installed
pip install mcp
# or
uv add mcp
Python Version Issues
Ensure you're using Python 3.10+:
python --version
💡 Tips for Using Prompts
- Start Simple: Try prompts with just required arguments
- Add Details: Use optional arguments to refine results
- Iterate: Adjust arguments based on results
- Combine: Use multiple prompts for complex tasks
🔄 What's Next?
Try these exercises to learn more about MCP prompts:
- Modify an existing prompt template
- Add a new prompt for your specific use case
- Combine prompts in workflows
- Create argument validation logic
- Add multi-turn conversation prompts
📝 License
This is a demonstration project for learning about MCP prompts. Feel free to use, modify, and extend it!
🤝 Contributing
This is a learning project! Feel free to:
- Add new prompts
- Improve existing templates
- Add features (resources, tools)
- Share your customizations
Happy Prompting! 🎉
Need help? The code is heavily commented to help you understand how everything works.