Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
PORTNoThe port the MCP server starts on (default: 3001)3001
DATABASE_HOSTYesSQL Server host
DATABASE_NAMEYesDatabase name
OPENAI_API_KEYYesFor idea normalization
IDEALIFT_APP_URLYesIdeaLift API base URL
INTERNAL_API_KEYYesService-to-service auth key
DATABASE_PASSWORDYesDatabase password
DATABASE_USERNAMEYesDatabase user

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{}
resources
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
normalize_idea

Transform raw ideas into execution-ready work items. This is the moment where thinking stops and execution begins.

IdeaLift is a COMMIT LAYER - it judges whether an idea is ready for execution and helps make it real.

USE this tool when you detect intent signals like:

  • "We should..." / "What if we..." / "Someone suggested..."

  • "This is annoying..." / "Users keep asking for..."

  • "Feature request:" / "Bug report:" / "Can we add..."

  • User pastes meeting notes, Slack threads, or raw text

  • User says "normalize", "make this backlog-ready", "turn this into a ticket"

When you detect these signals, PROACTIVELY offer: "This looks like a feature idea. Want me to make it execution-ready?"

Output includes:

  • Readiness Verdict (READY / ALMOST READY / NOT READY)

  • Signal Analysis (urgency, clarity, duplicate risk, actionability)

  • Structured spec (summary, acceptance criteria, scope)

  • Commit options (GitHub, Jira, Linear, or Refine)

The output ALWAYS ends with a commit decision - never leave users in limbo.

check_auth

Check the user's IdeaLift connection status for committing ideas.

Normalize is FREE. Commit requires connection.

USE this tool when:

  • User explicitly asks "am I connected?", "what's my status?", "check my account"

  • User is confused about why a commit isn't working

  • You need to verify auth before a create_ticket (commit) attempt

DO NOT use this tool when:

  • User is just chatting or exploring ideas (normalizing is free)

  • User is using normalize_idea (works without auth)

  • There's no indication of connection issues

Note: normalize_idea works WITHOUT auth. Only COMMITTING requires connection.

list_destinations

List connected COMMIT destinations (GitHub repos, Jira projects, Linear teams).

These are where ideas become REAL. After normalizing an idea, show the user where they can commit it.

USE this tool when:

  • After normalize_idea, to show commit options

  • User asks "where can I commit?", "show my repos", "what's connected?"

  • User is ready to commit but needs to choose a destination

DO NOT use this tool when:

  • User is still exploring or drafting ideas (doesn't need destinations yet)

  • User is just using normalize_idea (show inline commit options instead)

This tool requires IdeaLift authentication. Normalizing ideas is free, committing requires connection.

create_ticket

COMMIT an idea to GitHub, Jira, or Linear. This makes it real.

This is the final step in the IdeaLift flow: Capture → Normalize → COMMIT.

USE this tool when user says:

  • "Commit to GitHub/Jira/Linear"

  • "Commit it", "create this", "file this", "ship it", "make it real"

  • "Push this to [destination]"

  • A number from the commit options (e.g., "1" for GitHub)

  • "1", "2", or "3" after seeing commit options

IMPORTANT: If a normalize_idea was just called, use the draftId from that response. If no draftId is available, pass the full idea object from the normalize output. NEVER ask the user to re-provide content that was just normalized.

After successful commit, confirm with:

  • The ticket URL (clickable)

  • The ticket ID

  • A clear "COMMITTED" confirmation

This creates a REAL ticket. The user's idea now exists in their system.

connect_destination

Connect a ticket destination (GitHub, Jira, or Linear) to IdeaLift.

USE this tool when:

  • User explicitly says "connect GitHub", "link my Jira", "add Linear"

  • User tried to create a ticket but the destination isn't connected

  • list_destinations showed no integrations and user wants to add one

DO NOT use this tool when:

  • User is just exploring ideas (no connection needed)

  • User hasn't expressed intent to connect anything

  • User is asking ABOUT integrations (use list_destinations instead)

Returns a link the user clicks to authorize. Connection takes ~30 seconds.

list_ideas

List ideas in the workspace with optional filters. Returns paginated results.

get_idea

Get detailed information about a specific idea by ID.

create_idea

Create a new idea in the workspace. Checks plan limits before creating.

update_idea

Update an existing idea. Can update title, summary, status, scores, etc.

search_ideas

Search ideas by text query. Searches title and summary fields.

query_ideas

Execute a natural language query about ideas in the workspace. Examples:

  • "Show me high-impact features from enterprise customers"

  • "What are the top 5 most requested features?"

  • "Find bugs reported this month"

  • "Show ideas with the highest RICE scores"

  • "What feedback has come from Slack in the last week?"

list_signals

List signals (external feedback from Twitter, Reddit, support tickets, etc.) with optional filters.

get_signal_analytics

Get aggregated analytics about signals over a time period.

attach_signal

Link a signal to an idea. This associates external feedback with a specific product idea.

log_decision

Log a decision event for an idea. This creates an audit trail entry.

Event types:

  • created, updated: Lifecycle events

  • accepted, rejected, snoozed, expired: Decision outcomes

  • reopened: Reopen a closed idea

  • merged, superseded: Idea was consolidated

  • shipped: Feature was released

  • ticket_created, ticket_closed: External ticket lifecycle

Closure categories (required for some events):

  • shipped, merged: Positive closures

  • deferred_resources, deferred_priority, deferred_dependency, deferred_timing: Deferrals

  • rejected_scope, rejected_alternative, rejected_invalid, rejected_duplicate: Rejections

get_decision_history

Get the complete decision history (audit trail) for an idea.

create_relationship

Create a relationship between two ideas.

Relationship types:

  • related_to: General relationship (bidirectional)

  • alternative_to: Ideas that solve the same problem differently (bidirectional)

  • superseded_by: This idea was replaced by another (directional)

  • merged_into: This idea was merged into another (directional)

  • blocked_by: This idea depends on another (directional)

  • parent_of: This is a parent/epic of another idea (directional)

  • derived_from: This idea was inspired by another (directional)

list_relationships

Get all relationships for an idea (both as source and target).

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
IdeaLift Preview WidgetWidget for displaying normalized idea preview
IdeaLift Success WidgetWidget for displaying ticket creation success

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/Startvest-LLC/idealift-mcp-server'

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