Argo Mcp

io.github.Argo-RPG-Platform由 GitHub 帳號 Argo-RPG-Platform 發布v1.0.3更新於 Oct 24, 2026

MCP server for Argo RPG Platform — connects AI assistants to campaign data via OAuth2

已驗證Streamable HTTP可網頁執行效率與工作流知識與記憶溝通與協作

概覽

AI 產生的概覽

將 AI 助理接入 Argo 桌上角色扮演戰役,可讀寫設定條目、任務、場次、公會與論壇內容。

可以做什麼
  • 瀏覽戰役及其副主持人,建立或更新戰役資訊
  • 列出、搜尋、讀取並編輯設定條目(NPC、陣營、地點、任務、傳說、日誌、場次總結)及其關聯關係
  • 勾選、標記失敗或重開任務目標,並安排或列出戰役場次
  • 管理公會、成員與公會行事曆活動,以及好友與好友邀請
  • 閱讀並在 Argo 社群論壇發文
適用情境
適合希望讓助理草擬或查詢戰役設定、維護任務與場次紀錄,或在對話中處理排程與社群論壇事務的主持人與玩家。
執行需求
可使用 mcp.argo.games 託管端點(透過動態用戶端註冊完成 OAuth),或在本地以 Node.js 20 以上執行 npm 套件 argo-mcp。需要一個至少含一個戰役的 Argo 帳號,以及由主持人授權的 OAuth2 授權;權杖來自 Argo 授權流程,透過 OAUTH_TOKEN(可選 REFRESH_TOKEN)提供,或由 auth login 指令儲存。
安裝前請注意
OAUTH_TOKEN 與 REFRESH_TOKEN 等同密碼,需妥善保管;授權時依所選戰役與唯讀或讀寫權限範圍授予。許多工具會建立、修改或刪除戰役資料,delete_mnemon 無法復原且僅限主持人。好友邀請、公會邀請與論壇發文對其他使用者可見。請求會轉送至 Argo WebAPI 與授權伺服器。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Argo Mcp,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/io.github.Argo-RPG-Platform%2Fargo-mcp/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "argo": {
      "type": "http",
      "url": "https://mcp.argo.games/mcp"
    }
  }
}

README

Argo MCP Server

Connects AI assistants to your Argo campaigns via the Model Context Protocol. Once configured, your AI assistant can read and write campaign lore, look up character details, and interact with Argo data directly from the chat interface.

Supported clients: Claude Code, Claude Desktop, OpenAI Codex, VS Code (1.103+), and any MCP-compatible host.

One-click install

[Install in VS Code] [Install in VS Code Insiders]

Clicking either button hands a vscode:mcp/install URL to your editor with this config:

json
{ "type": "http", "url": "https://mcp.argo.games/mcp" }

VS Code stores the entry in your user-level mcp.json, then negotiates OAuth on first connect via Dynamic Client Registration against the Argo authorization server. No tokens are embedded in the URL — VS Code stores the resulting access and refresh tokens in your OS keychain.

Linux / Flatpak / Snap note: If clicking the button doesn't open VS Code, the vscode: URL handler isn't registered. This is common on:

  • Flatpak / Snap VS Code — the sandbox isolates the install from the host, so the host browser can't find the protocol handler.
  • Tarball / manual installs — no postinst hook runs update-desktop-database. Either run xdg-mime default code.desktop x-scheme-handler/vscode once, or use the manual fallback below.

Manual fallback: copy the JSON from the VS Code (one-click, recommended) section below into your VS Code mcp.json config.

The same install button is rendered on the Argo install page at https://app.argo.games/docs/mcp/install.


Prerequisites

  • Node.js 20 or later
  • An Argo account with at least one campaign
  • A Game Master must authorize the AI assistant via the OAuth2 consent flow (see Getting a token)

Quick start

There are three supported ways to use the Argo MCP server. Pick the one that matches your client.

ChatGPT (remote)

Use the hosted endpoint — do not install the npx package. Add this MCP server URL to ChatGPT:

