poe2-exile-architect (avdergh/poe2-exile-architect) is an MCP server listed on the M8ven Trust Index. It scores 74 out of 100, grade C. It declares 183 tools. No publisher has claimed this listing.

C
Emerging
74/100

poe2-exile-architect

Research, create, and understand Path of Exile 2 builds with AI agents and Path of Building.

Emerging. No concerning findings. Grades remain capped until the project builds reputation through adoption. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.

How we verified

Code Verified⚡ Live Monitored: not connected

Verified is a snapshot. Live keeps it current, and builds your track record.

⚡ Connect GitHub → continuous verification on every pushwhy connect →

Who stands behind it

avdergh

Source: github_repo_search

Is this your MCP?

Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →

Install from

The grade above is for the source repository. Registries can serve a different version, so we mark the ones we were not able to read.

// key findings
No credential exfiltration, no sensitive file access, no obfuscation
Static analysis found nothing flowing your secrets to unexpected places.
Open source with a license and README
Anyone can audit the code, the license is declared, and the publisher documents what it does.
🔐
You'll be asked for 2 credentials: GH_TOKEN, GITHUB_TOKEN
These are read from process.env at runtime. Make sure you trust where they’ll be sent.
// tools this server exposes180 tools

These names and descriptions are the publisher's own, read from the source code. We print them as written. Our assessment is the findings above, not this list.

start_study_run

Lock the user's language and freeze one source. Override output_language only when the user explicitly requests it.

inspect_study_case

Inspect Study reading coverage, expiry and learning outputs.

read_study_case

Read a source-bound page of BD evidence. Follow nextCursor until each section is complete.

search_study_case

Locate source evidence. Search does not fulfill source reading coverage.

get_study_contract

Get the locked-language H5 teaching schema, exact component tokens and required reading coverage.

query_study_knowledge

Study-only typed corpus/graph/Research query. No seed install or durable query receipt.

review_study_evidence

Record an external Agent's source reading as agent_reviewed, never an internal Research receipt.

review_study_terminology

Bind a reviewed official bilingual name quote to one Study component. Never write a global term table.

observe_study_scenario

Observe the source's active scenario and exact output in an isolated PoB; no Judge attempt.

evaluate_study_counterfactual

Measure removal of one source item/passive in isolated PoB. Model gaps never become zero gain.

validate_study_lesson

Validate output and resource loops, every skill group and gem, equipment roles and passive priorities.

complete_study_explanation

Validate analysis and teaching coverage, publish the complete H5 reader, and return a short chat introduction.

cleanup_study_run

Remove Study raw source after delivery, expiry or explicit abandonment. Keep educational outputs.

import_build

Import a Path of Exile 2 build for analysis and theorycrafting.

get_build_stats

Return Path-of-Building-computed stats for the currently loaded build.

get_build

Full read-back of the active build.

get_defenses

Defensive summary for the active build: life/ES/mana/ward, armour/evasion, block, elemental + chaos resistances (with over-cap), and TotalEHP. Elemental resists are shown net of PoB's configured area penalty; the response includes the active `resistPenalty` and a note. Read caps as diagnostics, not

export_build

Export the active build as a Path of Building import code.

new_build

Reset to a blank build — clears gear, skills, passives, and config.

set_class

Set the active build's character class and (optionally) ascendancy.

set_level

Set the active build's character level (1-100). Returns updated stats.

set_skill

Set the active build's MAIN skill (gem + its support gems) in PoB paste format.

add_skill_group

Add an ENABLED secondary skill group (aura, herald, or persistent buff) WITHOUT changing the main skill — so its buff/reservation applies to the active build.

list_skill_groups

List the active build's skill groups with safe selectors for precise edits.

replace_skill_group

Atomically replace one user-owned skill group without rebuilding the whole PoB.

remove_skill_group

Atomically remove a user-owned skill group selected from `list_skill_groups`.

set_skill_group_state

Atomically change typed state on one skill group.

set_config

Set combat/configuration options and/or extra modifiers on the active build.

apply_combat_profile

Apply a realistic boss-combat profile in one call, so DPS reflects an actual fight.

list_config_options

List Path of Building configuration options usable with `set_config`.

equip_item

Equip an item on the active build from raw Path of Building item text.

apply_build_mutation_batch

Apply one small, function-scoped atomic mutation batch chosen by the Agent.

unequip_item

Clear an equipment slot on the active build (e.g. "Ring 2", "Body Armour", "Weapon 1").

list_jewel_sockets

