Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
MARVIN_API_KEYYesYour Marvin API key
MARVIN_API_URLNoThe Marvin API URL. Use another environment, e.g. stg or a local API (http://localhost:<port>)https://app-api.marvin-labs.com
MARVIN_WAIT_SECONDSNoHow long one tool call waits for an answer50

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

Marvin is Marvin Labs' equity research analyst. Use ask_marvin for questions about companies, their filings, financials and markets. Answers can take several minutes: when ask_marvin returns status queued or in_progress, call get_response with the response_id until it is completed. To follow up in the same conversation, pass the conversation_id from the previous answer.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
ask_marvinA

Ask Marvin a question; returns its answer, or a response_id to poll.

get_responseC

Wait a little longer for an answer that ask_marvin left running.

cancel_responseB

Stop an answer that is still running.

list_conversationsB

Your Marvin conversations, most recently updated first, including ones from the app.

get_conversationC

A conversation's questions and answers, oldest first.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.4/5.0

Scored across 5 tools

Disambiguation5/5

Each tool targets a distinct action: ask_marvin initiates a question, get_response polls an async answer, cancel_response stops a running answer, list_conversations enumerates conversations, and get_conversation retrieves a specific conversation's history. There is no overlap in purpose, and the async lifecycle is cleanly split between ask and poll.

Naming Consistency4/5

All names use snake_case and follow a verb_noun pattern (get_response, cancel_response, list_conversations, get_conversation). ask_marvin is a minor deviation because it names the assistant rather than a resource type, but it remains clear and consistent overall.

Tool Count5/5

Five tools neatly cover the core operations—asking, polling, cancelling, listing, and retrieving—without redundancy. This is well within the typical 3-15 range for a focused assistant server.

Completeness4/5

The set provides complete coverage of the primary response and conversation lifecycle. Minor gaps like deleting or renaming conversations exist, but agents can work around them for most workflows.

Maintenance

ActivityMaintained
ResponsivenessNo recent community issues