DalamudMCP
Windows-local MCP server and Dalamud plugin for observing FFXIV state and executing opt-in actions.
Install / Use
claude mcp add getsetmind -- npx -y github:getsetmind/DalamudMCPIf the server publishes to npm under a different name, use that package instead — check the repo README.
MCP Server
Model Context Protocol server
Quality Score
Category
Development & EngineeringSupported Platforms
Tags
Our assessment of DalamudMCP
DalamudMCP scores 81/100 on our quality scale, 3502nd of 4,583 Development & Engineering skills we index.
Its MCP Server is 16 KB long, well organised into 16 sections with 14 code examples: a thorough specification that gives an agent plenty to work with.
It has 10 GitHub stars, so there is little community track record yet; judge it on its content.
Maintenance, license and trust
- The repository was last updated about 2 months ago, so DalamudMCP is actively maintained.
- It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
- Its trust signals score 92/100, with 1 caution from licensing, adoption, age or documentation. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.
DalamudMCP compared with similar skills
All 4 of these similar skills score higher than DalamudMCP; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| DalamudMCP (this skill)by getsetmind | 81 | 10 | 58d ago | MCP Server |
| taste-skillby Leonxlnx | 100 | 101.2k | 2d ago | CLAUDE.md |
| Agent-Reachby Panniantong | 100 | 101.1k | 2d ago | CLAUDE.md |
| headroomby headroomlabs-ai | 100 | 77.6k | today | CLAUDE.md |
| ai-job-searchby ai-job-search-dev | 100 | 63.7k | 2d ago | CLAUDE.md |
Frequently asked questions
- How do I install DalamudMCP?
- Run
claude mcp add getsetmind -- npx -y github:getsetmind/DalamudMCP. The install tabs above show the steps for each supported agent. - Which AI agents does DalamudMCP work with?
- It is written for Claude Code and Claude Desktop, as a MCP Server file. Other agents that read the same format can often use it too.
- Is DalamudMCP safe to use?
- It is MIT-licensed and scores 92/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
- Is DalamudMCP still maintained?
- The repository was last updated about 2 months ago, so DalamudMCP is actively maintained.
Skill content
View source on GitHubDalamudMCP: FFXIV MCP Server for Dalamud
<!-- mcp-name: io.github.getsetmind/dalamudmcp -->DalamudMCP is a Windows-local Model Context Protocol (MCP) server and Dalamud plugin for Final Fantasy XIV (FFXIV / FF14).
It connects MCP-compatible AI clients and a command-line interface to a running game session through a current-user-only local bridge.
日本語: セットアップガイド
[!IMPORTANT] DalamudMCP requires Windows, Final Fantasy XIV, and Dalamud. Observation tools are enabled by default, while actions and unsafe integrations require explicit opt-in from the plugin UI.
Requirements
- Windows with Final Fantasy XIV running through XIVLauncher and Dalamud
- .NET 10 SDK for building and running the CLI from source
- a local Dalamud development installation for building the plugin
Quick Start
Build the plugin and CLI:
.\build\restore.ps1
.\build\build.ps1 -NoRestore
Load src/DalamudMCP.Plugin/bin/Debug/DalamudMCP.dll as a development plugin, then start the stdio MCP server:
dotnet run --project .\src\DalamudMCP.Cli\DalamudMCP.Cli.csproj -- serve mcp
After version 1.1.0 is available on NuGet.org, the CLI can also be run without a permanent installation:
dnx DalamudMCP.Cli@1.1.0 --yes serve mcp
For plugin loading, HTTP transport, security settings, and release packaging, see Install And Run.
How It Works
The current codebase is built around:
- one handwritten operation file per tool
- the same operation definition drives both CLI and MCP
- the plugin owns live game execution
- the CLI and MCP layers talk to the plugin over a local named pipe
What You Get
- direct CLI commands such as
player contextandinventory summary - MCP over
stdiowithserve mcp - MCP over bearer-authenticated local HTTP with
serve http - plugin auto-discovery so normal CLI usage does not need a manual pipe name
- a plugin settings window that shows runtime health and can start the bundled HTTP server
- generic game action execution, Lumina Excel exploration, and plugin lifecycle/package management
Safety Defaults
DalamudMCP is observation-first, but it can expose broad mutation capabilities when the user enables them.
- observation tools are enabled by default
- action tools are default-off until you enable them in the plugin UI
- unsafe integration tools are default-off and hidden behind a separate developer toggle
- an explicit capability policy overrides the legacy toggles and is enforced again for every invocation
- confirm-once policies show the exact arguments in the plugin UI and consume approval after one matching retry
- policies can constrain plugin names, action IDs, jobs, territories, sheets, callgates, targets, result counts, and calls per minute
- denied capabilities are omitted from
tools/list
This is intentional. The public surface should stay conservative unless you explicitly widen it.
Current Tool Surface
The table below is generated from the operation attributes in src/DalamudMCP.Plugin/Operations.
Run ./build/update-tools.ps1 after adding or renaming a tool; CI checks the generated block with ./build/update-tools.ps1 -Check.
| MCP tool | Operation ID | Source |
| --- | --- | --- |
| capture_game_screenshot | game.screenshot | GameScreenshotOperation.cs |
| events_configure | events.configure | GameEventOperations.cs |
| events_query | events.query | GameEventOperations.cs |
| events_wait | events.wait | GameEventOperations.cs |
| game_action_execute | game.action.execute | GameActionExecuteOperation.cs |
| game_action_resolve | game.action.resolve | GameActionResolveOperation.cs |
| game_data_describe_sheet | game-data.describe-sheet | GameDataOperations.cs |
| game_data_get_row | game-data.get-row | GameDataOperations.cs |
| game_data_list_sheets | game-data.list-sheets | GameDataOperations.cs |
| game_data_search | game-data.search | GameDataOperations.cs |
| get_addon_list | addon.list | AddonListOperation.cs |
| get_addon_strings | addon.strings | AddonStringsOperation.cs |
| get_addon_tree | addon.tree | AddonTreeOperation.cs |
| get_available_quests | quest.available | AvailableQuestsOperation.cs |
| get_chat_log | chat.read | ChatLogReadOperation.cs |
| get_condition_context | condition.context | ObservationOperations.cs |
| get_current_quest_objective | quest.current-objective | CurrentQuestObjectiveOperation.cs |
| get_duty_context | duty.context | DutyContextOperation.cs |
| get_fate_context | fate.context | FateContextOperation.cs |
| get_inventory_currencies | inventory.currencies | ObservationOperations.cs |
| get_inventory_equipment | inventory.equipment | ObservationOperations.cs |
| get_inventory_items | inventory.items | ObservationOperations.cs |
| get_inventory_summary | inventory.summary | InventorySummaryOperation.cs |
| get_nearby_interactables | nearby.interactables | NearbyInteractablesOperation.cs |
| get_party_context | party.context | ObservationOperations.cs |
| get_player_context | player.context | PlayerContextOperation.cs |
| get_quest_status | quest.status | QuestStatusOperation.cs |
| get_session_status | session.status | SessionStatusOperation.cs |
| get_target_context | target.context | ObservationOperations.cs |
| interact_with_target | interact.with.target | InteractWithTargetOperation.cs |
| invoke_plugin_ipc | plugin.ipc | SafeInvokePluginIpcOperation.cs |
| move_to_entity | move.to.entity | MoveToEntityOperation.cs |
| move_to_nearby_interactable | move.to.nearby.interactable | MoveToNearbyInteractableOperation.cs |
| plugin_data_poll | plugin.data.poll | PluginDataPollOperation.cs |
| plugin_data_subscribe | plugin.data.subscribe | PluginDataSubscribeOperation.cs |
| plugin_data_unsubscribe | plugin.data.unsubscribe | PluginDataUnsubscribeOperation.cs |
| plugin_describe | plugin.inspect.describe | PluginManagementOperations.cs |
| plugin_lifecycle | plugin.lifecycle.control | PluginManagementOperations.cs |
| plugin_list | plugin.inspect.list | PluginManagementOperations.cs |
| plugin_package | plugin.package.control | PluginManagementOperations.cs |
| reload_plugin | plugin.reload | PluginReloadOperation.cs |
| select_addon_menu_item | addon.select.menu-item | AddonSelectMenuItemOperation.cs |
| send_addon_callback_values | addon.callback.values | AddonCallbackValuesOperation.cs |
| send_addon_event | addon.event | AddonEventOperation.cs |
| send_addon_input | addon.input | AddonInputOperation.cs |
| slash_command | command.slash | SlashCommandOperation.cs |
| target_object | target.object | TargetObjectOperation.cs |
| teleport_to_aetheryte | teleport.to.aetheryte | TeleportToAetheryteOperation.cs |
| unsafe_invoke_plugin_ipc | unsafe.invoke.plugin-ipc | UnsafeInvokePluginIpcOperation.cs |
| use_duty_action | duty.action | DutyActionOperation.cs |
The generic Excel search is bounded to 100 returned rows, 10,000 scanned rows, and 500 ms per call. Plugin package operations only select manifests already present in Dalamud's configured repositories; the MCP request cannot supply an arbitrary download URL or CLR method name.
Manifold remains at 1.0.0 because it owns the operation and CLI layer, not MCP version negotiation. The MCP-facing layer uses the official C# SDK 2.1.0 and adds transport-independent effect, permission, schema, and execution metadata to the internal protocol descriptor.
The handwritten truth source for these operations lives under src/DalamudMCP.Plugin/Operations.
Install And Run
1. Build
.\build\restore.ps1
.\build\build.ps1 -NoRestore
If Dalamud is not installed in the default developer path, set DALAMUD_HOME or pass -DalamudHome to the build scripts.
$env:DALAMUD_HOME = 'C:\path\to\Hooks\dev'
.\build\build.ps1 -NoRestore -DalamudHome $env:DALAMUD_HOME
2. Install The Plugin
The active plugin is:
Build output:
Load that plugin in Dalamud, then open its configuration window.
3. Try The CLI
dotnet run --project .\src\DalamudMCP.Cli\DalamudMCP.Cli.csproj -- player context
dotnet run --project .\src\DalamudMCP.Cli
Truncated for display — read the full file on GitHub.
Related Skills
taste-skill
101.2kAgent skills that give coding agents taste: art direction, reference images and a browser check instead of generic AI pages
Agent-Reach
101.1kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
headroom
77.6kCompress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.
ai-job-search
63.7kThe job search that runs on your machine. AI job application framework built on Claude Code: evaluate postings, tailor CVs, write cover letters, prep interviews. Fork it and own it.
Languages
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.
