Skip to main content
Glama
EB-CON-GmbH

EasyTopic MCP Server

Official
by EB-CON-GmbH

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
EASYTOPIC_BOARD_IDYesBoard ID
EASYTOPIC_BOT_EMAILYesBot account email
EASYTOPIC_COMPANY_IDYesCompany ID
EASYTOPIC_PROJECT_IDYesProject ID
EASYTOPIC_BOT_PASSWORDYesBot account password (the real secret)
EASYTOPIC_PLAN_FIELD_KEYNoCustom field key for Planplan
EASYTOPIC_DONE_STATUS_KEYNoStatus key for Donedone
EASYTOPIC_FIREBASE_APP_IDYesFirebase app ID
EASYTOPIC_TODO_STATUS_KEYNoStatus key for ToDotodo
EASYTOPIC_FIREBASE_API_KEYYesFirebase API key
EASYTOPIC_PLANNED_STATUS_KEYNoStatus key for Plannedplanned
EASYTOPIC_APPROVED_STATUS_KEYNoStatus key for Approvedapproved
EASYTOPIC_FIREBASE_PROJECT_IDYesFirebase project ID
EASYTOPIC_PLANNING_STATUS_KEYNoStatus key for Planningplanning
EASYTOPIC_FIREBASE_AUTH_DOMAINYesFirebase Auth domain
EASYTOPIC_IN_PROGRESS_STATUS_KEYNoStatus key for In Progressin_progress
EASYTOPIC_FIREBASE_STORAGE_BUCKETYesFirebase storage bucket
EASYTOPIC_FIREBASE_MESSAGING_SENDER_IDYesFirebase messaging sender ID

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
easytopic_whoamiA

Authenticates against EasyTopic and returns the bot's identity plus the configured company/project/board/status-key/plan-field settings. Call this first in every run — if it errors, stop immediately (auth/config problem), do not attempt any workaround.

easytopic_list_topicsA

Lists Topics in the configured company/project whose currentStatusKey is one of the given statusKeys, oldest-updated first. Use the configured todoStatusKey/planningStatusKey/plannedStatusKey/approvedStatusKey/inProgressStatusKey/doneStatusKey values from easytopic_whoami.

easytopic_get_topicA

Fetches one Topic in full: title, description (the prompt), custom field values (incl. the plan field), current status, the subset of workflow transitions currently legal from this status, all comments oldest-first, and awaitingHumanReply (true if the bot's own question is still the most recent comment — do not re-ask, wait for a reply).

easytopic_add_commentA

Posts a comment on a Topic — the only channel to communicate with the human (questions, progress notes, completion summaries). The human is notified automatically.

easytopic_write_planA

Writes the implementation plan into the Topic's configured plan custom field (versioned, recorded in Topic History). Call this before transitioning a Topic out of the todo status — write the plan first, then transition.

easytopic_transition_statusA

Moves a Topic to a new status via the matching Workflow transition (runs the same beforeChecks the human UI runs, e.g. requiredFieldsFilled). Errors use the same vocabulary as the app: a WorkflowCheckId (assigneeRequired/dueDateRequired/descriptionRequired/requiredFieldsFilled), notProjectAdmin, hasActiveConflict, or noMatchingTransition. Status lifecycle convention (created -> todo -> planning -> planned -> approved -> in_progress -> done -> closed): you may set planning/planned yourself once you start/finish planning, and in_progress/done yourself once you start/finish the work. Never set the approved status yourself unless the human has given explicit approval via a Topic comment or directly in conversation — otherwise wait for them to set it. Never set the closed status yourself under any circumstance — that is the human's exclusive final sign-off after verifying the work.

easytopic_list_doc_projectsA

Lists every Documentation Project (Project.isDocumentationProject === true) in the configured company that the bot currently participates in. A Documentation Project holds its content as a tree of publishable Topics (see easytopic_list_doc_tree/easytopic_get_doc_page). The bot only sees a Project here once a human has added it as a Project participant in that Project's settings — company employment alone is not enough (Firestore rules require real participancy for list queries). To also create new pages (easytopic_create_doc_page) or read the Project's FULL existing tree, the bot needs to be added as an ADMIN participant specifically, not just a member — see CLAUDE.md's participancy/admin-visibility notes.

easytopic_list_doc_treeA

Lists every page (Topic) the bot can see in the given Documentation Project, flattened, ordered by sortOrder within each parent — use parentTopicId to reconstruct the tree (null = top-level page). Returns id/title/parentTopicId/isPublic only; call easytopic_get_doc_page for a page's actual content. Get projectId from easytopic_list_doc_projects.

easytopic_get_doc_pageA

Fetches one Documentation page (Topic) in full: title, description (the page's rich-text HTML body), parentTopicId, isPublic, metaDescription, and its direct child pages (id/title only). Get projectId from easytopic_list_doc_projects and topicId from easytopic_list_doc_tree.

easytopic_write_doc_pageA

Updates an existing Documentation page's title and/or rich-text HTML content (descriptionHtml) and/or metaDescription. Only fields you pass are touched; title/descriptionHtml changes are versioned into Topic History like every other Topic edit, metaDescription is not. Requires the bot to already be a participant of the page's Project (see easytopic_list_doc_projects) — does not require admin.

easytopic_create_doc_pageA

Creates a new Documentation page (Topic) under the given parent (null = top-level page) in a Documentation Project. Firestore rules only allow Topic creation by a Project ADMIN (no plain-participant fallback) — this tool checks that up front and returns { error: "notProjectAdmin" } instead of a raw permission error if the bot is only a member. Ask the human to promote the bot to admin on that Project's participants if you hit this.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/EB-CON-GmbH/easytopic-mcp-server'

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