Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
portNoPort for future HTTP transport (currently unused as server only supports stdio transport).8080
tokenNoLunaTask API bearer token. Required to authenticate with the LunaTask API if not provided in the configuration file.
base_urlNoLunaTask API base URL.https://api.lunatask.app/v1/
log_levelNoLogging level. Valid values: DEBUG, INFO, WARNING, ERROR, CRITICAL.INFO
config_fileNoPath to the custom TOML configuration file (defaults to ./config.toml).
rate_limit_rpmNoRate limit in requests per minute.60
rate_limit_burstNoRate limit burst size.10

Instructions

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

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
pingA

Ping health-check tool that returns a static 'pong' response.

This tool serves as a basic health-check endpoint to verify that the MCP server is functioning correctly.

Args: ctx: The execution context providing access to logging and other MCP capabilities.

Returns: str: The 'pong' response text.

Raises: asyncio.CancelledError: If the operation is cancelled during execution.

create_taskC

Create a new task in LunaTask.

update_taskC

Update an existing task in LunaTask.

delete_taskB

Delete an existing task in LunaTask.

track_habitC

Track an activity for a specific habit on a given date

create_noteA

Create a note in LunaTask. Accepts notebook_id, optional name/content, an ISO date_on, and optional source/source_id metadata for duplicate detection. Returns note_id or duplicate status.

update_noteA

Update an existing note in LunaTask. Requires note_id (UUID). Optional fields: name, content (replaces entire content due to E2E encryption), notebook_id (to move note), date_on (YYYY-MM-DD). At least one field must be provided. Returns updated note data.

delete_noteA

Delete a note in LunaTask by note_id. Requires note_id (UUID). Returns success status with note_id and deleted_at timestamp. Note: deletion is not idempotent - second delete will return not found error.

create_journal_entryC

Create a journal entry for a specific date. Provide the date in YYYY-MM-DD format along with optional name and content fields.

create_personA

Create a person/contact in LunaTask. Requires first_name and last_name. Optional relationship_strength (family, intimate-friends, close-friends, casual-friends, acquaintances, business-contacts, almost-strangers), source/source_id for duplicate detection, email, birthday (YYYY-MM-DD), and phone. Returns person_id or duplicate status.

create_person_timeline_noteA

Create a timeline note for a person in LunaTask. Requires person_id and content. Optional date_on (YYYY-MM-DD) to associate the note with a specific day.

delete_personA

Delete a person/contact in LunaTask by person_id. Requires person_id. Returns success status with person_id and deleted_at timestamp. Note: deletion is not idempotent - second delete will return not found error.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
_tasks_discovery
_tasks_discovery
_global_now
_global_today
_global_overdue
_global_next7
_global_high
_global_recent

TDQS

A3.5/5.0

Scored across 12 tools

Disambiguation5/5

Each tool has a distinct purpose targeting a specific entity or action (e.g., create, delete, update). There is no overlap in functionality, and descriptions clearly separate the operations for notes, persons, tasks, journal entries, and habits.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern in snake_case (e.g., create_note, delete_person, update_task). The naming is uniform and predictable across the entire set.

Tool Count5/5

With 12 tools, the count is well within the optimal 3-15 range. Each tool addresses a specific operation, and the scope feels appropriate for a personal task/note/habit manager.

Completeness2/5

The tool set lacks read/list operations for all entities (notes, persons, tasks, journal, habits). Update is missing for persons and journal entries, and delete is missing for journal entries and habits. These gaps will hinder agents that need to retrieve or modify existing data.

Maintenance

ActivityInactive
ResponsivenessNo issues