argo-rpg-platform avatar

Argo Mcp

argo-rpg-platform/mcp

If you're running tabletop campaigns in Argo and want your AI assistant to pull character sheets, update lore, or prep sessions without switching windows, this is the bridge. It wraps Argo's campaign API behind OAuth2 and surfaces read/write tools for lore entries, character lookups, and session data. You can wire it into Claude Desktop, VS Code, or ChatGPT via stdio or the hosted HTTP endpoint at mcp.argo.games. The repo includes a companion skill pack (argo-agent-skills) with workflows for session prep, NPC generation, and post-game recaps. Auth is handled either through a local token store (npx argo-mcp auth login) or by environment variables for CI and Docker. One-click install buttons use VS Code's vscode:mcp/install protocol with dynamic client registration.

tools
65
auth
Secret needed
transport
STDIO, HTTP
env vars
3
last updated
May 14, 2026

Install

From registry metadata
$ npx add-mcp https://mcp.argo.games/mcp --name argo-mcp

Run in your terminal. add-mcp asks which agents to add it to (Claude Code, Codex, Cursor and more). Add -g to install it for every project.

Review the command, arguments and environment values before installing. MCP servers run with your local permissions.

Other ways

Claude Code

$ claude mcp add --transport http argo-mcp https://mcp.argo.games/mcp

Run in your terminal. Add --scope user to make it available in every project.

Tools

Verified live · 65 tools

Verified live against the running server on Nov 6, 2026.

list_campaignsList 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 st...

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 st...

No parameters. Call it with no arguments.

get_campaignRetrieve details of an Argo campaign (name, description, rule system, co-GMs).1 params

Retrieve details of an Argo campaign (name, description, rule system, co-GMs).

Parameters* required
campaignId*string
The ID of the campaign to retrieve.
create_campaignCreate 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.4 params

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.

Parameters* required
campaignName*string
Display name of the campaign.
description*string
Short description of the campaign's setting, tone, and premise.
gameSystemSlugstring
Optional explicit slug for the public URL (e.g. 'dnd5e'). If omitted, the server derives one from ruleSystem.
ruleSystem*string
Rule system the campaign uses. E.g. 'Dungeons & Dragons 5e', 'Pathfinder 2e', 'Forbidden Lands'. Free-form; the WebAPI derives the slug from this.
update_campaignUpdate 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.3 params

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.

Parameters* required
campaignDescriptionstring
New description (setting, tone, premise). Omit to leave unchanged. Pass an empty string to clear the existing description.
campaignId*string
ID of the campaign to update.
campaignNamestring
New display name. Omit to leave unchanged.
list_co_gmsList the assistant GMs (co-GMs) of a campaign.1 params

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

Parameters* required
campaignId*string
Campaign ID.
add_co_gmSend 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.2 params

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.

Parameters* required
campaignId*string
Campaign ID.
userId*string
Argo user ID of the user to promote to co-GM. Must be an existing user.
remove_co_gmRemove a co-GM from a campaign. Owner-only or self-removal.2 params

Remove a co-GM from a campaign. Owner-only or self-removal.

Parameters* required
campaignId*string
Campaign ID.
userId*string
User ID of the co-GM to remove.
describe_mnemon_typesReturns 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 fa...

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 fa...

No parameters. Call it with no arguments.

list_mnemonsList 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 1...5 params

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 1...

Parameters* required
campaignId*string
ID of the campaign.
limitinteger
Maximum entries to return (default 100).
offsetinteger
Entries to skip. Pass the nextOffset from the previous call to fetch the next page.
titlestring
Case-insensitive substring filter on title.
typestring
Mnemon type filter (NPC, Location, Quest, …).
search_mnemonsFull-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) an...4 params

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) an...

Parameters* required
campaignId*string
ID of the campaign.
limitinteger
Maximum results (default 20).
query*string
Text to find (case-insensitive substring) in mnemon titles, tags, and body content.
typestring
Mnemon type filter (NPC, Location, Quest, …).
get_mnemonGet 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 rewar...2 params

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 rewar...

Parameters* required
campaignId*string
Campaign ID.
entryId*string
Mnemon entry ID (hex) or exact title.
list_mnemon_relationshipsList 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.2 params

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.

