playfab-mcp-server

akiojin/playfab-mcp-server

3.2

If you are the rightful owner of playfab-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

PlayFab MCP Server is a middleware that enables large language models to interact directly with PlayFab services.

Tools

Functions exposed to the LLM to take actions

search_items

Searches for items in the PlayFab catalog (Economy v2). Use this when you need to find items by name, type, or other properties. Common uses: Finding all weapons, searching for items containing 'sword', filtering by price range. Returns item details including ID, name, description, and prices. Supports pagination for large result sets. Use the returned items' IDs with inventory management tools.

get_all_segments

Retrieves an array of player segment definitions. Results from this can be used in subsequent API calls such as GetPlayersInSegment which requires a Segment ID. While segment names can change the ID for that segment will not change.

get_players_in_segments

Retrieves a paginated list of player profiles in a specific segment.Use SegmentId to specify the segment. Use ContinuationToken for pagination.

add_inventory_items

Grants items or virtual currency to a player's inventory. Use this when you need to: 1) Give rewards to players, 2) Add purchased items, 3) Grant virtual currency (use currency item ID). For bulk operations across multiple players, use grant_items_to_users instead. Note: In Economy v2, virtual currencies are items - use their item IDs, not currency codes.

delete_inventory_items

Deletes items from a player's inventory. You must specify the Item (InventoryItemReference object) and TitlePlayerAccountId. Warning: This permanently removes items from the player's inventory.

subtract_inventory_items

Subtracts a specific amount of items from a player's inventory. Use this to reduce item quantities without completely removing them.

update_inventory_items

Updates properties of existing inventory items. Use this to modify item metadata, display properties, or custom data.

get_inventory_items

Retrieves the current inventory items for a specific player.You must provide the TitlePlayerAccountId.You can optionally specify a collection (CollectionId), a page size (Count), and a ContinuationToken for pagination.

get_inventory_collection_ids

Retrieves all inventory collection IDs for a specific player.Use this to list all collections before fetching items from them.

get_title_player_account_id_from_playfab_id

Converts a PlayFabId to TitlePlayerAccountId. IMPORTANT: Use this before any inventory operations! PlayFabId (from login/user info) ≠ TitlePlayerAccountId (needed for inventory). Example flow: Get PlayFabId from user data → Convert with this tool → Use result for inventory APIs.

execute_inventory_operations

Execute multiple inventory operations in a single batch request. Supports up to 50 operations per request. Operations are atomic - all succeed or all fail.

ban_users

Bans players from accessing the game. Use when: 1) Player violates terms, 2) Suspicious activity detected, 3) Temporary suspension needed. Can ban by: PlayFabId (specific player), IPAddress (block IP), MACAddress (block device). Set DurationInHours for temp bans, omit for permanent. Always include clear Reason for records.

revoke_all_bans_for_user

Removes all active bans for a specific player. This unbans the player completely.

get_user_account_info

Retrieves detailed account information for a player. Includes profile data, statistics, and linked accounts.

get_user_data

Retrieves custom data stored for a player. Can retrieve specific keys or all data.

update_user_data

Updates custom data for a player. Can set multiple key-value pairs at once.

set_title_data

Sets global game configuration visible to ALL players. Use for: 1) Game version info, 2) Event schedules, 3) Feature flags, 4) Global settings. Format: Key-value pairs. Value can be JSON string for complex data. WARNING: This is PUBLIC data - use set_title_internal_data for sensitive configs!

get_title_data

Retrieves global configuration data for the title. Can retrieve specific keys or all title data.

set_title_internal_data

Sets server-only title data that is not accessible by clients. Use this for sensitive configuration like API keys, server settings, etc.

get_title_internal_data

Retrieves server-only title data. This data is not accessible by game clients.

create_draft_item

Creates a new draft item in the catalog. Draft items must be published before they can be used. Use this to: 1) Add new items to your game, 2) Create virtual currency items, 3) Define bundles. After creation, use publish_draft_item to make it available to players.

update_draft_item

Updates an existing draft item in the catalog. Changes only affect the draft version until published.

delete_item

Permanently deletes an item from the catalog. WARNING: This cannot be undone! The item will be removed from all player inventories.

publish_draft_item

Publishes a draft item, making it available to players. Once published, the item can be purchased and used in the game.

get_item

Retrieves detailed information about a specific catalog item. Returns both draft and published versions if available.

Prompts

Interactive templates invoked by user choice

No prompts

Resources

Contextual data attached and managed by the client

No resources