list_campaigns
List campaigns
List all Argo campaigns the current grant token has access to, including the access level ("read" or "read+write") for each. Call this first when the user has not provided a campaign ID. Each entry includes both `campaignName` and `id` (shown inline as `[id: …]` and also in structuredContent.idMap). Use the `id` verbatim for any subsequent tool call that takes a `campaignId`. In prose to the user, refer to campaigns by `campaignName`; do not print the raw `id` unless asked.
無需輸入參數。
Retrieve details of an Argo campaign (name, description, rule system, co-GMs).
輸入參數campaignId必填
create_campaign
Create campaign
Create a new Argo campaign. The current user becomes GM and the calling token gains read+write access to the new campaign immediately (no re-consent needed). Requires the campaign.create OAuth scope, granted at consent time.
輸入參數ruleSystem必填description必填campaignName必填gameSystemSlug
update_campaign
Update campaign
Update a campaign's display name and/or description. Both fields optional — only supplied fields are changed; pass an empty string to clear the description. GMs and co-GMs can call this; rule-system swaps remain WebApp-only.
輸入參數campaignId必填campaignNamecampaignDescription
List the assistant GMs (co-GMs) of a campaign.
輸入參數campaignId必填
Send a user an assistant GM (co-GM) offer for a campaign. This does NOT add them immediately: the target must accept the offer before they become an assistant GM. Owner-only — the calling user must be the campaign's primary GM. Maximum 5 co-GMs per campaign.
輸入參數userId必填campaignId必填
Remove a co-GM from a campaign. Owner-only or self-removal.
輸入參數userId必填campaignId必填
describe_mnemon_types
Describe mnemon types
Returns a catalog of all mnemon types, their type-specific fields, and the full valid relationship matrix (sourceType → label → targetType). Call this before create_mnemon or create_mnemon_relationship when you are unsure which type or label to use. A person is an NPC and a faction is a Faction; Player and PlayerParty are made only by the server and cannot be created.
無需輸入參數。
List mnemon (lore/memory) entries for an Argo campaign. Optional filters: `title` (case-insensitive substring on entry title only) and `type` (e.g. NPC, Location, Quest). To find entries by what they CONTAIN, use search_mnemons instead. Returns up to `limit` entries (default 100); when `hasMore` is true, call again with `offset` = the returned `nextOffset` to fetch the next page. Each entry includes both `title` and `entryId` (shown inline as `[id: …]` and in structuredContent.idMap). Use the `entryId` verbatim for any tool that takes one; refer to entries by `title` in prose to the user.
輸入參數typelimittitleoffsetcampaignId必填
search_mnemons
Search mnemons
Full-text search across mnemon titles, tags, and body content (case-insensitive substring). Prefer this over list_mnemons when looking for entries by what they contain — e.g. "what do we know about the Red Oracle?". Each hit reports which fields matched (title/tags/content) and up to 3 body snippets; a snippet's blockId is the same block id get_mnemon returns, so you can target the matched block directly in update_mnemons_content. Only content visible to the current user is searched. Returns at most `limit` hits (default 20, max 50) plus `hasMore`.
輸入參數typelimitquery必填campaignId必填
Get the full details of a specific mnemon entry (title, blocks, type properties). For a quest, `quest` holds its status, kind, playersCanTick, objectives and reward chips (with their ids), progress and reward totals, as the current user may see them — read objectives and rewards there, not from blocks.
輸入參數entryId必填campaignId必填
list_mnemon_relationships
List mnemon relationships
List the relationships of a mnemon entry, split into outgoing edges, incoming edges, and a flat list of linked entries (entryId/title/type/relationshipTypes). Use this to find members of a faction, allies/enemies of an NPC, etc.
輸入參數entryId必填campaignId必填
create_npc_mnemons
Create NPC mnemons
Create NPC mnemons (individual people). role is an optional free-text role or occupation. Use affiliationEntryIds to name the factions each NPC belongs to; the server projects them into MEMBER relationships. For a faction, guild or cult use create_faction_mnemons. Players may not call this — GM/co-GM only.
輸入參數items必填campaignId必填
create_faction_mnemons
Create faction mnemons
Create Faction mnemons (factions, guilds, cults, companies). Use memberNpcEntryIds to name each faction's NPC members; the server projects them into MEMBER relationships. Players may not call this — GM/co-GM only.
輸入參數items必填campaignId必填
create_location_mnemons
Create location mnemons
Create Location mnemons (places — cities, dungeons, taverns). Use create_mnemon_relationship with PARENT_OF to nest larger places under one another after creation. Players may not call this — GM/co-GM only.
輸入參數items必填campaignId必填
create_quest_mnemons
Create quest mnemons
Create Quest mnemons: a header (status, kind, playersCanTick, hook, and giverId / locationId / parentQuestId links) and a body of objectives (with sub-objectives), reward chips, a Markdown background and GM-only gmNotes. The server builds the quest the Argo app shows from these. Do not write objectives or rewards as Markdown; markdown alone becomes the Background. The retired quest board fields (steps, reward rows, issuer*, questStatus) are for quests the migration has not converted — see describe_mnemon_types.questBody. Players may not call this — GM/co-GM only.
輸入參數items必填campaignId必填
create_lore_mnemons
Create lore mnemons
Create Lore mnemons (world background, factions' beliefs, history). Players may not call this — GM/co-GM only.
輸入參數items必填campaignId必填
create_archive_mnemons
Create archive mnemons
Create Archive mnemons (archived lore that is no longer current). Players may not call this — GM/co-GM only.
輸入參數items必填campaignId必填
create_journal_mnemons
Create journal mnemons
Create Journal mnemons (log of in-world events). Players may not call this — GM/co-GM only.
輸入參數items必填campaignId必填
create_session_summary_mnemons
Create session summary mnemons
Create SessionSummary mnemons (the memory of one played session): the story as the Markdown body, plus a short recap shown as "Previously on". Players may not call this — GM/co-GM only.
輸入參數items必填campaignId必填
create_custom_mnemons
Create custom mnemons
Create custom-typed mnemons (any free-form entry that doesn't fit the other types). Players may not call this — GM/co-GM only.
輸入參數items必填campaignId必填
update_npc_mnemons
Update NPC mnemons
Update typed/meta fields of NPC mnemons (visibility, tags, role, faction membership, etc.). An entry that is not an NPC fails its item; use update_faction_mnemons for a faction. Does NOT modify content blocks — use update_mnemons_content for that. Set visibility=PUBLIC on multiple NPCs in a single call by listing them in items[].
輸入參數items必填campaignId必填
update_faction_mnemons
Update faction mnemons
Update typed/meta fields of Faction mnemons (visibility, tags, members). An entry that is not a Faction fails its item. Does NOT modify content blocks — use update_mnemons_content for that.
輸入參數items必填campaignId必填
update_location_mnemons
Update location mnemons
Update typed/meta fields of Location mnemons.
輸入參數items必填campaignId必填
update_quest_mnemons
Update quest mnemons
Update Quest mnemons. A field left out is left as it is: status, kind, playersCanTick, hook, the giverId / locationId / parentQuestId links (an empty string removes one), and objectives, rewards, background or gmNotes, each of which replaces its part of the quest and keeps the rest. Name existing objectives and chips by the ids get_mnemon's `quest` returns so they keep what the GM wrote under them. To tick one objective, use set_quest_objective_state.
輸入參數items必填campaignId必填
update_lore_mnemons
Update lore mnemons
Update typed/meta fields of Lore mnemons.
輸入參數items必填campaignId必填
update_archive_mnemons
Update archive mnemons
Update typed/meta fields of Archive mnemons.
輸入參數items必填campaignId必填
update_journal_mnemons
Update journal mnemons
Update typed/meta fields of Journal mnemons.
輸入參數items必填campaignId必填
update_session_summary_mnemons
Update session summary mnemons
Update the recap, date, number and meta fields of SessionSummary mnemons. To change the story, use update_mnemons_content.
輸入參數items必填campaignId必填
update_player_mnemons
Update player mnemons
Update typed/meta fields of Player mnemons — one per character in a party. Player mnemons cannot be created: the server makes one for each character that joins a party. Who may edit an entry is decided by its own permissions.
輸入參數items必填campaignId必填
update_party_mnemons
Update party mnemons
Update typed/meta fields of PlayerParty mnemons — one per party in the campaign. PlayerParty mnemons cannot be created: the server makes one for each party. Who may edit an entry is decided by its own permissions.
輸入參數items必填campaignId必填
update_custom_mnemons
Update custom mnemons
Update typed/meta fields of Custom-typed mnemons.
輸入參數items必填campaignId必填
set_quest_objective_state
Set quest objective state
Tick, fail or reopen one objective of a quest by its id (get_mnemon's quest.objectives[].id), at any depth, without rewriting the quest. A GM sets any state. A player may only tick an objective they can see done, or undo that, and only while the quest's playersCanTick is on. Returns the quest as get_mnemon shows it, its progress recounted.
輸入參數state必填entryId必填campaignId必填objectiveId必填
update_mnemons_content
Update mnemon content
Edit the body content of one or more mnemon entries. Each item carries an entryId and an ordered list of ops (append, insertAfter, replace, remove) applied atomically per entry. Op content is authored as Markdown (headings, lists, quotes, code fences, bold/italic, links) — do NOT send HTML. Mentions: @[label](mnemon:<entryId>). Images:  — upload the asset first; inline base64 / data: URLs are not accepted. Node addressing: get body-node ids from get_mnemon, then target them in replace/remove/insertAfter. A single op's Markdown may produce several nodes; new nodes get fresh server-generated ids (replace keeps the original id on the first new node). On a bad op (missing blockId, unknown op, etc.) the whole entry's batch is rejected with the failedOpIndex; no partial mutation per entry. See describe_mnemon_types.blockOps for the full vocabulary.
輸入參數items必填campaignId必填
create_mnemon_relationship
Create mnemon relationship
Create a relationship between two mnemon entries. The label decides everything: its kind (containment or association) and how it reads (one_way or mutual) belong to the word itself — never send a per-edge override. All 16 labels: MEMBER (NPC ∈ Faction, mutual), ALLY (mutual), ENEMY (one-way), RIVAL (one-way), PARENT_OF (Location hierarchy — sourceEntryId is the outer/larger place, e.g. Region → City → District → Tavern), CONTAINS (Location → NPC present there), LOCATED_IN (NPC → Location; inverse of CONTAINS), HAS_SUBQUEST (Quest → subquest Quest), QUEST_GIVER (Quest → the NPC who gives it), QUEST_LOCATION (Quest → the Location where it is given or set), QUEST_RELATED_NPC (Quest → NPC), QUEST_RELATED_LOCATION (Quest → Location), SESSION_ATTENDEE_CHARACTER (SessionSummary → a character's Player), SESSION_ATTENDEE_NPC (SessionSummary → NPC), SESSION_FEATURED_QUEST (SessionSummary → Quest), SESSION_FEATURED_LOCATION (SessionSummary → Location). sourceEntryId is the 'from' side; targetEntryId is the 'to' side — which end is which matters. Call describe_mnemon_types for the full valid (sourceType, label, targetType) matrix. For faction membership prefer memberNpcEntryIds on the faction or affiliationEntryIds on the NPC; for a quest's giver, location and parent prefer giverId / locationId / parentQuestId on the quest, which keep each to one link. Session-summary links have no array equivalent — the SESSION_* labels are the only way to set them.
輸入參數colorlabel必填directioncampaignId必填sourceEntryId必填targetEntryId必填
delete_mnemon_relationship
Delete mnemon relationship
Delete a relationship by id.
輸入參數campaignId必填relationshipId必填
delete_mnemon
Delete mnemon
Permanently delete a mnemon entry and every relationship that touches it. GM-only on the backend. This cannot be undone — confirm with the user before calling. entryId accepts a hex id or an exact title.
輸入參數entryId必填campaignId必填
create_session
Schedule session
Schedule a campaign session. Provide an ISO-8601 startAt; endAt is optional. Useful for laying out planned arcs or recurring play nights.
輸入參數endAttitle必填startAt必填campaignId必填descriptioninvitedUserIds
list_sessions
List sessions
List campaign sessions for a given month (defaults to the current month).
輸入參數yearmonthcampaignId必填
Get details of a single campaign session.
輸入參數sessionId必填campaignId必填
update_session
Update session
Reschedule a campaign session or edit its title/description. All fields optional. Owner-only on the backend.
輸入參數endAttitlestartAtsessionId必填campaignId必填description
List the guilds the current user belongs to, with role (Owner/Admin/Member), member count, and campaign count. Requires the guild.read scope. Each entry includes both `name` and `guildId` (shown inline as `[id: …]` and in structuredContent.idMap). Use the `guildId` verbatim for any tool that takes one; refer to guilds by `name` in prose to the user.
無需輸入參數。
Retrieve full details of a guild (members, campaigns, calendar metadata).
輸入參數guildId必填
list_guild_members
List guild members
List the members of a guild (id, role, status, invitedAt, joinedAt).
輸入參數guildId必填
add_campaign_to_guild
Add campaign to guild
Add a campaign to a guild. Any active member of the guild can do this; the calling user must be the campaign's GM (enforced server-side).
輸入參數guildId必填campaignId必填
invite_guild_member
Invite guild member
Invite a user to join the guild. Owner/Admin only.
輸入參數userId必填guildId必填
remove_guild_member
Remove guild member
Remove a member from the guild. Owner/Admin only.
輸入參數userId必填guildId必填
set_guild_member_role
Set guild member role
Change a guild member's role to Owner, Admin, or Member. Owner/Admin only. Note that promoting another user to Owner transfers the guild — confirm with the user first.
輸入參數role必填userId必填guildId必填
add_guild_calendar_event
Add guild calendar event
Add a new event to the guild's shared calendar. Owner/Admin only. startDateTime / endDateTime are ISO-8601 (e.g. 2026-06-12T19:00:00).
輸入參數title必填guildId必填descriptionendDateTimestartDateTime必填
List the current user's accepted friends.
無需輸入參數。
list_sent_friend_requests
List sent friend requests
List outgoing friend requests that are still pending.
無需輸入參數。
list_received_friend_requests
List received friend requests
List incoming friend requests awaiting your response.
無需輸入參數。
send_friend_request
Send friend request
Send a friend request to another Argo user.
輸入參數userId必填
accept_friend_request
Accept friend request
Accept an incoming friend request from the given user.
輸入參數userId必填
reject_friend_request
Reject friend request
Reject an incoming friend request from the given user.
輸入參數userId必填
cancel_friend_request
Cancel friend request
Cancel a friend request you previously sent.
輸入參數userId必填
forum_list_categories
List forum categories
List all Discourse forum categories at community.argo.games. Call this first when the user wants to post a bug report or feature request — you need the categoryId to create a topic.
無需輸入參數。
forum_list_topics
List forum topics
List topics in a specific forum category. Provide categorySlug and/or categoryId — given only one, the other is resolved from the category list automatically. Use forum_list_categories to discover categories.
輸入參數categoryIdcategorySlug
forum_get_latest_topics
Get latest forum topics
Get the latest active topics across all forum categories.
無需輸入參數。
forum_read_topic
Read forum topic
Read the full content of a forum topic including all posts and replies. Post bodies are returned as plain text (HTML markup is stripped).
輸入參數topicId必填
Search forum topics and posts. Supports Discourse search syntax: #category-slug to filter by category, @username to filter by author. Always search before creating a bug report or feature request to avoid duplicates.
輸入參數q必填
forum_get_user_posts
List my forum topics
List topics created by the current user on the forum.
無需輸入參數。
forum_get_notifications
Get forum notifications
Get the current user's forum notifications (replies, mentions, likes).
無需輸入參數。
forum_create_topic
Create forum topic
Create a new forum topic (bug report, feature request, or general discussion). Always call forum_search first to check for duplicates. Call forum_list_categories to get the correct categoryId.
輸入參數raw必填title必填categoryId必填
forum_reply
Reply to forum topic
Reply to an existing forum topic.
輸入參數raw必填topicId必填