Class: Prompt
Defined in: packages/core/src/domain/Prompt.ts:32
Represents an MCP Prompt — a reusable template for LLM interactions.
Prompts are leaf nodes that define structured input templates with named arguments. They enable consistent, parameterized LLM interactions.
Example
import { Prompt, PromptArgument } from '@vinkius-core/mcp-fusion';
const prompt = new Prompt('generate_summary');
prompt.description = 'Generate a summary of the given text';
const textArg = new PromptArgument('text');
textArg.required = true;
textArg.description = 'The text to summarize';
prompt.addPromptArgument(textArg);
const styleArg = new PromptArgument('style');
styleArg.description = 'Summary style (brief, detailed)';
prompt.addPromptArgument(styleArg);See
- PromptArgument for argument definitions
- GroupItem for group membership
Extends
Constructors
Constructor
new Prompt(name): Prompt;Defined in: packages/core/src/domain/Prompt.ts:36
Parameters
| Parameter | Type |
|---|---|
name | string |
Returns
Prompt
Overrides
GroupItem.constructorProperties
description
description: string | undefined;Defined in: packages/core/src/domain/BaseModel.ts:33
Detailed description of this entity's purpose
Inherited from
icons
icons: Icon[] | undefined;Defined in: packages/core/src/domain/BaseModel.ts:37
Visual icons associated with this entity
Inherited from
meta
meta: Map<string, unknown> | undefined;Defined in: packages/core/src/domain/BaseModel.ts:35
Arbitrary key-value metadata for extensibility
Inherited from
name
readonly name: string;Defined in: packages/core/src/domain/BaseModel.ts:29
Unique identifier within the parent scope
Inherited from
nameSeparator
readonly nameSeparator: string;Defined in: packages/core/src/domain/BaseModel.ts:27
Separator character for constructing fully qualified names
Inherited from
parentGroups
readonly parentGroups: Group[];Defined in: packages/core/src/domain/GroupItem.ts:28
Groups that contain this item (many-to-many relationship)
Inherited from
promptArguments
readonly promptArguments: PromptArgument[] = [];Defined in: packages/core/src/domain/Prompt.ts:34
Ordered list of arguments accepted by this prompt
title
title: string | undefined;Defined in: packages/core/src/domain/BaseModel.ts:31
Human-readable display title
Inherited from
DEFAULT_SEPARATOR
readonly static DEFAULT_SEPARATOR: string = ".";Defined in: packages/core/src/domain/BaseModel.ts:24
Default separator used in fully qualified names
Inherited from
Methods
addParentGroup()
addParentGroup(parentGroup): boolean;Defined in: packages/core/src/domain/GroupItem.ts:41
Add this item to a parent group.
Parameters
| Parameter | Type | Description |
|---|---|---|
parentGroup | Group | The group to join |
Returns
boolean
false if already a member, true if added
Inherited from
addPromptArgument()
addPromptArgument(promptArgument): boolean;Defined in: packages/core/src/domain/Prompt.ts:46
Add an argument to this prompt.
Parameters
| Parameter | Type | Description |
|---|---|---|
promptArgument | PromptArgument | The argument to add |
Returns
boolean
false if already present, true if added
getFullyQualifiedName()
getFullyQualifiedName(): string;Defined in: packages/core/src/domain/GroupItem.ts:58
Returns the simple name (leaf items have no hierarchy prefix)
Returns
string
Inherited from
GroupItem.getFullyQualifiedName
removeParentGroup()
removeParentGroup(parentGroup): boolean;Defined in: packages/core/src/domain/GroupItem.ts:53
Remove this item from a parent group.
Parameters
| Parameter | Type | Description |
|---|---|---|
parentGroup | Group | The group to leave |
Returns
boolean
false if not found, true if removed
Inherited from
removePromptArgument()
removePromptArgument(promptArgument): boolean;Defined in: packages/core/src/domain/Prompt.ts:58
Remove an argument from this prompt.
Parameters
| Parameter | Type | Description |
|---|---|---|
promptArgument | PromptArgument | The argument to remove |
Returns
boolean
false if not found, true if removed