https://mcp.argo.games/mcp

ChatGPT will walk you through OAuth on first connect via dynamic client registration.

Local MCP clients (Claude Code, Claude Desktop, Codex, etc.) — recommended

Sign in once on the machine that runs the MCP client:

bash
npx -y argo-mcp auth login

The command prints the consent URL, opens nothing, and asks you to paste the access token (and optionally the refresh token) from the consent page. Tokens are saved locally:

  • Windows: %APPDATA%\argo-mcp\tokens.json
  • macOS: ~/Library/Application Support/argo-mcp/tokens.json
  • Linux: ${XDG_CONFIG_HOME:-~/.config}/argo-mcp/tokens.json

Then configure the MCP server with no env vars:

json
{  "mcpServers": {    "argo": { "command": "npx", "args": ["-y", "argo-mcp"] }  }}

Other auth commands:

bash
npx -y argo-mcp auth status   # show whether you are signed innpx -y argo-mcp auth logout   # forget locally stored tokens

Local stdio mode does not use OAuth Dynamic Client Registration. DCR is only used by the hosted HTTP server at https://mcp.argo.games.

Advanced — environment variables

For CI, Docker, or anyone who prefers explicit env config, you can skip auth login and pass tokens directly. OAUTH_TOKEN always wins over the local token store.

json
{  "mcpServers": {    "argo": {      "command": "npx",      "args": ["-y", "argo-mcp"],      "env": {        "OAUTH_TOKEN": "<your-access-token>",        "REFRESH_TOKEN": "<your-refresh-token>"      }    }  }}

Build from source (contributors)

bash
git clone https://github.com/Argo-RPG-Platform/MCP.git argo-mcpcd argo-mcpnpm installnpm run build

Getting a token

The MCP server authenticates with Argo using an OAuth2 access token tied to a specific set of campaigns. Tokens are obtained through the Argo consent flow:

  1. Open https://app.argo.games/oauth2/mcp-connect in your browser.
  2. Select the campaigns you want the AI assistant to access and the permission level (read or read+write).
  3. Click Authorize. You will be redirected to a page showing two tokens:
    • Access token — set this as OAUTH_TOKEN
    • Refresh token — set this as REFRESH_TOKEN (recommended; enables automatic renewal when the access token expires after ~1 hour)

Treat both tokens like passwords. Revoke them at any time from the campaign's integrations page.


Configuration

VS Code (one-click, recommended)

Use the install buttons at the top of this README, or paste the following into a .vscode/mcp.json (per-workspace) or your user-level MCP config:

json
{  "servers": {    "argo": {      "type": "http",      "url": "https://mcp.argo.games/mcp"    }  }}

VS Code handles OAuth automatically via Dynamic Client Registration on first connect. There is no need to set OAUTH_TOKEN or REFRESH_TOKEN — VS Code stores tokens in the OS keychain.

Claude Code

Add the server with the CLI:

bash
claude mcp add argo \  --command node \  --args /absolute/path/to/argo-mcp/dist/index.js \  --env OAUTH_TOKEN=<your-access-token> \  --env REFRESH_TOKEN=<your-refresh-token>

Or add it manually to your project's .claude/settings.json:

json
{  "mcpServers": {    "argo": {      "command": "node",      "args": ["/absolute/path/to/argo-mcp/dist/index.js"],      "env": {        "OAUTH_TOKEN": "<your-access-token>",        "REFRESH_TOKEN": "<your-refresh-token>"      }    }  }}

Claude Desktop

Edit your Claude Desktop config file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
json
{  "mcpServers": {    "argo": {      "command": "node",      "args": ["/absolute/path/to/argo-mcp/dist/index.js"],      "env": {        "OAUTH_TOKEN": "<your-access-token>",        "REFRESH_TOKEN": "<your-refresh-token>"      }    }  }}

Restart Claude Desktop after saving.

OpenAI Codex

Add the server to your Codex MCP configuration:

