ต้นแบบ · รุ่นทดลอง: มีทุก server ในทะเบียนทางการ อัปเดตทุก 30 นาที รีวิวและบัญชีผู้ใช้จะมาในขั้นถัดไป
PopNx MCPที่รวม MCP สำหรับคนใช้ AI · อธิบายเป็นภาษาคน

Narshamcp

โดย Next-Stage-Incรุ่น 0.13.7i★ –i–
ชื่อใน registryio.github.Next-Stage-Inc/narshamcp

ติดตั้ง

ภาพรวม

คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)

Unreal Engine MCP server: C++ PDB symbols, Blueprint and .uasset analysis, build-error fixes

สามเสาของ PopNx MCP

สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน

ใช้ทำอะไรได้

ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry

  • การเชื่อมต่อ: –
  • ช่องทาง (transport):
  • หมวด: เครื่องมือนักพัฒนา

ติดตั้ง

เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง

ก่อนติดตั้ง

ผู้ทำยังไม่ได้ใส่วิธีติดตั้งใน registry ให้ดู README ของผู้ทำด้านล่าง

ทำอะไรได้บ้าง

รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง

ผลตรวจเบื้องต้นi

เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 8 พ.ย. 2569

  • ✓ ผ่าน

    ตัวตนผู้ทำตรงกับ repo

    ชื่อใน registry ยืนยันด้วยบัญชี GitHub Next-Stage-Inc ซึ่งเป็นเจ้าของ repo

  • … ยังไม่ตรวจ

    ยังมีคนดูแล

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • … ยังไม่ตรวจ

    มีสัญญาอนุญาต (license)

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • – ไม่เกี่ยว

    endpoint ตอบ

    ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

    ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน

  • … ยังไม่ตรวจ

    คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง

    รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต

เทียบกับตัวอื่นในหมวด เครื่องมือนักพัฒนาi

  • ดาวมากกว่า 0% ของอีก 4915 ตัวในหมวดนี้
  • ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 52% ของอีก 4915 ตัวในหมวดนี้
  • ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 4915 ตัวในหมวดนี้

เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo

คำถามที่พบบ่อย

Narshamcp ปลอดภัยไหม?

จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น

ต้องใช้กุญแจหรือรหัสอะไรบ้าง?

registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก

ตัวนี้รันบนเครื่องหรือบนคลาวด์?

รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)

ยังมีคนดูแลอยู่ไหม?

repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.13.7) เข้า registry 42 วันที่ผ่านมา

ใช้กับโปรแกรมไหนได้บ้าง?

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code

มีตัวไหนใช้แทนได้บ้าง?

ในหมวดเดียวกันมี GitHub, Desktop Commander, Cloudflare MCP

ตัวที่ใช้แทนได้

server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว

อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi

GitHub

โดย github

server ทางการของ GitHub ให้ AI อ่านและจัดการโค้ด issue และ pull request ในบัญชีของคุณได้ ใช้ผ่านคลาวด์ของ GitHub หรือรันในเครื่องด้วย Docker ก็ได้

บนเครื่องหรือคลาวด์★ 34,245MITอัปเดต 4 วันที่ผ่านมา
ติดตั้ง

Desktop Commander

โดย wonderwhy-er

MCP server for terminal commands, file operations, and process management

รันบนเครื่อง★ 10,225MITอัปเดต 16 วันที่ผ่านมา
ติดตั้ง

Cloudflare MCP

โดย cloudflare

Cloudflare MCP servers

รันบนคลาวด์★ 4,446Apache-2.0อัปเดต 14 เดือนที่ผ่านมา
ติดตั้ง

README จากผู้ทำ

เปิดอ่าน README

ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

NarshaADK: Unreal Engine MCP server

NarshaMCP is an Unreal Engine MCP server. It is distributed on Fab as NarshaADK.

It parses C++ source, PDB symbols and binary .uasset files and serves the result over MCP. It is tested with Claude Code and Codex. Most reads work from disk with the Unreal Editor closed; edits need the Editor.

Get it on Fab · Latest release · Documentation

UE 5.7 UE 5.8 Early Access


Early Access. Tool names, parameters and output shapes may change between releases.

The Fab product is named NarshaADK. The installed plugin folder, code module and runtime executable are named NarshaMCP.

Quick start

The runtime is a prebuilt Windows 64-bit executable inside the plugin, and it runs on your machine. There is no hosted MCP endpoint. Python and Node.js are not required.

  1. In an Unreal Engine 5.7 or 5.8 C++ project, install NarshaADK from Fab and enable the NarshaMCP plugin, or extract the ZIP for your engine version from the latest release into YourProject/Plugins/.
  2. Build the C++ project once. The first build writes the project's MCP configuration.
  3. If you configure a client by hand, point it at the runtime that ships inside the plugin:
{

"mcpServers": { "narshamcp": { "command": " /Plugins/NarshaMCP/Source/ThirdParty/bin/narshamcp.exe", "args": ["connect", "--project-path", " "], "env": { "RUST_LOG": "error" } } } }