Parameters* required
campaignId*string
entryId*string
create_npc_mnemonsCreate 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...2 params

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...

Parameters* required
campaignId*string
items*array
create_faction_mnemonsCreate 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.2 params

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.

Parameters* required
campaignId*string
items*array
create_location_mnemonsCreate 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.2 params

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.

Parameters* required
campaignId*string
items*array
create_quest_mnemonsCreate 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 thes...2 params

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 thes...

Parameters* required
campaignId*string
items*array
create_lore_mnemonsCreate Lore mnemons (world background, factions' beliefs, history). Players may not call this — GM/co-GM only.2 params

Create Lore mnemons (world background, factions' beliefs, history). Players may not call this — GM/co-GM only.

Parameters* required
campaignId*string
items*array
create_archive_mnemonsCreate Archive mnemons (archived lore that is no longer current). Players may not call this — GM/co-GM only.2 params

Create Archive mnemons (archived lore that is no longer current). Players may not call this — GM/co-GM only.

Parameters* required
campaignId*string
items*array
create_journal_mnemonsCreate Journal mnemons (log of in-world events). Players may not call this — GM/co-GM only.2 params

Create Journal mnemons (log of in-world events). Players may not call this — GM/co-GM only.

Parameters* required
campaignId*string
items*array
create_session_summary_mnemonsCreate 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.2 params

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.

Parameters* required
campaignId*string
items*array
create_custom_mnemonsCreate custom-typed mnemons (any free-form entry that doesn't fit the other types). Players may not call this — GM/co-GM only.2 params

Create custom-typed mnemons (any free-form entry that doesn't fit the other types). Players may not call this — GM/co-GM only.

Parameters* required
campaignId*string
items*array
update_npc_mnemonsUpdate 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 mult...2 params

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 mult...

Parameters* required
campaignId*string
items*array
update_faction_mnemonsUpdate 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.2 params

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.

Parameters* required
campaignId*string
items*array
update_location_mnemonsUpdate typed/meta fields of Location mnemons.2 params

Update typed/meta fields of Location mnemons.

Parameters* required
campaignId*string
items*array
update_quest_mnemonsUpdate 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...2 params

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...

Parameters* required
campaignId*string
items*array
update_lore_mnemonsUpdate typed/meta fields of Lore mnemons.2 params

Update typed/meta fields of Lore mnemons.

Parameters* required
campaignId*string
items*array
update_archive_mnemonsUpdate typed/meta fields of Archive mnemons.2 params

Update typed/meta fields of Archive mnemons.

Parameters* required
campaignId*string
items*array
update_journal_mnemonsUpdate typed/meta fields of Journal mnemons.2 params

Update typed/meta fields of Journal mnemons.

Parameters* required
campaignId*string
items*array
update_session_summary_mnemonsUpdate the recap, date, number and meta fields of SessionSummary mnemons. To change the story, use update_mnemons_content.2 params

Update the recap, date, number and meta fields of SessionSummary mnemons. To change the story, use update_mnemons_content.

Parameters* required
campaignId*string
items*array
update_player_mnemonsUpdate 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.2 params

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.

Parameters* required
campaignId*string
items*array
update_party_mnemonsUpdate 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.2 params

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.

Parameters* required
campaignId*string
items*array
update_custom_mnemonsUpdate typed/meta fields of Custom-typed mnemons.2 params

Update typed/meta fields of Custom-typed mnemons.

Parameters* required
campaignId*string
items*array
set_quest_objective_stateTick, 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. R...4 params

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. R...

Parameters* required
campaignId*string
Campaign ID.
entryId*string
The quest: entryId (hex) or exact title.
objectiveId*string
The objective, as get_mnemon's quest.objectives[].id names it.
state*string
open, done or failed.one of open · done · failed
update_mnemons_contentEdit 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...2 params

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...

Parameters* required
campaignId*string
items*array
create_mnemon_relationshipCreate 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),...6 params

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),...

Parameters* required
campaignId*string
colorstring
directionstring
Deprecated: leave unset. The label alone decides the edge's shape — its kind and how it reads belong to the word (Mnemon D29/D33), and the server refuses a contradiction.
label*string
one of MEMBER · ALLY · ENEMY · RIVAL · PARENT_OF · CONTAINS
sourceEntryId*string
targetEntryId*string
delete_mnemon_relationshipDelete a relationship by id.2 params

Delete a relationship by id.

Parameters* required
campaignId*string
relationshipId*string
delete_mnemonPermanently 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.2 params

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.

Parameters* required
campaignId*string
Campaign ID.
entryId*string
Mnemon entry ID (hex) or exact title.
create_sessionSchedule a campaign session. Provide an ISO-8601 startAt; endAt is optional. Useful for laying out planned arcs or recurring play nights.6 params

Schedule a campaign session. Provide an ISO-8601 startAt; endAt is optional. Useful for laying out planned arcs or recurring play nights.

Parameters* required
campaignId*string
Campaign ID.
descriptionstring
Optional session description / GM notes.
endAtstring
Session end time as an ISO-8601 instant.
invitedUserIdsarray
User IDs to invite (must be active campaign members).
startAt*string
Session start time as an ISO-8601 instant (e.g. '2026-06-01T19:00:00Z').
title*string
Session title (e.g. 'Session 12: The Dragon's Lair').
list_sessionsList campaign sessions for a given month (defaults to the current month).3 params

List campaign sessions for a given month (defaults to the current month).

Parameters* required
campaignId*string
Campaign ID.
monthinteger
Calendar month (1-12). Defaults to current month.
yearinteger
Calendar year. Defaults to current year.
get_sessionGet details of a single campaign session.2 params

Get details of a single campaign session.

Parameters* required
campaignId*string
Campaign ID.
sessionId*string
Session ID.
update_sessionReschedule a campaign session or edit its title/description. All fields optional. Owner-only on the backend.6 params

Reschedule a campaign session or edit its title/description. All fields optional. Owner-only on the backend.

Parameters* required
campaignId*string
Campaign ID.
descriptionstring
endAtstring
ISO-8601 instant.
sessionId*string
Session ID.
startAtstring
ISO-8601 instant.
titlestring
list_guildsList 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 fo...

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 fo...

No parameters. Call it with no arguments.

get_guildRetrieve full details of a guild (members, campaigns, calendar metadata).1 params

Retrieve full details of a guild (members, campaigns, calendar metadata).

Parameters* required
guildId*string
Guild ID to retrieve.
list_guild_membersList the members of a guild (id, role, status, invitedAt, joinedAt).1 params

List the members of a guild (id, role, status, invitedAt, joinedAt).

Parameters* required
guildId*string
Guild ID.
add_campaign_to_guildAdd 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).2 params

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).

Parameters* required
campaignId*string
Campaign ID to add to the guild.
guildId*string
Guild ID.
invite_guild_memberInvite a user to join the guild. Owner/Admin only.2 params

Invite a user to join the guild. Owner/Admin only.

Parameters* required
guildId*string
Guild ID.
userId*string
Argo user ID to invite.
remove_guild_memberRemove a member from the guild. Owner/Admin only.2 params

Remove a member from the guild. Owner/Admin only.

Parameters* required
guildId*string
Guild ID.
userId*string
User ID of the member to remove.
set_guild_member_roleChange 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.3 params

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.

Parameters* required
guildId*string
Guild ID.
role*string
New role.one of Owner · Admin · Member
userId*string
Member to change.
add_guild_calendar_eventAdd a new event to the guild's shared calendar. Owner/Admin only. startDateTime / endDateTime are ISO-8601 (e.g. 2026-06-12T19:00:00).5 params

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).