json
{  "mcpServers": {    "argo": {      "command": "node",      "args": ["/absolute/path/to/argo-mcp/dist/index.js"],      "env": {        "OAUTH_TOKEN": "<your-access-token>",        "REFRESH_TOKEN": "<your-refresh-token>"      }    }  }}

ChatGPT App Submission

For the hosted ChatGPT app surface, this repo exposes OAuth discovery, dynamic client registration, and domain verification endpoints on the MCP domain. The submission checklist and required env vars are in CHATGPT_APP_SUBMISSION.md.

Using a .env file (local dev)

Create a .env file in the argo-mcp directory:

OAUTH_TOKEN=<your-access-token>REFRESH_TOKEN=<your-refresh-token>

Then run directly:

bash
npm run dev       # hot-reload via tsx# ornpm start         # compiled dist/

Pre-built Agent Skills

Once the MCP is connected, you can install the argo-agent-skills plugin to get ready-made Game Master workflows that orchestrate the tools below — session prep, post-session recap, NPC generation, and a guided MCP setup walkthrough. The same skill source ships parallel packaging for Claude (Code + Claude.ai) and OpenAI-compatible clients (Codex, ChatGPT).

Claude Code:

/plugin marketplace add Argo-RPG-Platform/argo-agent-skills/plugin install argo-gm-pack@argo

Claude.ai / Codex / ChatGPT: download the per-target zip from the latest release and follow the upload steps in that repo's README.

See the Argo Skills docs for the full list of skills, examples, and authoring guidance for your own.


Available tools

This server exposes tools across campaigns, mnemons, sessions, guilds, friends, and the Argo community forum.

Campaigns

  • list_campaigns (campaign.read) lists accessible campaigns and their access level
  • get_campaign (campaign.read) retrieves campaign details
  • create_campaign (campaign.create) creates a new campaign
  • update_campaign (campaign.write) updates campaign name or description
  • list_co_gms (campaign.read) lists assistant GMs
  • add_co_gm (campaign.write) adds an assistant GM
  • remove_co_gm (campaign.write) removes an assistant GM

Mnemons

  • describe_mnemon_types lists supported mnemon types, relationship labels, and content-block rules
  • list_mnemons (campaign.read) lists mnemon entries for a campaign
  • get_mnemon (campaign.read) retrieves a mnemon entry in full
  • list_mnemon_relationships (campaign.read) lists linked entries and relationship edges
  • create_*_mnemons (campaign.write) creates typed mnemon entries for NPC, Location, Quest, Lore, Archive, Journal, SessionSummary, Player, and Custom entries
  • update_*_mnemons (campaign.write) updates typed/meta fields for those mnemon entry types; the quest tools also write a quest's objectives, reward chips, background and GM notes
  • set_quest_objective_state (campaign.write) ticks, fails or reopens one quest objective by its id
  • update_mnemons_content (campaign.write) edits mnemon content blocks
  • create_mnemon_relationship (campaign.write) creates a relationship between entries
  • delete_mnemon_relationship (campaign.write) deletes a relationship by ID

Sessions

  • create_session (campaign.write) schedules a campaign session
  • list_sessions (campaign.read) lists sessions for a campaign and month
  • get_session (campaign.read) retrieves a single session
  • update_session (campaign.write) updates a session's schedule or text

Guilds

  • list_guilds (guild.read) lists guilds the current user belongs to
  • get_guild (guild.read) retrieves guild details
  • list_guild_members (guild.read) lists guild members
  • add_campaign_to_guild (guild.write) links a campaign to a guild
  • invite_guild_member (guild.admin) invites a guild member
  • remove_guild_member (guild.admin) removes a guild member
  • set_guild_member_role (guild.admin) changes a guild member's role
  • add_guild_calendar_event (guild.admin) adds a guild calendar event

Friends

  • list_friends (friends.read) lists accepted friends
  • list_sent_friend_requests (friends.read) lists outgoing pending requests
  • list_received_friend_requests (friends.read) lists incoming pending requests
  • send_friend_request (friends.write) sends a friend request
  • accept_friend_request (friends.write) accepts a request
  • reject_friend_request (friends.write) rejects a request
  • cancel_friend_request (friends.write) cancels a sent request