Fab installs the plugin under the engine's Plugins folder ( /Engine/Plugins/Marketplace/NarshaMCP or /Engine/Plugins/Fab/NarshaMCP, where is your engine install folder), not in the project. For a Fab install, replace /Plugins/NarshaMCP in the command with that plugin folder. Clients that launch the server as a direct process, such as Cursor, use --stdio in place of connect.

The full steps are in Requirements, Install and Connect your MCP client.

What you can do

Most tools take an operation argument. The table lists common read operations. ue_tool_docs returns every operation and its parameters, and your client lists the tools under tools/list.

ToolReturnsRead operationsEditor closedMaturity
ue_analyze_symbolsSymbols, callers, callees and class hierarchy from the project's PDBs; C++/Blueprint cross-references matched against the Blueprint packagessearch_symbols, find_callers, find_callees, trace_hierarchy, find_cpp_to_bp, find_bp_to_cpp, impact_analysisyesProduction
ue_manage_blueprintEvents, nodes, variables and defaults, parent class and AnimGraph of a Blueprint assetget_event_graph, get_raw_nodes, search_variables, get_variable_default, get_blueprint_metadata, list_blueprints, get_animgraphyes; edits need the EditorBeta
ue_fix_errorsBuild-log errors matched to a fix: the missing #include, the missing Build.cs modulescan_build_log, preflight, previewyes; build_and_fix runs a build, get_compiler_results needs the EditorBeta
ue_manage_aiStateTree and Behavior Tree states, tasks, transitions and bindingsget_summary, get_structure, find_transitions, get_bindingsyes; edits need the EditorProduction
ue_manage_materialMaterial node topology, graph summary and instance hierarchyget_graph_summary, get_nodes, get_hierarchy, search_materialsyes; name-based edges need the EditorExperimental
ue_manage_niagaraNiagara systems, emitters, renderers and parametersget_emitter_details, get_structure, get_parameters, search_systemsyesExperimental
ue_manage_pcgPCG graph nodes and flowget_structure, trace_flow, find_nodes, search_graphsyesExperimental
ue_search_assetsAsset search and DataTable rows; a cold load of the reference index may persist a cache in the projectsearch, get_table, find_dependencies, find_references, find_impactyesBeta
ue_analyze_configConfig values across engine and project layers; console-variable declarationssearch_config, explain_config, explore_cvaryesBeta
ue_trace_executionAn execution path across input, abilities, Blueprint and C++trace_execution_flow, trace_from_input, trace_ability_flow, trace_gameplay_tagyesBeta
ue_generate_codeC++ class scaffolds with Unreal macros and module setupgenerate_classyes; returns the file content for you to saveBeta
ue_grep, ue_glob, ue_readText and name search across source, assets and configa query, pattern or identifier; no operationyesExperimental

ue_check_health reports the runtime version and whether the indexes are ready.

Before and after

Each example shows the request, the MCP tool call and the JSON response. Captured from NarshaMCP v0.13.7 on Epic's Lyra Starter Game (UE 5.8.1) with the Editor closed. Values are as returned; removed keys and array elements are marked in the block.

C++ and Blueprint cross-references

Request. Which Blueprints call StartRangedWeaponTargeting, which C++ does GA_Weapon_Fire call, and what derives from ALyraCharacter?

Before. grep -rn StartRangedWeaponTargeting finds the C++ declaration and definition. The Blueprint call sites are inside binary .uasset packages.

Call. Editor closed.

{"name": "ue_analyze_symbols", "arguments": {"operation": "find_cpp_to_bp", "function_name": "ULyraGameplayAbility_RangedWeapon::StartRangedWeaponTargeting", "limit": 5}}

Output. As returned; cuts are marked.

