Game Development
larch.ink
An MCP server for Larch that lets users discover, render, and create playable branching visual-novel stories and story games.
ENDPOINT 1
https://larch.ink/mcp/app
MCP server metadata
- Name
- Larch
- Version
- 1.0.0
Larch (larch.ink) is where people make and play story games: visual novels, choose-your-own-adventures and RPGs. Play: search_stories (sort="newest" for the latest releases, kind="rpg" for RPGs), then render_stories with the ids you pick. Make a new story game in one step: optionally list_art_styles and get_art_style for picture ids, write the whole branching script yourself, then call create_story once. To change a story made that way: get_story, then update_story with the revision. Work on any of the user's projects, including big ones and RPGs: list_my_stories, larch_list_boards, then get_board (it returns the revision every edit needs); edit with larch_patch_node, larch_upsert_nodes and friends; for RPGs read larch_rpg_spec first. Read before you write, change only what the user asked for, and write a short summary. Larch saves a recoverable version before every change (larch_list_versions, larch_restore_version). Images: when the user wants a picture in their project, make it with your image generation tool — not with Python or code, whose files cannot be passed to Larch — or use one they attached, then pass its file id (a plain string like file_…) to add_image_to_project. If image generation is not available to you right now, say so and ask the user to generate or attach the picture in their next message. It can also become a card background, a character expression or a bag item picture. Game-wide settings (text speed, title screen, arrow keys, player buttons…), extensions and the inventory bag: get_project_settings, then update_project_settings, edit_project_extension (for example the bag button and look) and edit_inventory_items (bag items). Numbers: get_story_stats for one project, get_creator_stats for the whole account. Publishing is public, so only do it when the user asks: larch_publish_game, larch_update_listing, larch_share_link, post_to_teahouse, write_devlog with publish=true, publish_asset_pack, larch_publish_plugin. If the user asks for something these tools cannot do, or a tool fails in a way that looks like a Larch bug, send it to the Larch team with larch_send_feedback (kind "feature" or "bug") and tell the user you did.
Known tools 70
search_storiesUse this when the user wants to find an interactive story, visual novel, RPG or story game to play, or asks what is new on Larch.
Inferred read-onlyrender_storiesShows 1-8 Larch stories as cards the user can play right in the conversation.
Inferred read-onlyget_art_styleReturns the background ids, character look ids (with their expression names) and music ids of one art style, for use in create_story or update_story.
Inferred read-onlycreate_storyCreates a playable branching visual-novel game in the user's Larch account from a story you write: scenes with dialogue, choices that branch to other scenes, and endings.
Potential side effectslist_my_storiesLists the projects in the user's Larch account, newest first, with their ids and status: visibility (private, shared by link, or public on the Larch store), delete protection, and plays and likes for published ones.
Potential side effectsget_storyReads one chapter of a Larch story as scenes, dialogue and choices, plus the revision needed by update_story.
Inferred read-onlyupdate_storyReplaces the scenes of one chapter created by create_story (or made only of dialogue and choice cards) with the complete revised script.
Inferred read-onlyshare_storyCreates (or refreshes) a public link anyone can open to play the story, without a Larch account.
Inferred read-onlyget_play_linkUsed by the Larch story card to start playing a story from the user's account.
Inferred read-onlyget_editor_linkUsed by the Larch story card to open the user's board in the Larch editor inside ChatGPT, where they can move cards and change text by hand.
Inferred read-onlyshow_story_boardOpens the whiteboard of one of the user's Larch projects inside the conversation: the map of scenes, choices and endings.
Inferred read-onlylarch_resolve_idUse when the user pastes a Larch id or link: tells whether it is a project, board, character, media item or asset pack, and returns the projectId to use next.
Inferred read-onlylarch_create_projectCreates a new, empty Larch project (for example to build an RPG or a story by hand).
Inferred read-onlylarch_update_interfaceEdits one part of the project's custom interface (Skills): title screen, dialogue box, choices, menu, inventory (bag) or RPG HUD.
Inferred read-onlylarch_list_boardsLists the boards (chapters, RPG maps, systems) in one of the user's projects with their ids, modes and card counts.
Inferred read-onlylarch_patch_nodeChanges fields of one card (dialogue lines, choices, title, background, stage, variables…) on a board.
Inferred read-onlylarch_upsert_boardAdds a board (a chapter, an RPG map board or a system board) or changes its name, description or mode.
Inferred read-onlylarch_upsert_nodesAdds new cards to a board, or replaces several cards, and connects them.
Inferred read-onlylarch_upsert_mediaAdds an item to the project's media library from an https URL, or renames or recategorizes one.
Inferred read-onlylarch_list_asset_packsLists the asset packs in the user's Larch account (backgrounds, characters, music, sound effects, UI).
Inferred read-onlylarch_rpg_specReturns the specification for RPG projects: maps, tiles, layers, events, characters, battles, items, inventory (bag) and settings.
Inferred read-onlylarch_rpg_editPaints tiles and layers, and adds or changes events, NPCs, doors, chests and triggers on an RPG map.
Inferred read-onlylarch_rpg_battleCreates or edits a turn-based battle card: enemies, stats, skills, background and rewards.
Inferred read-onlylarch_rpg_databaseReads or replaces the RPG character database: heroes, party members and shared townsfolk with their sprites, portraits and classes.
Inferred read-onlylarch_rpg_libraryReads or replaces the RPG item list (what goes in the bag), enemies, equipment and skills.
Inferred read-onlylarch_rpg_settingsReads or changes RPG settings: online multiplayer, character select, the in-game menu and the battle screen.
Inferred read-onlylarch_list_pluginsSearches Larch extensions (plugins that add cards, panels or buttons to the editor), including the user's own.
Inferred read-onlylarch_publish_pluginSends an extension to the Larch store for review, or updates it.
Inferred read-onlylarch_save_plugin_draftSaves an extension as a private test version only the user can see, to try it in their own projects before publishing.
Inferred read-onlylarch_install_pluginInstalls a store extension into the user's account (or removes it), so its cards appear in the editor.
Inferred read-onlylarch_list_charactersLists the character profiles in one of the user's projects: names, roles, portraits, expressions and voices.
Inferred read-onlylarch_upsert_characterCreates or edits a character profile: name, role, personality, backstory, speaking style, portrait and expressions.
Inferred read-onlylarch_list_versionsLists the automatic and named versions saved for a project, newest first, to find one to restore.
Inferred read-onlylarch_preview_projectMakes a short-lived private link to play or view the user's project as it is right now, to check a change.
Inferred read-onlylarch_list_publishedLists the user's works on the Larch store with their listing details and versions.
Inferred read-onlylarch_publish_gamePublishes the project on the Larch store, or updates the version players get.
Inferred read-onlylarch_update_listingChanges a published game's store page (title, description, cover, tags, remix, AI disclosure) without publishing a new version.
Inferred read-onlylarch_set_ai_disclosureSets which parts of a published game used AI, shown on its store page.
Inferred read-onlylarch_share_linkCreates or refreshes a public play link (and an optional read-only board link) for the project.
Inferred read-onlyget_story_statsShows the status and numbers of one of the user's Larch projects: whether it is private, shared by link or published on the Larch store, delete protection, password, age rating and AI disclosure; for published games also views, plays, likes, favorites, comments, danmaku, followers, per-chapter numbers, how many runs were finished and which options players picked at each choice.
Potential side effectsget_creator_statsShows the numbers for the user's whole Larch creator account: published works with their views, plays, likes, comments and danmaku (with totals), unanswered comments, followers, dev log reads, pinecoin balance and pinecoin+ tips and purchases received in the last 30 days.
Inferred read-onlylist_my_postsLists the user's dev log articles (drafts and published) and their recent Teahouse posts, with ids, status, reads, likes and comments.
Inferred read-onlypost_to_teahousePosts a short update to the Larch Teahouse, the creators' feed (up to 500 characters, up to 4 images, optional poll, optional link to one of the user's projects).
Potential side effectsedit_teahouse_postChanges the text, mood or visibility of one of the user's Teahouse posts, or deletes it for good.
Inferred read-onlywrite_devlogCreates or edits an article on the user's Larch dev log (開發日誌), written in Markdown (headings, lists, quotes, code, images, links).
Inferred read-onlypublish_asset_packPuts one of the user's asset packs (from larch_list_asset_packs) on the Larch asset store for free, or updates that listing.
Inferred read-onlyget_project_settingsReads a Larch project's game-wide settings: how dialogue plays (text speed, typing sound, auto-play, arrow keys), the title screen, the stage, the CG gallery, the player buttons; which extensions it uses with their settings (for example the inventory bag: its button, look and every item, with the cards that give each item); the custom interface parts (Skills); and its variables.
Inferred read-onlyupdate_project_settingsChanges game-wide settings of a Larch project: text speed and typing sound, auto-play pause, click-anywhere, starting music volume, background shade, stage fit, the title screen and its options, return to title at the end, arrow-key paging, the CG gallery, play analytics, age rating, browser tab title and icon, the project picture, the title background and the buttons under the dialogue box.
Inferred read-onlyedit_project_extensionSwitches an extension on or off for one Larch project and changes its settings, checked against the fields the extension declares (see get_project_settings → extensions[].fields).
Inferred read-onlyedit_inventory_itemsAdds, changes or removes items in a Larch project's inventory bag (the item library in Item management).
Inferred read-onlyget_boardReads one board (a chapter, an RPG map board or a system board) of the user's Larch project: an outline of every card (id, type, title, first line, choices) with the connections, plus the full data of the cards listed in nodeIds.
Inferred read-onlyread_card_fieldReads one field of a card in pieces: the text get_board leaves out of a card too large to return whole (a plugin card's HTML, a mini game, a long JSON value such as a phone UI's posts and messages).
Inferred read-onlyadd_image_to_projectSaves an image from this conversation — one the user uploaded, or one ChatGPT just generated — into the user's Larch project media library, and can use it right away as a card background or a character's expression.
Inferred read-onlyCONNECT WITH APPROVAL
Client installation
Review this server and its permissions before adding it. Secret placeholders must be set locally.
Codex
~/.codex/config.toml
[mcp_servers.larch]
url = "https://larch.ink/mcp/app"
enabled = true
Claude Code
.mcp.json
{
"mcpServers": {
"larch": {
"type": "http",
"url": "https://larch.ink/mcp/app"
}
}
}
Claude Desktop
Settings → Connectors → Add custom connector
Name: larch
Remote MCP URL: https://larch.ink/mcp/app
Add this remote URL as a custom connector in Claude Desktop. Availability depends on the user plan and workspace policy.
Cursor
.cursor/mcp.json
{
"mcpServers": {
"larch": {
"url": "https://larch.ink/mcp/app"
}
}
}
Visual Studio Code
.vscode/mcp.json
Add to Visual Studio Code{
"servers": {
"larch": {
"type": "http",
"url": "https://larch.ink/mcp/app"
}
}
}
Generic MCP
Client-specific MCP configuration
{
"name": "larch",
"transport": "streamable-http",
"url": "https://larch.ink/mcp/app"
}
MCP Inspector
Run the official MCP Inspector locally and enter the indexed Streamable HTTP endpoint.
TRUST AND VERIFICATION EVIDENCE
Loading Trust v2 evidence…
Checking the associated registrable domain. The BuiltWith key remains server-side.
Evidence is source-attributed and does not guarantee that a third-party server is safe. Risk labels are conservative metadata heuristics.