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

Dotnet Template MCP

โดย YuliiaKovalovaรุ่น 2.0.0i★ –iรันบนเครื่อง
ชื่อใน registryio.github.YuliiaKovalova/dotnet-template-mcp

ติดตั้ง

ภาพรวม

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

MCP server for dotnet new: discover, inspect, preview and create .NET projects from templates.

สามเสาของ PopNx MCP

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

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

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

  • การเชื่อมต่อ: รันบนเครื่อง
  • ช่องทาง (transport): stdio
  • หมวด: อื่น ๆ

ติดตั้ง

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

ก่อนติดตั้ง

คุณใช้แอปไหน

เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”

เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json

{
  "mcpServers": {
    "dotnet-template": {
      "command": "dnx",
      "args": [
        "DotnetTemplateMCP",
        "--yes"
      ]
    }
  }
}

พิมพ์คำสั่งนี้ใน Terminal

claude mcp add dotnet-template -- dnx DotnetTemplateMCP --yes

เปิดใน Cursor

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json

{
  "mcpServers": {
    "dotnet-template": {
      "command": "dnx",
      "args": [
        "DotnetTemplateMCP",
        "--yes"
      ]
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

เปิดใน VS Code

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .vscode/mcp.json ของโปรเจกต์

{
  "servers": {
    "dotnet-template": {
      "type": "stdio",
      "command": "dnx",
      "args": [
        "DotnetTemplateMCP",
        "--yes"
      ]
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น

ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี

ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README

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

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

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

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

  • ✓ ผ่าน

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

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

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

    ยังมีคนดูแล

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

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

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

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

  • – ไม่เกี่ยว

    endpoint ตอบ

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

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

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

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

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

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

เทียบกับตัวอื่นในหมวด อื่น ๆi

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

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

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

Dotnet Template MCP ปลอดภัยไหม?

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

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

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

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

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

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

repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (2.0.0) เข้า registry 3 เดือนที่ผ่านมา

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

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี .NET ในเครื่องด้วย

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

ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, alalanet — check before you pay

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

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

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

Spec Driven Development

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

โดย formulahendryเริ่มต้น↓ 66/สัปดาห์★ 440อัปเดต 14 เดือนที่ผ่านมา

รันบนเครื่อง

Remote Desktop Commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

โดย desktop-commanderกำลังโต★ 211อัปเดต 3 วันที่ผ่านมา

รันบนคลาวด์✓ desktopcommander.app

alalanet — check before you pay

Check packages, MCP servers and x402 endpoints before agents install or pay. Signed.

โดย alalanetเริ่มต้นอัปเดต วันนี้

รันบนคลาวด์✓ alalanet.com

README จากผู้ทำ

เปิดอ่าน README

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

DotnetTemplateMCP

An MCP server that lets AI agents work with dotnet new templates — search, inspect, preview, and create projects through natural conversation instead of memorizing CLI flags.

Instead of this:

dotnet new list --language C#

dotnet new webapi --help dotnet new webapi --auth Individual --use-controllers --name MyApi --output ./MyApi

Your AI agent just says: *"I need a web API with authentication and controllers"* — and the MCP server figures out the rest.

Template Validation for Authors

Building a custom dotnet new template? template_validate catches mistakes before you publish — no more guessing if your template.json is correct:

Agent calls: template_validate("./my-template")

← Returns: { "valid": false, "summary": "2 error(s), 1 warning(s), 3 suggestion(s)", "errors": [ "Missing required field 'shortName'.", "Parameter 'Framework': default value 'net7.0' is not in the choices list." ], "warnings": [ "Missing 'sourceName'. Without it, the generated project name won't be customizable via --name." ], "suggestions": [ "Consider adding a 'description' field to help users understand what this template creates.", "Consider adding 'language' tag (e.g., 'C#') for better discoverability.", "Consider adding 'type' tag (e.g., 'project', 'item') for filtering." ] }

What it catches: missing required fields, invalid identity format, short name conflicts with CLI commands, parameter issues (missing defaults, empty choices, prefix collisions, type mismatches), broken computed symbols, constraint misconfiguration, and missing tags.

How this relates to the official tooling. Microsoft ships template authoring validation already, and you should know about it:

Official toolWhat it gives you
Microsoft.TemplateEngine.Authoring.CLIdotnet template-authoring validate — the reference validator
Microsoft.TemplateEngine.Authoring.TasksValidation at build time, as an MSBuild task
Microsoft.TemplateEngine.Authoring.TemplateVerifierSnapshot testing of template output

What template_validate adds is not the validation itself — it is the delivery: a single structured JSON payload, split into errors/warnings/suggestions with fix-oriented messages, returned in-band to an agent that is already editing the template. No install step, no output parsing, no second tool in the loop. If you are a human authoring templates in CI, prefer the official tools above; they are the reference implementation and cover cases this does not.

Tools

ToolWhat it does
template_searchSearch locally and on NuGet.org — one call, ranked results
template_listList what's installed, filter by language/type/classification
template_inspectParameters, constraints, post-actions — all in one shot
template_instantiateCreate a project. Not installed? Auto-resolves from NuGet. Elicits missing params interactively
template_dry_runPreview files without touching disk
template_installInstall a package (idempotent — skips if already there)
template_uninstallRemove a template package
templates_installedInventory of everything installed
template_from_intent*"web API with auth"* → webapi + auth=Individual — no LLM needed
template_create_from_existingAnalyze a .csproj → generate a reusable template matching repo conventions
template_composeExecute a sequence of templates (project + items) in one workflow
template_suggest_parametersSuggest parameter values with rationale based on cross-parameter relationships
template_validateValidate a local template directory for authoring issues before publishing
template_compareCompare 2+ templates side by side — parameters, features, frameworks
solution_analyzeAnalyze a solution/workspace — project structure, frameworks, CPM status
packages_upgradeScan a project/solution/folder for outdated NuGet versions and report or apply upgrades (CPM-aware)

📖 Full tool reference →

Hosted deployment

A hosted deployment is available on Fronteir AI.

Quick Start

Global tool (.NET 8+)
dotnet tool install --global DotnetTemplateMCP --version 2.0.0
Zero-install with dnx (.NET 10+)
dnx -y DotnetTemplateMCP --version 2.0.0
VS Code / GitHub Copilot

Add to mcp.json:

{

"servers": { "dotnet-templates": { "type": "stdio", "command": "dnx", "args": ["-y", "DotnetTemplateMCP", "--version", "2.0.0"] } } }

📖 Claude Desktop, Cursor, and more →

Transport Modes

Stdio (default)

Standard I/O transport for local CLI and tool usage:

template-engine-mcp                     # stdio is the default

template-engine-mcp --transport stdio # explicit

HTTP (remote / team-shared)

Streamable HTTP transport for remote or CI/CD deployment.

Authentication is mandatory. Every tool in this server writes files and installs NuGet packages, so an open endpoint is a remote code execution surface. The server refuses to start the HTTP transport unless you either set a token or explicitly opt in to anonymous access:

# Recommended

MCP_TEMPLATE_HTTP_TOKEN= template-engine-mcp --transport http

Only for a trusted, isolated network

MCP_TEMPLATE_HTTP_ALLOW_ANONYMOUS=true template-engine-mcp --transport http

Clients authenticate with Authorization: Bearer . Requests to /mcp are rate limited per client (default 120/minute, MCP_TEMPLATE_HTTP_RATE_LIMIT=0 disables). /health stays anonymous for probes.

Not multi-tenant. TemplateEngineService is a process-wide singleton with virtualizeSettings: false, so the installed-template set is shared by every caller, and the workspace root is process-wide. Run one instance per trusted team or per tenant — do not expose a single instance to mutually untrusting users.

template-engine-mcp --transport http

or via environment variable:

MCP_TEMPLATE_TRANSPORT=http template-engine-mcp

The HTTP server exposes:

  • `/mcp` — MCP streamable HTTP endpoint (bearer token required)
  • `/health` — Health check endpoint (anonymous)

Configure the listen URL:

MCP_TEMPLATE_HTTP_URL=http://0.0.0.0:8080 template-engine-mcp --transport http

Connect your MCP client:

{

"servers": { "dotnet-templates": { "type": "http", "url": "http://localhost:5005/mcp" } } }

Interactive Elicitation

When a template has required parameters that weren't provided, the server asks the user interactively via MCP elicitation — instead of failing. Template parameter types are mapped to form fields:

Template ParameterElicitation Field
stringText input
bool / booleanCheckbox
int / numberNumber input
Choice parameterSingle-select dropdown

Disable with MCP_TEMPLATE_ELICITATION=false.

How it works

You: "I need a web API with authentication, controllers, and Docker support"

→ template_from_intent extracts keywords: web api, authentication, controllers, docker → Matches: webapi (confidence: 0.85) → Resolves: auth=Individual, UseControllers=true, EnableDocker=true → template_instantiate creates the project

The server also does smart defaults (AOT → latest framework, auth → HTTPS stays on), parameter validation before writing files, constraint checking (OS, SDK, workload), interactive elicitation of missing required parameters, and auto-resolves templates from NuGet if they're not installed.

CPM & Latest Package Versions

When creating a project inside a solution that uses Central Package Management, the server automatically:

  1. Detects Directory.Packages.props by walking up the directory tree
  2. Strips Version attributes from generated .csproj PackageReferences
  3. Adds missing entries to Directory.Packages.props
  4. Resolves latest stable NuGet versions — no more stale hardcoded versions from templates
Before (what dotnet new generates):

← stale, breaks CPM

After (what template_instantiate produces): .csproj: Directory.Packages.props:

Works for standalone projects too — versions are updated directly in the .csproj.

Multi-Template Composition

Chain multiple templates in one call with template_compose:

[

{"templateName": "webapi", "name": "MyApi", "parametersJson": "{\"auth\": \"Individual\"}"}, {"templateName": "gitignore", "target": "."} ]

📖 Architecture & smart behaviors →

Tool Profiles (Lite vs Full)

By default, all 15 tools are available. If your agent works better with fewer tools, set the MCP_TEMPLATE_TOOL_PROFILE environment variable:

ProfileToolsWhen to use
full (default)All 15 toolsFull control — advanced workflows, composition, custom templates
lite5 core toolsSimpler agents that just need to find and create projects

Lite profile tools: template_from_intent, template_instantiate, template_inspect, template_search, template_dry_run

{

"servers": { "dotnet-template-mcp": { "command": "dotnet-template-mcp", "env": { "MCP_TEMPLATE_TOOL_PROFILE": "lite" } } } }

Non-lite tools will return a helpful message explaining they're disabled and how to enable them.

Documentation

DocWhat's in it
ConfigurationVS Code, Claude Desktop, Cursor setup + troubleshooting
Tool ReferenceEvery tool's parameters, types, and examples
ArchitectureTemplate cache, smart behaviors, telemetry, project structure
MCP vs SkillsWhy MCP over Copilot Skills — benefits and downsides
Plain LLM vs MCPSide-by-side: what a plain LLM does vs. the MCP tool (4 scenarios)
Skills EquivalentWhat it'd take to cover this with Skills instead

Building & Testing

dotnet build

dotnet test # 185+ tests — unit, integration, and E2E

CI runs on push/PR via GitHub Actions (Ubuntu + Windows).

Contributing

Contributions are welcome! Please open an issue to discuss proposed changes before submitting a PR.

# Setup

dotnet restore dotnet build

Run tests

dotnet test

Pack locally

dotnet pack src/DotnetTemplateMcp -o nupkg/

Changelog

See CHANGELOG.md for release history.

License

MIT

ถาม PopNx