To bring someone into a campaign or guild, use invite_guild_member or send_friend_request — the MCP surface does not send email to addresses outside your existing Argo context.

Forum

  • forum_list_categories (forum.read) lists forum categories
  • forum_list_topics (forum.read) lists topics in a category
  • forum_get_latest_topics (forum.read) lists recent forum activity
  • forum_read_topic (forum.read) reads a topic thread
  • forum_search (forum.read) searches forum content
  • forum_get_user_posts (forum.read) lists the current user's topics
  • forum_get_notifications (forum.read) lists the current user's notifications
  • forum_create_topic (forum.write) creates a new topic on community.argo.games
  • forum_reply (forum.write) replies to an existing topic on community.argo.games

Many campaign-scoped tools accept campaignId. You can find a campaign's ID from the Argo campaign URL or by asking the GM.


Token renewal

The access token expires after approximately one hour. If REFRESH_TOKEN is configured, the server automatically fetches a new access token on the first request that returns a 401 and retries transparently — no action required.

If no refresh token is set and the access token expires, the tool will return:

Token expired — re-consent at https://app.argo.games/oauth2/mcp-connect

Re-run the consent flow at that URL to get fresh tokens.


Revoking access

To disconnect the AI assistant from a campaign, revoke the grant from the campaign's integrations page in the Argo WebApp. The access token and refresh token will both become invalid immediately.


Environment variables

VariableRequiredDescription
OAUTH_TOKENIf not signed in via auth loginOAuth2 access token from the consent flow
REFRESH_TOKENRecommendedOAuth2 refresh token; enables automatic renewal
ARGO_API_BASENoOverride the API base URL (default: https://api.argo.games)
ARGO_MCP_TOKEN_PATHNoOverride the local token file path used by auth login

Privacy Policy

Full policy: https://argo.games/privacy

What the Argo MCP server handles:

  • Data collected. OAuth access and refresh tokens issued by the Argo authorization server (oauth.argo.games); the campaign, mnemon, guild, forum, and friends payloads that pass through tool calls; standard HTTP metadata (IP, user agent) for rate limiting and abuse mitigation.
  • Usage. Tool calls are proxied to the Argo WebAPI (api.argo.games) on behalf of the authenticated user. Tokens are cached in-process for the lifetime of an MCP session so clients that omit Authorization on subsequent requests (a known Claude Code behaviour) keep working.
  • Storage & retention. Session token cache is in-memory only and is evicted after 30 minutes of inactivity. No user content (mnemons, campaigns, forum posts) is persisted by the MCP server — it is forwarded to the WebAPI and discarded. Logs retain only request metadata, not payload contents.
  • Third-party sharing. Requests are forwarded only to the Argo WebAPI and (during the OAuth flow) the Argo authorization server. No other third parties receive request data from this server.
  • Contact. Privacy questions: [email protected]. Security disclosures: see the SECURITY policy on the Argo GitHub organization.

The hosted privacy policy at the link above is the authoritative version and covers the full Argo platform including the WebAPI and WebApp.


License

MIT — see LICENSE.

來源:README.md,提交 0b76ce8

工具

65

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.

無需輸入參數。

get_campaign

Get campaign

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_co_gms

List co-GMs

List the assistant GMs (co-GMs) of a campaign.

輸入參數campaignId必填

add_co_gm

Add co-GM

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_co_gm

Remove co-GM

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_mnemons

List mnemons

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_mnemon

Get mnemon

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: ![caption](asset:<assetId>@<campaignId>) — 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_session

Get session

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_guilds

List guilds

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.

無需輸入參數。

get_guild

Get guild

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_friends

List friends

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必填

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必填

版本歷史

1
  1. v1.0.3最新Sep 16, 2026

評分

已滿足適用檢查項的 100%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分