Parameters* required
descriptionstring
Optional event description.
endDateTimestring
Event end, ISO-8601 — optional.
guildId*string
Guild ID.
startDateTime*string
Event start, ISO-8601 (e.g. 2026-06-12T19:00:00).
title*string
Event title.
list_friendsList the current user's accepted friends.

List the current user's accepted friends.

No parameters. Call it with no arguments.

list_sent_friend_requestsList outgoing friend requests that are still pending.

List outgoing friend requests that are still pending.

No parameters. Call it with no arguments.

list_received_friend_requestsList incoming friend requests awaiting your response.

List incoming friend requests awaiting your response.

No parameters. Call it with no arguments.

send_friend_requestSend a friend request to another Argo user.1 params

Send a friend request to another Argo user.

Parameters* required
userId*string
Argo user ID of the counterparty.
accept_friend_requestAccept an incoming friend request from the given user.1 params

Accept an incoming friend request from the given user.

Parameters* required
userId*string
Argo user ID of the counterparty.
reject_friend_requestReject an incoming friend request from the given user.1 params

Reject an incoming friend request from the given user.

Parameters* required
userId*string
Argo user ID of the counterparty.
cancel_friend_requestCancel a friend request you previously sent.1 params

Cancel a friend request you previously sent.

Parameters* required
userId*string
Argo user ID of the counterparty.
forum_list_categoriesList 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.

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.