List the passive tree's jewel sockets: each socket's `id`, whether it's `allocated`, and whether it's already `filled`. A jewel only contributes when its socket is allocated (allocate a Socket node with `alloc_passive` first). Use a socket `id` with `equip_jewel`.

inspect_build_completeness

Inspect whether the active build is a playable loadout rather than a scoring skeleton.

inspect_generation_preflight

Run cheap deterministic checks before consuming a generation Judge attempt.

inspect_generation_checkpoint

Merge repeated read-only generation checks by semantic build-state hash.

equip_jewel

Transactionally fill or replace an explicit, already allocated passive jewel socket.

evaluate_jewel_socket

Read-only: measure ONE candidate jewel (raw PoB item text) placed in ONE tree socket.

evaluate_next_jewel_socket

Compare one Agent-selected jewel across every reachable additional tree socket.

apply_next_jewel_socket_decision

Atomically apply one positive result returned by evaluate_next_jewel_socket.

evaluate_build

Check the active build against named numeric goals.

start_generation_run

Start one isolated Phase 5 generation run without relying on a repository checkout.

record_generation_family_discovery

Bind a run-fresh Family discovery result before draft validation and Judge.

validate_generation_blueprint

Validate a free-form, knowledge-grounded mechanism blueprint before PoB construction.

validate_generation_output

Submit and validate one safe generation summary without consuming its review binding.

validate_generation_draft

Bind the final Judge target and observed PoB mechanism before a formal attempt.

complete_generation_review

Submit the final safe summary and atomically consume the trusted human-review binding.

evaluate_generation_candidate

Run the Phase 1 Judge against the Agent-built active PoB state.

save_final_build_artifact

Save the final Agent-accepted, passing PoB candidate in local private storage.

list_final_build_artifacts

List safe metadata for locally saved final build artifacts; never returns PoB XML.

load_final_build_artifact

Restore a saved final build artifact into the active Headless PoB session.

preview_final_artifact_spirit_revalidation

Recompute one immutable legacy artifact's Spirit ledger without writing a receipt.

apply_final_artifact_spirit_revalidation

Append an exact preview-bound Spirit revalidation after explicit user approval.

export_final_pob_artifact

Export a verified final artifact to local files for desktop Path of Building.

export_final_build_package

Export and publish the complete final delivery package with a fixed inventory.

start_learning_campaign

Start the fixed ten-case, strictly serial Phase 7 comparative-learning campaign.

intake_learning_case

Put one reference PoB source into case-bound quarantine.

claim_learning_phase

Claim one Phase 7 checkpoint with CAS and an explicit Desktop task/thread binding.

load_learning_reference_case

Load a claimed quarantined reference into this task's active PoB session without raw output.

submit_learning_profile

Infer the exact existing Research Family and persist a safe reference Profile.

get_learning_create_packet

Return the Create task's blind FamilyTarget + level packet; never reference build details.

query_learning_memory

Recall Memory in an active Create claim and persist a safe use-audit receipt.

query_public_learning_memory

Recall copy-safe public/local Learning Memory for an ordinary Create.

cleanup_completed_task_runtime

Delete one completed task's private runtime state after its durable result is safe.

submit_learning_create_result

Commit the one allowed Create result after exact Family/level readback and Memory-use audit.

submit_learning_comparison

Commit the independent Comparator's ten-dimension report.

propose_learning_lesson

Append one reviewed cross-dimensional Create lesson to local Learning Memory.

append_learning_memory_correction

Append narrow/revise/supersede/deprecate history; never overwrite a prior lesson.

complete_learning_case_feedback

Record Fix/Learn routing and require conditional rereview after any mutation.

submit_learning_rereview

Finish conditional rereview of code/Research/Memory changes without rerunning Create.

fail_learning_phase

Mark the currently claimed phase failed so it can be explicitly retried.

retry_learning_phase

Explicitly retry a failed phase; a consumed Create result can never be retried.

pause_learning_campaign

Pause at a safe checkpoint; a running claim returns to its pending phase.

resume_learning_campaign

Resume a paused campaign, optionally recording a safe human backlog decision.

get_learning_campaign_status

Return safe case progress, accumulated metrics, rolling windows, and the ten-case trend.

get_build_planner_converter_status

Check whether the pinned, isolated PoB-to-official-`.build` provider is ready.

export_final_build_artifact

Convert one verified final PoB artifact to an official single-stage `.build` file.

pinnacle_readiness

Gate a build against the endgame/pinnacle checklist — defense beyond raw EHP, plus a DPS bar.

compare_to

Compare the active build against another build (code/link/XML) without losing it.

solve_for

Solve for the magnitude of one modifier needed to reach a stat target on the active build.

