# Epic Social Analytics MCP MCP

> Epic Online Services & Social Analytics provides deep access to the Epic Games ecosystem. Your agent can pull official player profiles, friend lists, and achievement statistics across various games. Resolve usernames into unique AccountIDs, check real-time presence, and audit community connections instantly.

## Overview
- **Category:** industry-titans
- **Price:** Free
- **Tags:** achievements, friend-lists, presence-tracking, player-stats, social-connections

## Description

Need social intelligence for players? This MCP connects your AI client directly to core data from the Epic Online Services platform. You can ask your agent to find a player’s unique ID using just their display name, then pull up all of that person's friends and what games they are currently playing. It also handles complex stats, letting you audit how rare specific achievements are for an entire community or check detailed technical scores from titles like Fortnite. If you need this kind of social data integrated into your agent's workflow, Vinkius hosts the whole catalog, making connection simple. Your agent becomes a dedicated social data engineer that works through natural conversation.

## Tools

### get_account_details
Retrieves the full public profile data for a given Epic account ID.

### get_achievement_definitions
Lists all available achievements that exist in a specific game title.

### get_blocked_users
Queries and lists the accounts that have been blocked by a user.

### get_friend_list
Pulls the official list of friends connected to an Epic account ID.

### get_game_leaderboard
Retrieves current ranking scores for a specific game's leaderboard.

### get_player_achievements
Gets the detailed progress and earned status of achievements for one player in a game.

### get_player_presence
Checks if a user is currently online or actively engaged in an online session.

### search_account_by_display_name
Finds the unique Epic AccountID based only on the user's visible display name.

## Prompt Examples

**Prompt:** 
```
Find the AccountID for the Epic user 'Ninja'.
```

**Response:** 
```
Resolving display name... I've found the account for 'Ninja'. His unique AccountID is `0002...`. I also identified his public biographical metadata. Would you like to check his friend list or current presence status?
```

**Prompt:** 
```
Check the live status and game for AccountID 'ID_12345'.
```

**Response:** 
```
Running presence check... The user is currently 'Online' and playing 'Fortnite'. The session has been active for 45 minutes. Would you like to see their recent performance stats for this season?
```

**Prompt:** 
```
Analyze the rarity of achievements for 'Alan Wake 2' on my account.
```

**Response:** 
```
Inspecting achievement logs... You have unlocked 15 out of 60 achievements. Your rarest unlock is 'The Final Chapter', which only 4.2% of the community possesses. Shall I list the technical requirements for the remaining locked achievements?
```

## Capabilities

### Identify player accounts
Find an account's unique ID using only their visible display name.

### Map friend connections
Retrieve a complete list of official friends linked to a specific Epic AccountID.

### Check live status
Determine if an account is online, in-game, or offline right now.

### Analyze game achievements
Pull achievement progress and technical stats for a player within any specific title.

### View profile details
Get full public biographical information associated with an Epic AccountID.

## Use Cases

### Investigating a competitive roster
A scout needs to vet five potential players. Instead of asking them for IDs, the agent uses `search_account_by_display_name` on all five usernames. It then runs `get_friend_list` and `get_player_achievements` against each resulting ID to build a full profile report.

### Understanding community engagement
A community manager wants to know who is currently active during peak hours. They use `get_player_presence` on a list of 50 key accounts to generate a live status dashboard, identifying who can be contacted immediately.

### Auditing account security issues
You suspect an account is compromised or misused. You use `get_blocked_users` to see if the account has been actively blocking other users, giving a clear picture of its interaction history.

### Analyzing content rarity for marketing
A publisher wants to promote an achievement. They first run `get_achievement_definitions` to list all options, then use `get_player_achievements` and related data to calculate the statistical rarity of a specific unlock.

## Benefits

- You don't waste time guessing IDs. The `search_account_by_display_name` tool resolves a simple username into the unique AccountID you need for every other query.
- It gives instant insight into community activity. Use `get_player_presence` to see if an account is online and playing right now, which is way better than checking last active status.
- Audit player skill depth with precision. The `get_game_leaderboard` tool pulls current rankings so you know exactly where a user stands against their peers.
- Track community growth and connections easily. Running `get_friend_list` builds out the social network map for any target account, giving context to their profile.
- Go beyond simple counts with achievement data. The `get_player_achievements` tool shows exactly what progress a player has made toward a goal in a specific title.

## How It Works

The bottom line is: Once connected, your agent handles the complex API calls using natural language commands.

1. First, subscribe to this MCP and provide your unique Epic Client ID and Secret credentials from the developer portal.
2. Next, you direct your agent to execute a specific action, like finding an account's ID or getting their friend list.
3. The agent uses those tools to fetch the data directly, returning structured records that you can analyze immediately.

## Frequently Asked Questions

**How do I use get_friend_list? Does it require the AccountID?**
Yes, `get_friend_list` requires a verified Epic AccountID. You cannot pass just a display name. If you only have the username, run `search_account_by_display_name` first to retrieve the necessary ID.

**Can I use get_player_presence to check multiple users at once?**
The tool checks a single account's status. To check multiple people, you need to run `search_account_by_display_name` for each person first, and then loop through the resulting AccountIDs when calling `get_player_presence`.

**What is the difference between get_player_achievements and get_achievement_definitions?**
`get_achievement_definitions` lists every achievement that *can* exist in a game. `get_player_achievements` shows which achievements a specific player has actually unlocked and what their progress is.

**Does get_game_leaderboard show historical data?**
The tool retrieves the current leaderboard ranking scores for a game. It tracks live status, not historical performance over time.

**What credentials do I need to use get_account_details?**
You must provide your Epic Client ID and Secret keys for authentication. These are generated in the Epic Developer Portal, not within Vinkius. The MCP uses these keys to verify that your AI client has permission to access profile data.

**How does search_account_by_display_name work if I only know a username?**
This tool resolves the human-readable display name into the unique AccountID. It acts as a lookup service, giving you the necessary technical ID before you can run other commands like checking friend lists or presence.

**Does get_achievement_definitions list every achievement for every game?**
No, it requires specifying the title and scope of the game. This function provides a static catalog of what achievements are *available* in that specific game context; it doesn't track player progress.

**What happens if I run get_blocked_users for an account with no blocked users?**
The tool handles this gracefully. Instead of throwing an error, the MCP returns an empty list or a specific status code indicating that there are currently no recorded block relationships for that AccountID.