welcome-text-generator
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@welcome-text-generatorGenerate a welcome text for Sarah, new developer with React skills."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Welcome Text Generator MCP Server
Ein Model Context Protocol (MCP) Server zur automatischen Generierung professioneller Willkommenstexte für neue Mitarbeiter. Extrahiert strukturierte Daten aus Freitext-Informationen und erstellt modulare, anpassbare Onboarding-Texte.
Features
📝 Text-Analyse: Verarbeitet Freitext-Informationen über Mitarbeiter 🎯 Modulares Template-System: 5 flexible Module mit verschiedenen Varianten 💾 Datenspeicherung: Speichert extrahierte Daten zur späteren Verwendung 🔄 Übersichtsverwaltung: Listet alle gespeicherten Mitarbeiterdaten auf
Related MCP server: HRizzle-HR-Assist
Installation
Voraussetzungen
Node.js (v18 oder höher)
Claude Desktop App
Schritt 1: Installation via NPM
npm install -g welcome-text-generator-mcpOder für lokale Entwicklung:
git clone https://github.com/goodfel10w/WelcomeTextGenerator.git
cd WelcomeTextGenerator
npm install
npm run buildSchritt 2: Claude Desktop Konfiguration
Öffne die Claude Desktop Konfigurationsdatei:
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json
Füge den MCP Server hinzu:
{
"mcpServers": {
"welcome-text-generator": {
"command": "node",
"args": [
"C:\\Pfad\\zum\\Projekt\\dist\\index.js"
],
"env": {}
}
}
}Bei globaler Installation via NPM:
{
"mcpServers": {
"welcome-text-generator": {
"command": "npx",
"args": ["welcome-text-generator-mcp"],
"env": {}
}
}
}Schritt 3: Claude Desktop neu starten
Starte die Claude Desktop App neu, damit der MCP Server geladen wird.
Verfügbare Tools
1. extract_from_text
Extrahiert strukturierte Daten aus Freitext.
Parameter:
text(string): Freitext mit Informationen über den Mitarbeiter
Beispiel:
{
"text": "Max Mustermann - Senior Developer mit 5 Jahren Erfahrung. Skills: JavaScript, TypeScript, React..."
}2. generate_modular_welcome_text
Generiert einen modularen Willkommenstext nach dem Template-System.
Parameter:
data(object): Extrahierte Mitarbeiterdatenname(string, required)position(string, optional)previousCompany(string, optional)skills(array, required)experience(string, optional)achievements(array, required)interests(array, required)
moduleOptions(object, optional):includeCompetencies(boolean, default: true): Modul 2 einbindenincludeFunFact(boolean, default: false): Modul 3 einbindenincludeExperience(boolean, default: true): Modul 4 einbindenintroductionVariant(string, default: "variant1"): "variant1", "variant2" oder "variant3"closingVariant(string, default: "variant1"): "variant1", "variant2" oder "variant3"
3. list_extracted_data
Listet alle gespeicherten Mitarbeiterdaten auf.
Keine Parameter erforderlich
Modul-System
Der generierte Text besteht aus 5 Modulen:
Modul 1: Begrüßung & Einleitung (Pflicht)
3 Varianten verfügbar:
Variant 1: "Welcome to [NAME]! Mit einem frischen Blick..."
Variant 2: "Wir freuen uns riesig, [NAME] bei uns begrüßen zu dürfen!..."
Variant 3: "Ein herzliches Willkommen an [NAME]!..."
Modul 2: Kompetenzen & Stärken (Optional)
Beschreibt die Fachkenntnisse und Leidenschaft des Mitarbeiters.
Modul 3: Fun Fact (Optional)
Persönliche, interessante Information über den Mitarbeiter.
Modul 4: Beruflicher Werdegang (Optional)
Informationen zur bisherigen Karriere und Erfolgen.
Modul 5: Abschluss & Willkommensgruß (Pflicht)
3 Varianten verfügbar:
Variant 1: "Herzlich willkommen im Team, [NAME]!..."
Variant 2: "Wir freuen uns sehr, dich an Bord zu haben, [NAME]!..."
Variant 3: "Schön, dass du jetzt Teil unseres Teams bist, [NAME]!..."
Verwendungsbeispiel
Im Claude Chat:
Ich: Hier sind die Informationen über unseren neuen Mitarbeiter:
Max Mustermann - Senior Developer mit 5 Jahren Erfahrung in JavaScript, TypeScript und React.
Hat zuvor bei TechCorp gearbeitet und mehrere erfolgreiche Projekte geleitet.
Begeisterter Marathonläufer.
Claude: Ich extrahiere die Daten aus dem Text...
[verwendet extract_from_text Tool]
Ich: Erstelle einen Willkommenstext mit Variante 2 für die Begrüßung
und füge einen Fun Fact hinzu.
Claude: [verwendet generate_modular_welcome_text mit entsprechenden Optionen]
Ausgabe:
Wir freuen uns riesig, Max Mustermann bei uns begrüßen zu dürfen!
Ab sofort verstärkt er unser Team im Bereich Development als Senior
Developer und bringt dabei wertvolle Erfahrung und neue Impulse mit.
Max bringt nicht nur umfangreiche Kenntnisse in JavaScript und
TypeScript mit, sondern auch jede Menge Energie und Leidenschaft
für moderne Webentwicklung.
Fun Fact über Max: Wusstest du, dass er ein begeisterter
Marathonläufer ist? Vielleicht erleben wir das bald gemeinsam im Team!
Herzlich willkommen im Team, Max Mustermann! Lass uns gemeinsam
großartige Dinge erreichen. Schön, dass du da bist!Datenspeicherung
Alle extrahierten Daten werden automatisch gespeichert in:
<Projektverzeichnis>/data/extracted_data.jsonJeder Eintrag enthält:
id: Eindeutige ID (Timestamp)timestamp: ISO 8601 Zeitstempelsource: Quelle der Daten ("Manuelle Texteingabe")data: Die extrahierten Mitarbeiterdaten
Entwicklung
Projekt lokal starten
npm run devBuild erstellen
npm run buildTests ausführen
npm testTechnologie-Stack
TypeScript: Typsicherer Code
MCP SDK: Model Context Protocol Integration
Zod: Schema-Validierung
Projektstruktur
welcome-text-generator-mcp/
├── src/
│ ├── index.ts # Server-Einstiegspunkt
│ ├── types.ts # TypeScript-Typen
│ ├── tools/ # MCP Tools
│ │ ├── extractFromTextTool.ts
│ │ ├── generateModularTextTool.ts
│ │ └── listDataTool.ts
│ ├── utils/ # Hilfsfunktionen
│ │ ├── textExtractor.ts
│ │ └── moduleTextGenerator.ts
│ ├── templates/ # Text-Templates
│ │ └── moduleTemplates.ts
│ └── storage/ # Datenspeicherung
│ └── dataStorage.ts
├── dist/ # Kompilierte Dateien
├── data/ # Gespeicherte Daten
├── package.json
├── tsconfig.json
└── README.mdLizenz
MIT License - siehe LICENSE Datei
Beiträge
Contributions sind willkommen! Bitte erstelle einen Pull Request oder öffne ein Issue.
Support
Bei Fragen oder Problemen:
GitHub Issues: https://github.com/goodfel10w/WelcomeTextGenerator/issues
MCP Dokumentation: https://modelcontextprotocol.io
Changelog
Version 1.0.0
Initial Release
Text-Extraktion und Analyse
Modulares Template-System mit 5 Modulen
Datenspeicherung und -verwaltung
3 Varianten für Einleitung und Abschluss
Available Tools
3 toolsextract_from_textText analysierenC
Extrahiert strukturierte Daten aus freigegebenem Text
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | Freitext mit Informationen über den Mitarbeiter |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden. It does not disclose whether the tool is read-only, modifies data, or requires any special permissions. The term 'extracts' implies a read operation, but this is not explicitly stated, and no other behavioral traits are mentioned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (single sentence) and front-loaded with the essential action. However, it is quite short and could benefit from additional structure or contextual details without sacrificing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, no output schema, no annotations), the description is adequate but not fully complete. It explains what the tool does but omits details about the output format or any constraints on input text.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (one parameter 'text' with a clear description in German). The tool description does not add any meaning beyond the schema, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the verb 'extracts' and resource 'structured data from shared text', making the tool's purpose clear. The sibling tools (generate_modular_welcome_text, list_extracted_data) are distinct in name and function, so differentiation is implicit. However, the description does not specify what kind of structured data is extracted, leaving some ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. There is no mention of prerequisites, context, or exclusions. The single-sentence description lacks any usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_modular_welcome_textModularen Willkommenstext generierenC
Generiert einen strukturierten Willkommenstext nach dem Modul-Template-System
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | ||
| moduleOptions | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. However, it only states the output type ('welcome text') without mentioning side effects, permissions, rate limits, or whether it is read-only or destructive. The lack of specification is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, which is concise. However, it is under-specified; it would benefit from additional context while remaining brief. It is not verbose, but minimalism sacrifices completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (nested objects, many subproperties, no output schema), the description is insufficient. It does not explain return values, what the 'module template system' is, or how to structure inputs properly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% (no descriptions on top-level parameters), and the tool description adds no information about the parameters. It does not explain what 'data' or 'moduleOptions' are or how to use them, despite the schema having nested objects and multiple subproperties.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('generiert' = generates) and resource ('strukturierten Willkommenstext' = structured welcome text), and the tool name aligns with this purpose. It is distinct from sibling tools like 'extract_from_text' and 'list_extracted_data', which are about extraction and listing, not generation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, when not to use it, or compare with sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_extracted_dataGespeicherte Daten auflistenA
Listet alle bisher extrahierten und gespeicherten Mitarbeiterdaten auf
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description only says 'lists' without detailing output structure, pagination, or any limits. Minimal behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no redundant words, front-loaded. Very concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, no-output-schema tool, description adequately states what is listed. Could mention relation to sibling tools but not necessary.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters, so baseline 4. Description adds no param info, but schema coverage is 100% (empty), so it's adequate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description states 'lists all extracted and saved employee data' - specific verb and resource, clearly distinguishing from siblings (extract_from_text, generate_modular_welcome_text).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this vs alternatives. Only implied it should be used after extraction, but no when-not or alternative mention.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
3 tool updates
v1.0.2- First observed
extract_from_text - First observed
generate_modular_welcome_text - First observed
list_extracted_data
TDQS
Each tool has a distinct purpose: extracting data, generating welcome text, and listing extracted data. No overlapping functionality.
All tools use a consistent verb_noun pattern in snake_case, making them predictable and easy to understand.
Three tools is an appropriate number for a focused server, covering extraction, generation, and listing without unnecessary bloat.
The core workflow of extracting data and generating welcome texts is covered. However, lacking update or delete operations for extracted data is a minor gap.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Create friendly, customizable greetings for any name or audience. Break the ice in demos, onboardi…
Greet people by name with friendly, personalized messages. Add a warm touch to onboarding, demos,…
Create personalized greetings by name in the tone you choose. Get quick suggestions for friendly i…
Your AI copilot for customer onboarding — projects, KPIs, tasks, and safe writes.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceAn MCP-powered HR management system that automates employee onboarding, leave tracking, meeting scheduling, and IT ticketing. It allows users to manage organizational workflows and administrative tasks through natural language interactions with Claude.2-
- AlicenseNot gradedqualityDmaintenanceMCP-based HR automation tool that streamlines employee onboarding, leave management, and equipment requests via natural language conversations.1MIT
- FlicenseBqualityCmaintenanceAgentic AI system that automates HR workflows like employee onboarding, enabling HR teams to streamline tasks through natural language interactions with Claude Desktop.12-
- FlicenseCqualityCmaintenanceAutomates employee onboarding workflows for HR teams, enabling tasks like data entry and email notifications through natural language.12-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/goodfel10w/WelcomeTextGenerator'
If you have feedback or need assistance with the MCP directory API, please join our Discord server