commentkeyword-mcp
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| COMMENTKEYWORD_API_URL | No | Optional. Base URL of the CommentKeyword API. Defaults to https://commentkeyword.com/api. | https://commentkeyword.com/api |
| COMMENTKEYWORD_API_TOKEN | Yes | Your personal access token for CommentKeyword. Required. |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_keywordsA | List the comment-keyword automations in the workspace, newest first. Use it to check whether a keyword already exists before creating one. |
| get_keywordA | Get one keyword automation by its publicId, including whether it is still waiting for the next post (nextPostStatus). |
| create_keywordA | Create a comment-to-DM automation: when someone comments the keyword, CommentKeyword sends them the DM (and optionally replies publicly). Confirm the details with the user first, because it messages real people. Fails with 409 if the keyword already exists for the same posts, or with keyword_limit_exceeded when the plan has no free active-keyword slot. |
| update_keywordA | Change a keyword automation. Only the fields you pass change. Passing target re-targets it (e.g. next_post to wait for the next upload again). dmMessages and commentReplies replace all existing variants. Set isActive false to pause it. |
| delete_keywordA | Permanently delete a keyword automation. Prefer update_keyword with isActive false to pause it instead. If the keyword has an AI agent, the first call returns DELETE_CONFIRMATION_REQUIRED with an impact summary; show it to the user and call again with confirm true only if they agree. |
| list_agentsA | List the AI agents already set up in the workspace (agents are created and edited in the CommentKeyword dashboard). Pass the publicId of a Live agent as aiAgentId to create_keyword or update_keyword so it keeps chatting after the first DM. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 6 tools
Each tool maps to a distinct action on the keyword resource (list, get, create, update, delete), with list_keywords explicitly positioned as the pre-create existence check. list_agents targets a different resource (AI agents) and is clearly scoped as a read-only lookup for supplying aiAgentId. No two tools compete for the same selection.
All six tools follow a strict snake_case verb_noun pattern (list_/get_/create_/update_/delete_keyword, list_agents). The single resource deviation (agents) still uses the same convention, so the pattern is fully predictable.
Six tools is a tight, well-scoped surface for a keyword-automation CRUD domain — nothing looks padded or missing. Every tool earns its place, and the destructive delete is balanced by update_keyword's pause path.
Full lifecycle coverage for keywords (create/read/list/update/delete with confirmation flow) with no dead ends. Agents are intentionally read-only since they are authored in the dashboard, but there is no get_agent for a single agent and no way to proactively check plan/keyword limits beyond relying on error codes.