Skip to main content
Glama

begin_feature_discussion

Start a new feature discussion to explore implementation options, architecture considerations, and best practices with AI guidance.

Instructions

Start a new feature discussion

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
titleYesTitle or name of the feature

Implementation Reference

  • The switch case handler that executes the 'begin_feature_discussion' tool. It generates a feature ID, initializes the feature discussion object with the provided title and sets the first prompt, creates discussion context, and returns a response with the feature ID and initial prompt.
    case "begin_feature_discussion": { const { title } = request.params.arguments as any; const id = `f${Object.keys(featureDiscussions).length + 1}`; // Initialize new feature discussion featureDiscussions[id] = { id, title, description: "", requirements: [], status: 'in-discussion', createdAt: new Date().toISOString(), updatedAt: new Date().toISOString(), currentPrompt: FEATURE_DISCUSSION_PROMPTS[0].id }; // Initialize discussion context discussionContexts[id] = { previousDecisions: [], relatedFeatures: [], technicalConstraints: [], conversationHistory: [] }; // Return the first prompt return { content: [ { type: "text", text: `Feature discussion started for: ${title}\n\nFeature ID: ${id}\n\nFirst question:\n${FEATURE_DISCUSSION_PROMPTS[0].message}` } ] }; }
  • src/index.ts:175-188 (registration)
    Registers the 'begin_feature_discussion' tool by defining its name, description, and input schema (requiring a 'title' string) in the ListToolsRequestSchema handler.
    { name: "begin_feature_discussion", description: "Start a new feature discussion", inputSchema: { type: "object", properties: { title: { type: "string", description: "Title or name of the feature" } }, required: ["title"] } },
  • Defines the array of sequential prompts used throughout feature discussions. The 'begin_feature_discussion' tool initializes new discussions with the first prompt from this array ('initial_description').
    const FEATURE_DISCUSSION_PROMPTS: FeaturePrompt[] = [ { id: "initial_description", message: "Please provide a brief description of the feature you'd like to discuss.", field: "description" }, { id: "business_value", message: "What business value does this feature provide? How does it benefit users or stakeholders?", field: "businessValue" }, { id: "target_users", message: "Who are the target users for this feature?", field: "targetUsers" }, { id: "requirements", message: "What are the key requirements or constraints for this feature?", field: "requirements" }, { id: "success_criteria", message: "What are the success criteria for this feature? How will we know it's working as intended?", field: "successCriteria" }, { id: "technical_approach", message: "Do you have any specific technical approach in mind for implementing this feature?", field: "technicalApproach" }, { id: "risks", message: "Are there any potential risks or challenges we should consider?", field: "risks" }, { id: "timeline", message: "What's the desired timeline or priority for this feature?", field: "timeline" } ];

Latest Blog Posts

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/squirrelogic/mcp-feature-discussion'

If you have feedback or need assistance with the MCP directory API, please join our Discord server