loading…
Search for a command to run...
loading…
Enables AI models like Claude to manage local prompt files with CRUD operations, fuzzy search, categorization, templates, version control, and favorites.
Enables AI models like Claude to manage local prompt files with CRUD operations, fuzzy search, categorization, templates, version control, and favorites.
Certified by MCP Review
This project is officially certified by MCP Review.
MCP (Model Context Protocol) Prompt Manager is a server that enables AI models like Claude to access local prompt files. It provides functionality for creating, retrieving, updating, and deleting prompts, allowing efficient management of frequently used prompts.
{{variable}} syntax and advanced conditionalsClone the repository
git clone https://github.com/Tae4an/mcp-prompt-manager.git
cd mcp-prompt-manager
Install dependencies
npm install
Grant execution permissions
chmod +x server.js
docker build -t mcp-prompt-manager:local .
docker run --rm \
-e NODE_ENV=production \
-e LOG_DIR=/var/log/mcp \
-e PROMPTS_DIR=/data/prompts \
-v $(pwd)/prompts:/data/prompts \
-v $(pwd)/logs:/var/log/mcp \
mcp-prompt-manager:local
docker compose up -d --build
prompts)./logs)Install Claude Desktop (if not already installed)
Open Claude Desktop configuration file:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.jsonAdd the following content to the configuration file:
{
"mcpServers": {
"promptManager": {
"command": "node",
"args": ["absolute_path_to_cloned_repository/server.js"]
}
}
}
Example:
{
"mcpServers": {
"promptManager": {
"command": "node",
"args": ["/Users/username/projects/mcp-prompt-manager/server.js"]
}
}
}
Restart Claude Desktop
In Claude Desktop, click the tools icon (🛠️) to access the following MCP tools:
Retrieves a list of all prompts.
Retrieves the content of a specific prompt.
filename - Name of the prompt file to retrieveCreates a new prompt.
filename - Name of the prompt file to create (e.g., my-prompt.txt)content - Prompt contentUpdates the content of an existing prompt.
filename - Name of the prompt file to updatecontent - New prompt contentDeletes a prompt (automatically removes associated metadata).
filename - Name of the prompt file to deleteAdvanced fuzzy search prompts by filename or content with intelligent ranking.
query - Search query stringsearchInContent - (Optional) Boolean to search within prompt content (default: false)limit - (Optional) Maximum number of results to return (default: 10)threshold - (Optional) Minimum similarity threshold (0.0-1.0, default: 0.3)Add tags to a prompt for better organization.
filename - Name of the prompt file to tagtags - Array of tag stringsSet a category for a prompt.
filename - Name of the prompt file to categorizecategory - Category name stringList prompts organized by category.
category - (Optional) Specific category to filter byProcess a prompt template with variable substitution.
filename - Name of the template prompt filevariables - Object with variable names as keys and replacement values as values{{variable}} format in templatesList all variables found in a template prompt.
filename - Name of the template prompt file to analyzeAdd or remove a prompt from favorites.
filename - Name of the prompt fileaction - Either "add" or "remove"List all favorite prompts with detailed information.
List all versions of a specific prompt with timestamps and actions.
filename - Name of the prompt file to get version history forCompare two versions of a prompt and show detailed differences.
filename - Name of the prompt file to comparefromVersion - Source version number to compare fromtoVersion - Target version number to compare toRollback a prompt to a specific previous version.
filename - Name of the prompt file to rollbackversion - Version number to rollback toGet the content of a specific version of a prompt.
filename - Name of the prompt fileversion - Version number to retrieveGet statistics about a prompt's version history including total versions, actions breakdown, and size history.
filename - Name of the prompt file to get statistics forThe built-in template library includes 12 professional templates across 5 categories:
List all available template categories with descriptions and template counts.
List all templates in a specific category.
categoryId - Category ID to list templates fromGet detailed information about a specific template including variables and usage.
templateId - Template ID (format: category.template-name)Search through the template library using fuzzy matching.
query - Search query stringcategory - (Optional) Filter by specific categorytags - (Optional) Array of tags to filter bylimit - (Optional) Maximum number of results (default: 10)Render a template with provided variables and get the processed content.
templateId - Template ID to rendervariables - Object with variable names and valuessanitizeOutput - (Optional) Enable output sanitization (default: true)Validate template syntax and check for potential issues.
templateId - Template ID to validateGet list of most popular templates based on usage patterns.
limit - (Optional) Number of templates to return (default: 5)Get templates related to a specific template based on tags and categories.
templateId - Template ID to find related templates forlimit - (Optional) Number of related templates (default: 3)Get comprehensive statistics about the template library.
Create a new prompt file using a template with variable substitution.
templateId - Template ID to usefilename - Name for the new prompt filevariables - Object with template variablesaddMetadata - (Optional) Add template metadata to file (default: true)Export prompts to JSON format for backup or sharing.
format - (Optional) Export format: "json" (default: json)includeMetadata - (Optional) Include metadata in export (default: true)includeVersionHistory - (Optional) Include version history (default: false)filterByTags - (Optional) Array of tags to filter promptsfilterByCategory - (Optional) Category to filter promptscompress - (Optional) Compress export data (default: false)Import prompts from JSON format with validation and conflict resolution.
importData - Import data object in export formatoverwriteExisting - (Optional) Overwrite existing files (default: false)skipDuplicates - (Optional) Skip duplicate files (default: true)validateChecksums - (Optional) Validate file checksums (default: true)createBackup - (Optional) Create backup before import (default: true)mergeMetadata - (Optional) Merge with existing metadata (default: true)Get import/export system status and capabilities.
Get process/server runtime stats (uptime, memory, policy flags, cache info).
Get current policy/permission flags derived from environment variables.
Read cache statistics for files/metadata/search/templates (size, hit/miss, memory usage).
Get current rate limiter stats for standard/strict/upload presets.
{{#if}}, {{#unless}}, {{#each}} constructsBy default, prompts are stored in the prompts folder in the directory where the server file is located. You can change the path using environment variables:
PROMPTS_DIR=/desired/path node server.js
Or set environment variables in claude_desktop_config.json:
{
"mcpServers": {
"promptManager": {
"command": "node",
"args": ["/absolute/path/mcp-prompt-manager/server.js"],
"env": {
"PROMPTS_DIR": "/desired/path"
}
}
}
}
Creating a new prompt:
create-promptgreeting.txtYou are a friendly and helpful AI assistant. Please respond politely to user questions.Listing prompts:
list-promptsRetrieving prompt content:
get-promptgreeting.txtCreating a template prompt:
create-promptemail-template.txtDear {{name}}, Thank you for your interest in {{product}}. Best regards, {{sender}}Processing a template:
process-templateemail-template.txt{"name": "John", "product": "MCP Server", "sender": "Support Team"}Organizing prompts:
Tool: categorize-prompt
Filename: greeting.txt
Category: customer-service
Tool: tag-prompt
Filename: greeting.txt
Tags: ["polite", "professional", "greeting"]
Searching prompts:
search-promptsassistanttrueManaging favorites:
favorite-promptgreeting.txtaddViewing version history:
list-prompt-versionsgreeting.txtComparing versions:
compare-prompt-versionsgreeting.txt13Rolling back to a previous version:
rollback-promptgreeting.txt2Getting version statistics:
get-prompt-version-statsgreeting.txtBrowsing template categories:
list-template-categoriesUsing a template:
render-templatecoding.code-review{"code": "function hello() { console.log('Hello'); }", "language": "javascript"}Creating prompt from template:
create-prompt-from-templatewriting.meeting-minutesweekly-standup.txt{"meeting_title": "Weekly Standup", "date": "2024-08-04", "attendees": "Team Alpha"}Searching templates:
search-templatescode reviewcodingExporting prompts for backup:
export-promptstruefalse["important", "production"]Importing prompts from backup:
import-prompts{exported data object}truefalseChecking import/export status:
get-import-export-statussearch-promptscustmer servce (intentional typos)true0.615claude_desktop_config.json file is configured correctlyThis project is licensed under the MIT License - see the LICENSE file for details.
Contributions are welcome! Please feel free to submit a Pull Request.
If you encounter any issues or have questions, please open an issue on the GitHub repository.
Выполни в терминале:
claude mcp add mcp-prompt-manager -- npx Безопасность
Низкий рискАвтоматическая эвристика по публичным данным — не гарантия безопасности.