No parameters. Call it with no arguments.

forum_list_topicsList 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.2 params

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.

Parameters* required
categoryIdinteger
Numeric category ID. Provide this and/or categorySlug.
categorySlugstring
Category slug (e.g. 'bug-reports'). Provide this and/or categoryId.
forum_get_latest_topicsGet the latest active topics across all forum categories.

Get the latest active topics across all forum categories.

No parameters. Call it with no arguments.

forum_read_topicRead the full content of a forum topic including all posts and replies. Post bodies are returned as plain text (HTML markup is stripped).1 params

Read the full content of a forum topic including all posts and replies. Post bodies are returned as plain text (HTML markup is stripped).

Parameters* required
topicId*integer
Numeric Discourse topic ID.
forum_searchSearch 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.1 params

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.

Parameters* required
q*string
Search query. Supports Discourse search syntax (e.g. #category, @username).
forum_get_user_postsList topics created by the current user on the forum.

List topics created by the current user on the forum.

No parameters. Call it with no arguments.

forum_get_notificationsGet the current user's forum notifications (replies, mentions, likes).

Get the current user's forum notifications (replies, mentions, likes).

No parameters. Call it with no arguments.

forum_create_topicCreate 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.3 params

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.

Parameters* required
categoryId*integer
Numeric category ID. Call forum_list_categories first if unsure.
raw*string
Topic body in Markdown.
title*string
Topic title. Keep it concise and descriptive.
forum_replyReply to an existing forum topic.2 params

Reply to an existing forum topic.

Parameters* required
raw*string
Reply body in Markdown.
topicId*integer
Numeric Discourse topic ID to reply to.

Sponsors

Configuration

OAUTH_TOKEN*secret

Argo OAuth2 access token from the consent flow at https://app.argo.games/oauth2/mcp-connect

REFRESH_TOKENsecret

Argo OAuth2 refresh token. Enables automatic renewal of the access token when it expires (~1 hour).

ARGO_API_BASE

Override the Argo WebAPI base URL. Defaults to https://api.argo.games.

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:

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

View the full README on GitHub

Details

Repository
github.com/argo-rpg-platform/mcp
Website
app.argo.games/docs/mcp
Categories
Sales & Marketing, Data & Analytics
Package
argo-mcp
Transport
STDIO, HTTP
Auth
Required
Registry
MCP registry, active
Tools verified
Nov 6, 2026

Related Sales & Marketing MCP servers

View all
1br0ski777 avatarKeyword Research APIbr0ski777/keyword-research-x402SEO keyword research with Google Suggest, intent scoring, long-tail discovery. x402.0stars
2incwo avatarIncwo MCPio.github.incwo/incwoSecure MCP server for exploring incwo CRM data, documents, and email workflows.0stars
3indotender avatarIndoTenderindotender/indotender-mcpIndonesian government procurement — LPSE tenders, Inaproc data, and company profiles.0stars
4introman2023 avatarTonzar B2B Russian Export Marketplaceintroman2023/tonzar-mcpSearch 160k+ Russian B2B products from 8,900+ verified manufacturers (EN/RU).0stars
5ivanolegvak avatarSONAR: KYB due diligenceivanolegvak/getsonar-mcpCompany register lookups and KYB checks: registries, sanctions, PEP, offshore leaks, adverse media.0stars
6kimjin8 avatarCall For Mekimjin8/calling-mcpGive your AI agent a phone. Place outbound calls to US businesses to ask, book, or confirm.0stars