rank_levers

Rank which stat levers give the most `metric` per unit on the active build — the min/max direction-finder ("where do I invest next?").

list_levers

List the named levers accepted by `solve_for` and `rank_levers` (discoverability).

search_passives

Search the active build's passive tree by node name or stat text.

get_passive

Read a node from the active build: allocation, path, stats and attribute options.

alloc_passive

Allocate a passive node (and the shortest path to it) by id or name.

set_passive_attribute

Switch one already allocated attribute node using its exact id and PoB's options.

dealloc_passive

Deallocate a passive node (and nodes that depend on it) by id or name.

optimize_passives

Reproducibly optimize passive points from an immutable snapshot.

scaffold_gear

Fill the active build's EMPTY armour/jewellery slots with placeholder BASELINE gear.

optimize_item

Craft the best-in-slot rare for a `slot` — one `metric`, or a weighted `goals` blend.

optimize_flask

Create a legal Magic life/mana Flask from the current corpus Flask domain.

optimize_charm

Create a legal Magic Charm instead of leaving an endgame Charm slot Normal.

rank_upgrades

Rank gear slots by upgrade potential — "what should I craft/upgrade next?".

optimize_supports

Compare complete support sets for one exact active effect using PoB.

optimize_jewel

Construct a rare jewel from measured modifiers or exact Agent-selected modifier IDs.

plan_gear

Plan a whole gear set against stage resistance targets (budget allocation).

optimize_item_sockets

Preserve an equipped ordinary item and optimize only 1-2 rune/soul-core sockets.

plan_item_sockets_batch

Plan Rune/Soul Core decisions for up to eight equipped slots in one read-only call.

configure_source_skill_supports

Atomically configure supports on a real passive, Ascendancy, item, or default attack skill.

80 further tools are not listed here. The complete surface is in the source.

// environment variables
To run this server yourself, you supply these values. They go in your own MCP client configuration and stay on your machine. The secret label means the value is sensitive, not that the server mishandles it.
configPOE2_ENABLE_GLOBAL_BUILD_OPTIMIZER
configCOMSPEC
configPOE_BD_CREATE_RUNS_DIR
configPOE2_RESEARCH_POB_READBACK
configPYTHONIOENCODING
configPOE2_MCP_DATAIn the operating system's local user-data directory under poe2-build-mcp. Set to use another location. Your agent returns the paths to generated files.
configGITHUB_SHA
configPOB_COMMIT
configXDG_DATA_HOME
configPOE_BD_BUILD_CONVERTER_DIR
configPOE_BD_BUILD_EXPORTS_DIR
configPOE2_MCP_MAX_ENGINES
configPOB_LUAJITFor a nonstandard LuaJIT location, set to the executable's absolute path in the environment used by your agent host. Node.js 20+ is optional, for Build Planner .build export.
configPOE2_MCP_MAX_SESSION_ENGINES
🔐 secretGH_TOKEN
🔐 secretGITHUB_TOKEN
configPOE_BD_FINAL_ARTIFACTS_DIR
configPOE_BD_POB_EXPORTS_DIR
// quality suggestions

Tool annotations

No tools have read-only/destructive annotations

Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.

All four hints declared on every tool

183/183 tools missing one or more hints — start_study_run (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); inspect_study_case (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); read_study_case (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +180 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.

For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.

Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.

// full audit trail
The findings above are the summary. The full trail, every check we ran, each deduction, the network hosts observed and the dependency advisories, goes to verified publishers, along with an alert whenever a new one lands. Verified publishers can also review each finding and dispute it in one click. Publisher corrections have sharpened several of our checks this month, because the maintainer knows the codebase better than any scanner.
// improvement guidance — verified publishers only
We have 2 concrete improvements we can share with the publisher of this MCP. Each comes with specific guidance to raise the trust score.
// embed badge in your README
[![M8ven Score](https://m8ven.ai/badge/mcp/avdergh/poe2-exile-architect)](https://m8ven.ai/mcp/avdergh/poe2-exile-architect)
Shows your grade and updates automatically. Prefer no grade? Append ?variant=verified to the badge URL.
commit: e77cfb007ad57838685423128888d115b39bdf92
code hash: 90f38ef2321d10956c2f68df1a0d53e81fe0b50aaecdf837b04990c23e62b234
view raw JSON →
Check MCPs from inside your assistant
Tool Check · MCP

Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.

https://m8ven.ai/api/mcp/tool-check
check_toolsearch_toolscompare_toolsrecommend_alternativescheck_publisherreport_concern
How to add it →Free · no account needed · works in any MCP client