MCP-Server

Runekist

com.runekist/runekist
Daten & Analytik Gaming Öffentlich und erreichbar MCP 2025-11-25

Was dieses MCP kann

Provides Total Battle clan, player, event, reward, progress, and performance insights, including stacking calculations and observed chest-reward statistics.

attribute_cp_receipt
Credit a pending silver receipt after sender review. Required scopes: cp:write
Eingabeschema
{'type': 'object', 'required': ['clan_id', 'reason', 'receipt_id', 'sender_progress_id'], 'properties': {'reason': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'clan_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'receipt_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'sender_progress_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
dismiss_cp_report
Dismiss an unhandled report with an audit reason. Required scopes: cp:write
Eingabeschema
{'type': 'object', 'required': ['clan_id', 'reason', 'source_id'], 'properties': {'reason': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'clan_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'source_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
find_players
Find bounded player candidates in one clan. Similar names remain separate candidates. Required scopes: insights:read
Nur Lesen
Eingabeschema
{'type': 'object', 'required': ['clan_id'], 'properties': {'query': {'type': 'string', 'maxLength': 500, 'minLength': 0}, 'clan_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
get_chest_reward_insights
Read aggregate observed chest rewards with denominators and coverage. This is not official game probability. Required scopes: rewards:read
Nur Lesen
Eingabeschema
{'type': 'object', 'required': ['clan_id'], 'properties': {'clan_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'filters': {'type': 'object', 'properties': {'to': {'type': 'string', 'maxLength': 500, 'minLength': 0}, 'from': {'type': 'string', 'maxLength': 500, 'minLength': 0}, 'view_by': {'enum': ['drop_rate', 'yield'], 'type': 'string'}, 'chest_type_code': {'type': 'string', 'maxLength': 500, 'minLength': 0}, 'chest_definition_id': {'type': 'string', 'maxLength': 500, 'minLength': 0}, 'normalization_family': {'type': 'string', 'maxLength': 500, 'minLength': 0}}, 'additionalProperties': False}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
get_clan_content
Read visible rules, announcements, events and the caller's outstanding tasks. Required scopes: content:read
Nur Lesen
Eingabeschema
{'type': 'object', 'required': ['clan_id', 'kind'], 'properties': {'kind': {'enum': ['rules', 'announcements', 'events', 'tasks'], 'type': 'string'}, 'clan_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
get_context
List authorized clans, roles, locale, presentation timezone, and the Total Battle game-day boundary. `game_day.timezone` is UTC; `starts_at` is when a new game day begins, `reset_at` is the matching daily boundary, and `duration_hours` is its length. Use this boundary instead of calendar midnight for today, yesterday, this or previous game day, and daily game periods unless a tool or report explicitly defines its own window. `presentation_timezone` is for display only and never shifts the UTC boundary; at a 17:00 UTC reset, each game day runs from 17:00 UTC to 17:00 UTC the next day, regardless of local timezone. Required scopes: context:read
Nur Lesen
Eingabeschema
{'type': 'object', 'required': [], 'properties': {}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
get_cp_balance
Read period-independent personal silver balances, or all clan balances for a superior. Required scopes: cp:read
Nur Lesen
Eingabeschema
{'type': 'object', 'required': ['clan_id'], 'properties': {'all': {'type': 'boolean'}, 'clan_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
get_cp_history
Read a bounded page of silver entries for one game progress ID. Required scopes: cp:read
Nur Lesen
Eingabeschema
{'type': 'object', 'required': ['clan_id', 'progress_id'], 'properties': {'page': {'type': 'integer', 'maximum': 1000, 'minimum': 1}, 'clan_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'page_size': {'type': 'integer', 'maximum': 100, 'minimum': 1}, 'progress_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
get_game_calendar
Read bounded occurrences of the configured global game schedule, including historical UTC start/end bounds. This is not observed game evidence or clan-authored content. Officer access required. Discover cycle filters in cycle_options; windows are at most 90 days. Required scopes: context:read
Nur Lesen
Eingabeschema
{'type': 'object', 'required': ['clan_id', 'from', 'to'], 'properties': {'to': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'from': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'page': {'type': 'integer', 'maximum': 1000, 'minimum': 1}, 'clan_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'page_size': {'type': 'integer', 'maximum': 100, 'minimum': 1}, 'calendar_kind': {'enum': ['main', 'seasonal'], 'type': 'string'}, 'cycle_filters': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'maxItems': 20}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
get_insight
Read officer-authorized Insights. Requirements: legacy period_id returns full detail; detail=summary enables bounded score pages. Example: family=requirements, detail=summary, period_selector=last_completed, period_count=4, aggregate=player, sort=total_points, page_size=10. Or use period_id / period_ids (up to 12), membership_scope=period_participants or current_roster, member_search, exact player_ids or player_names (same-name identities stay separate), sort, direction, page. Completed means ends_at has passed in UTC. Preserved scores use the explicitly pinned historical publication. Ready scores match current inputs; finalized scores use the last published historical snapshot with stat_version_id and snapshot_completed_at. Missing/stale stats remain unavailable, not zero. Raw total_points comes from that snapshot and differs from fine-adjusted rank_points; live rules, fines and identity presentation may still change. Other family filters: chests (period_id, search, selection, sort=chest_count|total_points, direction, page, page_size; selected total_points covers selected chest types and default order remains chest_count); resources and dragon_coins (period_id, from, to, resource where applicable, search, summary_page, activity_page, page_size, ledger_search, ledger_page, ledger_page_size); forest_essence (period_id, from, to, search, summary_page, activity_page, page_size); titles (period_id, search, title_id, member_search, member_page, member_page_size); gold_pass (status, event_number, search, sort=nickname|first_observed_with_gold_pass_at|first_observed|state, direction, page, page_size; timestamp nulls last in both directions; state order with, without, unknown ascending); roster (default events: search, sort, direction, page, page_size; view=periods adds ISO-8601 at and sort=joined_at|playerName); vaults (period_id, day, interval, player, evidence_page, evidence_page_size, search, sort, page, page_size); journal (period_id, page, page_size); ancients (period_id, event_id); guardsmen and fines (period_id). Generic keys outside a family's list are rejected. Gold Pass first_observed_with_gold_pass_at is first observation with a pass, not purchase time. Roster periods are observed snapshots, not exact in-game action times. Required scopes: insights:read
Nur Lesen
Eingabeschema
{'type': 'object', 'required': ['clan_id', 'family'], 'properties': {'at': {'type': 'string', 'maxLength': 500, 'minLength': 0}, 'to': {'type': 'string', 'maxLength': 500, 'minLength': 0}, 'day': {'type': 'string', 'maxLength': 500, 'minLength': 0}, 'from': {'type': 'string', 'maxLength': 500, 'minLength': 0}, 'page': {'type': 'integer', 'maximum': 1000, 'minimum': 1}, 'sort': {'type': 'string', 'maxLength': 500, 'minLength': 0}, 'view': {'enum': ['periods'], 'type': 'string'}, 'detail': {'enum': ['summary', 'full'], 'type': 'string'}, 'family': {'enum': ['chests', 'resources', 'forest_essence', 'dragon_coins', 'ancients', 'vaults', 'titles', 'guardsmen', 'gold_pass', 'roster', 'journal', 'requirements', 'fines'], 'type': 'string'}, 'player': {'type': 'string', 'maxLength': 500, 'minLength': 0}, 'search': {'type': 'string', 'maxLength': 500, 'minLength': 0}, 'status': {'enum': ['with', 'without', 'unknown', 'all'], 'type': 'string'}, 'clan_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'rule_id': {'type': 'string', 'maxLength': 500, 'minLength': 0}, 'event_id': {'type': 'string', 'maxLength': 500, 'minLength': 0}, 'interval': {'type': 'string', 'maxLength': 500, 'minLength': 0}, 'resource': {'enum': ['clan_speedup', 'silver', 'lumber', 'iron', 'stone', 'food', 'scientific_tractates', 'boards', 'steel', 'cement', 'dragon_coins', 'forest_essence', 'torch_of_olympus_clan_fragment', 'chronoglyph_clan_fragment', 'hermes_loyalty_level'], 'type': 'string'}, 'title_id': {'type': 'string', 'maxLength': 500, 'minLength': 0}, 'aggregate': {'enum': ['player'], 'type': 'string'}, 'direction': {'enum': ['asc', 'desc'], 'type': 'string'}, 'page_size': {'type': 'integer', 'maximum': 100, 'minimum': 1}, 'period_id': {'type': 'string', 'maxLength': 500, 'minLength': 0}, 'selection': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'maxItems': 100}, 'period_ids': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'maxItems': 12, 'minItems': 1}, 'player_ids': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'maxItems': 100}, 'ledger_page': {'type': 'integer', 'maximum': 1000, 'minimum': 1}, 'member_page': {'type': 'integer', 'maximum': 1000, 'minimum': 1}, 'event_number': {'type': 'integer', 'maximum': 10000, 'minimum': 1}, 'period_count': {'type': 'integer', 'maximum': 12, 'minimum': 1}, 'player_names': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'maxItems': 100}, 'summary_page': {'type': 'integer', 'maximum': 1000, 'minimum': 1}, 'activity_page': {'type': 'integer', 'maximum': 1000, 'minimum': 1}, 'evidence_page': {'type': 'integer', 'maximum': 1000, 'minimum': 1}, 'ledger_search': {'type': 'string', 'maxLength': 500, 'minLength': 0}, 'member_search': {'type': 'string', 'maxLength': 500, 'minLength': 0}, 'period_selector': {'enum': ['last_completed'], 'type': 'string'}, 'ledger_page_size': {'type': 'integer', 'maximum': 100, 'minimum': 1}, 'member_page_size': {'type': 'integer', 'maximum': 100, 'minimum': 1}, 'membership_scope': {'enum': ['period_participants', 'current_roster'], 'type': 'string'}, 'evidence_page_size': {'type': 'integer', 'maximum': 100, 'minimum': 1}, 'min_failed_periods': {'type': 'integer', 'maximum': 12, 'minimum': 1}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
get_insight_options
List authorized periods, report families, resources and player filter candidates. Required scopes: insights:read
Nur Lesen
Eingabeschema
{'type': 'object', 'required': ['clan_id'], 'properties': {'family': {'enum': ['chests', 'resources', 'forest_essence', 'dragon_coins', 'ancients', 'vaults', 'titles', 'guardsmen', 'gold_pass', 'roster', 'journal', 'requirements', 'fines'], 'type': 'string'}, 'search': {'type': 'string', 'maxLength': 500, 'minLength': 0}, 'clan_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
get_my_progress
Read the caller's personal progress, requirements and collection freshness. Required scopes: personal:read
Nur Lesen
Eingabeschema
{'type': 'object', 'required': ['clan_id'], 'properties': {'clan_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'period_id': {'type': 'string', 'maxLength': 500, 'minLength': 0}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
legacy_stacking
List, load or calculate legacy stacking. Beta layouts and writes are rejected. Required scopes: stacking:calculate
Nur Lesen
Eingabeschema
{'type': 'object', 'required': ['operation'], 'properties': {'input': {'type': 'object', 'properties': {'authority': {'oneOf': [{'type': 'integer', 'maximum': 50000000, 'minimum': 0}, {'type': 'string', 'maxLength': 50, 'minLength': 1}]}, 'dominance': {'oneOf': [{'type': 'integer', 'maximum': 50000000, 'minimum': 0}, {'type': 'string', 'maxLength': 50, 'minLength': 1}]}, 'calculator': {'enum': ['legacy'], 'type': 'string'}, 'leadership': {'oneOf': [{'type': 'integer', 'maximum': 50000000, 'minimum': 0}, {'type': 'string', 'maxLength': 50, 'minLength': 1}]}, 'siege_tiers': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 'merc_g_tiers': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 'merc_m_tiers': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 'merc_s_tiers': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 'merc_x_tiers': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 'stat_bonuses': {'type': 'object', 'properties': {'g': {'type': 'object', 'properties': {'melee': {'type': 'object', 'properties': {'health': {'type': 'number', 'maximum': 10000, 'minimum': -99}, 'strength': {'type': 'number', 'maximum': 10000, 'minimum': -99}}, 'additionalProperties': False}, 'flying': {'type': 'object', 'properties': {'health': {'type': 'number', 'maximum': 10000, 'minimum': -99}, 'strength': {'type': 'number', 'maximum': 10000, 'minimum': -99}}, 'additionalProperties': False}, 'ranged': {'type': 'object', 'properties': {'health': {'type': 'number', 'maximum': 10000, 'minimum': -99}, 'strength': {'type': 'number', 'maximum': 10000, 'minimum': -99}}, 'additionalProperties': False}, 'mounted': {'type': 'object', 'properties': {'health': {'type': 'number', 'maximum': 10000, 'minimum': -99}, 'strength': {'type': 'number', 'maximum': 10000, 'minimum': -99}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'm': {'type': 'object', 'properties': {'melee': {'type': 'object', 'properties': {'health': {'type': 'number', 'maximum': 10000, 'minimum': -99}, 'strength': {'type': 'number', 'maximum': 10000, 'minimum': -99}}, 'additionalProperties': False}, 'flying': {'type': 'object', 'properties': {'health': {'type': 'number', 'maximum': 10000, 'minimum': -99}, 'strength': {'type': 'number', 'maximum': 10000, 'minimum': -99}}, 'additionalProperties': False}, 'ranged': {'type': 'object', 'properties': {'health': {'type': 'number', 'maximum': 10000, 'minimum': -99}, 'strength': {'type': 'number', 'maximum': 10000, 'minimum': -99}}, 'additionalProperties': False}, 'mounted': {'type': 'object', 'properties': {'health': {'type': 'number', 'maximum': 10000, 'minimum': -99}, 'strength': {'type': 'number', 'maximum': 10000, 'minimum': -99}}, 'additionalProperties': False}}, 'additionalProperties': False}, 's': {'type': 'object', 'properties': {'melee': {'type': 'object', 'properties': {'health': {'type': 'number', 'maximum': 10000, 'minimum': -99}, 'strength': {'type': 'number', 'maximum': 10000, 'minimum': -99}}, 'additionalProperties': False}, 'flying': {'type': 'object', 'properties': {'health': {'type': 'number', 'maximum': 10000, 'minimum': -99}, 'strength': {'type': 'number', 'maximum': 10000, 'minimum': -99}}, 'additionalProperties': False}, 'ranged': {'type': 'object', 'properties': {'health': {'type': 'number', 'maximum': 10000, 'minimum': -99}, 'strength': {'type': 'number', 'maximum': 10000, 'minimum': -99}}, 'additionalProperties': False}, 'mounted': {'type': 'object', 'properties': {'health': {'type': 'number', 'maximum': 10000, 'minimum': -99}, 'strength': {'type': 'number', 'maximum': 10000, 'minimum': -99}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'catapults': {'type': 'object', 'properties': {'health': {'type': 'number', 'maximum': 10000, 'minimum': -99}, 'strength': {'type': 'number', 'maximum': 10000, 'minimum': -99}}, 'additionalProperties': False}, 'epic_hunter': {'type': 'object', 'properties': {'health': {'type': 'number', 'maximum': 10000, 'minimum': -99}, 'strength': {'type': 'number', 'maximum': 10000, 'minimum': -99}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'tier_unlocks': {'type': 'object', 'properties': {'siege': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 'merc_g': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 'merc_m': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 'merc_s': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 'merc_x': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 'g_melee': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 's_melee': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 'g_flying': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 'g_ranged': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 'monsters': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 's_flying': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 's_ranged': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 'g_mounted': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 's_mounted': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 'engineering': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}}, 'additionalProperties': False}, 'g_melee_tiers': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 's_melee_tiers': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 'g_flying_tiers': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 'g_ranged_tiers': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 'monsters_tiers': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 's_flying_tiers': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 's_ranged_tiers': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 'g_mounted_tiers': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 's_mounted_tiers': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 'selected_troops': {'type': 'array', 'items': {'type': 'string', 'maxLength': 200}, 'maxItems': 500}, 'engineering_tiers': {'oneOf': [{'type': 'integer', 'maximum': 9, 'minimum': 0}, {'type': 'string', 'maxLength': 50}, {'type': 'array', 'items': {'oneOf': [{'type': 'integer'}, {'type': 'string', 'maxLength': 50}]}, 'maxItems': 10}]}, 'death_order_buffer': {'oneOf': [{'type': 'integer', 'maximum': 50000000, 'minimum': 0}, {'type': 'string', 'maxLength': 50, 'minLength': 1}]}, 'stat_bonus_percent': {'oneOf': [{'type': 'integer', 'maximum': 50000000, 'minimum': 0}, {'type': 'string', 'maxLength': 50, 'minLength': 1}]}}, 'additionalProperties': False}, 'layout_id': {'type': 'string', 'maxLength': 500, 'minLength': 0}, 'operation': {'enum': ['options', 'list_layouts', 'load_layout', 'calculate'], 'type': 'string'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
list_cp_collector_costs
Read recent collector runs with itemized base, caravan, and report credit reservations and settlements. Required scopes: cp:read
Nur Lesen
Eingabeschema
{'type': 'object', 'required': ['clan_id'], 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1}, 'clan_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
list_cp_reports
Read a bounded page of unhandled CP reports for clan leadership. Required scopes: cp:read
Nur Lesen
Eingabeschema
{'type': 'object', 'required': ['clan_id'], 'properties': {'page': {'type': 'integer', 'maximum': 1000, 'minimum': 1}, 'clan_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'page_size': {'type': 'integer', 'maximum': 100, 'minimum': 1}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
list_periods
List bounded stored Runekist reporting periods, which are not automatically game days, without creating period rows. Required scopes: context:read
Nur Lesen
Eingabeschema
{'type': 'object', 'required': ['clan_id'], 'properties': {'clan_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
post_cp_run
Post a named selection of CP reports after reviewing its exact preview. Required scopes: cp:write
Idempotent
Eingabeschema
{'type': 'object', 'required': ['clan_id', 'cp_denominator', 'idempotency_key', 'name', 'silver_numerator', 'source_ids'], 'properties': {'name': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'clan_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'source_ids': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'maxItems': 100, 'minItems': 1}, 'occurred_at': {'type': 'string', 'maxLength': 500, 'minLength': 0}, 'cp_denominator': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'idempotency_key': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'silver_numerator': {'type': 'string', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
post_manual_cp_run
Post a historical manual CP run with explicit progress IDs and a UTC date. Required scopes: cp:write
Idempotent
Eingabeschema
{'type': 'object', 'required': ['clan_id', 'cp_denominator', 'idempotency_key', 'name', 'occurred_at', 'participants', 'silver_numerator'], 'properties': {'name': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'clan_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'occurred_at': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'participants': {'type': 'array', 'items': {'type': 'object', 'required': ['progress_id', 'cp'], 'properties': {'cp': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'progress_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'display_name': {'type': 'string', 'maxLength': 500, 'minLength': 0}}, 'additionalProperties': False}, 'maxItems': 100, 'minItems': 1}, 'cp_denominator': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'idempotency_key': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'silver_numerator': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'journal_entry_uuid': {'type': 'string', 'maxLength': 500, 'minLength': 0}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
preview_cp_run
Preview exact member charges for selected ready report sources without posting. Required scopes: cp:read
Nur Lesen
Eingabeschema
{'type': 'object', 'required': ['clan_id', 'cp_denominator', 'silver_numerator', 'source_ids'], 'properties': {'clan_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'source_ids': {'type': 'array', 'items': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'maxItems': 100, 'minItems': 1}, 'cp_denominator': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'silver_numerator': {'type': 'string', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
reconcile_manual_cp_run
Link a historical manual CP charge to a subsequently observed Journal UUID without charging again. Required scopes: cp:write
Eingabeschema
{'type': 'object', 'required': ['clan_id', 'journal_uuid', 'manual_source_id'], 'properties': {'clan_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'journal_uuid': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'manual_source_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
record_cp_payment
Record exact received silver for a game progress ID. Required scopes: cp:write
Idempotent
Eingabeschema
{'type': 'object', 'required': ['amount', 'clan_id', 'idempotency_key', 'progress_id', 'reason'], 'properties': {'amount': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'reason': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'clan_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'progress_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'idempotency_key': {'type': 'string', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
reverse_cp_run
Reverse a posted CP run with an audit reason. Required scopes: cp:write
Eingabeschema
{'type': 'object', 'required': ['batch_id', 'clan_id', 'reason'], 'properties': {'reason': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'clan_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'batch_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
set_cp_options
Set default-off CP ledger and independent collector addons where permitted. Required scopes: cp:write
Eingabeschema
{'type': 'object', 'required': ['clan_id', 'enabled'], 'properties': {'clan_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'enabled': {'type': 'boolean'}, 'caravans_since': {'type': 'string', 'maxLength': 500, 'minLength': 0}, 'reports_enabled': {'type': 'boolean'}, 'caravans_enabled': {'type': 'boolean'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
transfer_cp_silver
Transfer exact silver between two game progress IDs. Required scopes: cp:write
Idempotent
Eingabeschema
{'type': 'object', 'required': ['amount', 'clan_id', 'from_progress_id', 'idempotency_key', 'reason', 'to_progress_id'], 'properties': {'amount': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'reason': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'clan_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'to_progress_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'idempotency_key': {'type': 'string', 'maxLength': 500, 'minLength': 1}, 'from_progress_id': {'type': 'string', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'required': ['schema_version', 'effective_scope', 'generated_at', 'data', 'coverage', 'provenance'], 'properties': {'data': {}, 'coverage': {'type': 'object'}, 'provenance': {'type': 'object'}, 'generated_at': {'type': 'string'}, 'schema_version': {'type': 'string'}, 'effective_scope': {'type': 'object'}}, 'additionalProperties': False}
Geändert
list_periods
2. October 2026 02:41
Geändert
get_context
2. October 2026 02:41
Hinzugefügt
transfer_cp_silver
30. September 2026 02:40
Hinzugefügt
set_cp_options
30. September 2026 02:40
Hinzugefügt
reverse_cp_run
30. September 2026 02:40
Hinzugefügt
record_cp_payment
30. September 2026 02:40
Hinzugefügt
reconcile_manual_cp_run
30. September 2026 02:40
Hinzugefügt
preview_cp_run
30. September 2026 02:40
Hinzugefügt
post_manual_cp_run
30. September 2026 02:40
Hinzugefügt
post_cp_run
30. September 2026 02:40
Hinzugefügt
list_cp_reports
30. September 2026 02:40
Hinzugefügt
list_cp_collector_costs
30. September 2026 02:40
Hinzugefügt
get_cp_history
30. September 2026 02:40
Hinzugefügt
get_cp_balance
30. September 2026 02:40
Hinzugefügt
dismiss_cp_report
30. September 2026 02:40
Hinzugefügt
attribute_cp_receipt
30. September 2026 02:40
Hinzugefügt
list_periods
28. September 2026 02:40
Hinzugefügt
legacy_stacking
28. September 2026 02:40
Hinzugefügt
get_my_progress
28. September 2026 02:40
Hinzugefügt
get_insight_options
28. September 2026 02:40
Hinzugefügt
get_insight
28. September 2026 02:40
Hinzugefügt
get_game_calendar
28. September 2026 02:40
Hinzugefügt
get_context
28. September 2026 02:40
Hinzugefügt
get_clan_content
28. September 2026 02:40
Hinzugefügt
get_chest_reward_insights
28. September 2026 02:40
Hinzugefügt
find_players
28. September 2026 02:40