{

"function_name": "ULyraGameplayAbility_RangedWeapon::StartRangedWeaponTargeting", "total_callers": 2, "truncated": false, "blueprint_callers": [ { "blueprint_name": "GA_Weapon_Fire", "blueprint_path": "/Game/Weapons/GA_Weapon_Fire", "owning_function": "K2_ActivateAbility", "node_name": "K2Node_CallFunction_31", "match_tier": "qualified", "confidence": 0.75 }, { "blueprint_name": "GA_WeaponNetShooter", "blueprint_path": "/ShooterCore/Weapons/NetShooter_PROTO/GA_WeaponNetShooter", "owning_function": "K2_ActivateAbility", "node_name": "K2Node_CallFunction_31", "match_tier": "qualified", "confidence": 0.75 } ] // [truncated] blueprint_callers[] fields omitted: call_type, is_pure; keys omitted: operation, skip_dedup, success }

Call. Editor closed.

{"name": "ue_analyze_symbols", "arguments": {"operation": "find_bp_to_cpp", "blueprint_name": "GA_Weapon_Fire", "limit": 2, "offset": 18}}

Output. As returned; cuts are marked.

{

"blueprint_name": "GA_Weapon_Fire", "total_calls": 33, "offset": 18, "truncated": true, "cpp_calls": [ { "full_name": "LyraGameplayAbility_RangedWeapon::StartRangedWeaponTargeting", "owning_function": "K2_ActivateAbility", "node_name": "K2Node_CallFunction_31", "is_pure": false }, { "full_name": "KismetSystemLibrary::SetTimerDelegate", "owning_function": "K2_ActivateAbility", "node_name": "K2Node_CallFunction_4", "is_pure": false } ] // [truncated] cpp_calls[] fields omitted: function_name, owner_class; keys omitted: operation, returned, success, total_count }

Call. Editor closed.

{"name": "ue_analyze_symbols", "arguments": {"operation": "trace_hierarchy", "class_name": "ALyraCharacter", "direction": "down"}}

Output. As returned; cuts are marked.

{

"class_name": "ALyraCharacter", "cpp_descendants_count": 1, "bp_descendants_count": 10, "descendants": [ {"depth": 1, "name": "ALyraCharacterWithAbilities", "relation": "child", "source": "pdb"}, {"depth": 1, "name": "Character_Default", "relation": "child_blueprint", "source": "blueprint"}, {"depth": 2, "name": "B_Hero_Default", "relation": "child_blueprint", "source": "blueprint"}, {"depth": 2, "name": "B_ShootingTarget", "relation": "child_blueprint", "source": "blueprint"} ], "interface_parents": ["IAbilitySystemInterface", "IGameplayCueInterface", "IGameplayTagAssetInterface", "ILyraTeamAgentInterface"] // [truncated] descendants: 4 of 11 elements; descendants[] fields omitted: parent; keys omitted: 13 of 18 }

Result. owning_function is the Blueprint event that contains the call, and match_tier with confidence records how the symbol was matched to the node. descendants[].source is pdb for a C++ subclass and blueprint for a Blueprint one.

Blueprint events, variables and nodes

Request. What events does GA_Weapon_Fire handle, what is its fire delay, and how is a node wired?

Before. Content/Weapons/GA_Weapon_Fire.uasset is binary, and grep -rn FireDelayTimeSecs over the source finds nothing: the variable exists only in the asset.

Call. Editor closed.

{"name": "ue_manage_blueprint", "arguments": {"operation": "get_event_graph", "blueprint_name": "GA_Weapon_Fire"}}

Output. As returned; cuts are marked.

{

"blueprint_name": "GA_Weapon_Fire", "count": 5, "events": [ {"node_title": "FireComplete", "node_class": "K2Node_CustomEvent"}, {"node_title": "FailureMontage Delay Complete", "node_class": "K2Node_CustomEvent"} ] // [truncated] events: 2 of 5 elements; events[] fields omitted: node_id, owning_function; keys omitted: operation, success }

Call. Editor closed.

{"name": "ue_manage_blueprint", "arguments": {"operation": "search_variables", "blueprint_name": "GA_Weapon_Fire", "pattern": "*Fire*"}}

Output. As returned; cuts are marked.

{

"parent_class": "LyraGameplayAbility_RangedWeapon", "total_count": 2, "results": [ { "name": "CharacterFireMontage", "default_value": "AM_MM_Rifle_Fire", "default_value_type": "Object", "edit_condition": "EditDefaultsOnly" }, { "name": "FireDelayTimeSecs", "default_value": "0.1", "default_value_type": "Double", "edit_condition": "EditDefaultsOnly" } ] // [truncated] results[] fields omitted: 9 of 13; keys omitted: 14 of 17 }

Call. Editor closed.

{"name": "ue_manage_blueprint", "arguments": {"operation": "get_raw_nodes", "blueprint_name": "GA_Weapon_Fire", "page": 1, "page_size": 1}}

Output. As returned; cuts are marked.

{

"total_nodes": 98, "has_more": true, "nodes": [ { "id": "K2Node_AsyncAction_ListenForGameplayMessages_0", "node_class": "K2Node_AsyncAction_ListenForGameplayMessages", "owning_function": "K2_OnAbilityAdded", "pins": [ { "name": "execute", "category": "exec", "direction": "input", "linked_to": [ {"node_id": "K2Node_Event_1", "pin_name": "then", "export_index": 70} ] }, {"name": "then", "category": "exec", "direction": "output", "linked_to": []} ] } ] // [truncated] nodes[].pins: 2 of 12 elements; nodes[].pins[].linked_to[] fields omitted: owning_function; nodes[].pins[] fields omitted: container_type, default_value, pin_id, sub_category; nodes[] fields omitted: 5 of 9; keys omitted: 10 of 13 }

Result. parent_class, events[].node_title and results[].default_value are read from the .uasset. pins[].linked_to names t

ตัดมาแค่ช่วงต้น อ่านต่อใน repo

ถาม PopNx