Untyped Plutus Core Mcp

io.github.mrfentmen由 GitHub 帳號 mrfentmen 發布v1.0.0更新於 Nov 8, 2026

Untyped Plutus Core MCP: read, check, lint, scaffold and run code.

發布方自己的服務:core.blue

已驗證STDIO僅桌面檔案與儲存開發者工具

概覽

AI 產生的概覽

本機 MCP 伺服器,讓助手在本機讀取、檢查、lint、格式化、建立範本並執行 Untyped Plutus Core 程式碼。

可以做什麼
  • 辨識專案,讀取或寫入原始碼檔案(預設拒絕覆寫)
  • 檢查語法、lint、格式化並列出程式碼中的 TODO
  • 擷取符號、列出匯入、尋找參照,重新命名符號或註解/取消註解行區間
  • 插入起始程式碼片段並產生可執行的小專案範本
  • 以已安裝的工具鏈執行檔案、測試與建置,並回報工具鏈狀態
  • 回傳精簡的語言語法與工具鏈參考
適用情境
適合在本機處理 Untyped Plutus Core 程式碼時使用,讓助手直接檢查、整理、重構或執行這些程式碼,而不必把檔案貼進對話。最適用於已裝好對應編譯器或解譯器的單一語言小型專案。
執行需求
以本機 stdio 程序執行,從 npm 套件安裝,需要 Node.js 與 npm。它使用機器上已安裝的 Untyped Plutus Core 編譯器、解譯器、建置與測試指令;未宣告任何帳號、API 金鑰或環境變數。
安裝前請注意
多個工具會變更磁碟檔案:write_source、rename_symbol、insert_snippet、comment_lines、uncomment_lines 與 scaffold_project。重新命名與插入片段預設先試跑,write_source 在 overwrite 為 true 前拒絕覆寫,但註解、取消註解與建立範本未說明有試跑。run_source、run_tests 與 build_project 會執行本機指令,只應對可信程式碼使用。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Untyped Plutus Core Mcp,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

awesome-servers

One repo for three families of servers, each subtree keeping its own layout and tooling so it can still be built, run and published on its own.

SubtreeWhat it holdsRun one
mcp/338 TypeScript MCP servers, plus 1107 published packages in published/cd mcp/servers/<slug> && npm install && npm run build
acp/79 Python ACP agentspython3 acp/agents/<name>/agent.py
a2a/37 Python A2A servers plus the shared a2a_kitpython3 a2a/servers/<name>/server.py
watchd/a threshold watcher that runs the feeds between editor sessionspython3 watchd/watchd.py --config conditions.json --loop
site/the published site: registry with search, the public-feed atlas, watchd planshttps://mrfentmen.github.io/awesome-servers/

Most servers read public data with no key of their own; the ones wrapping a vendor API take that vendor's key. Nothing in this repo asks a caller to pay. On 2026-10-17 the licence machinery was removed for good: the per-tool src/license.ts gates are gone from the MCP servers, and the A2A and ACP trees no longer carry the hosted licence-gateway half — the skills that used it now answer with an explicit not-implemented stub. Nothing here asks a caller to pay, and nothing they run is refused with a buy link.

Nothing here is generated: each subtree's README says what its servers read, and every server has its own unit tests (mcp/servers/<slug>/tests, acp/agents/<name>/tests, a2a/servers/<name>/tests) plus a live smoke check (tools/smoke*.py, a2a/tools/smoke_all.py).

Novel and original

Nearly all of this is first-of-its-kind work, not a port of an existing catalogue. Before each server or agent was built, it was checked against the official tool lists (the MCP registries, agentclientprotocol.com's agent list and registry) and a live GitHub search for the same domain, and the research logs record what was found and why it still counted as missing — see mcp/MISSING.md, acp/MISSING.md and a2a/docs/. Highlights:

  • The MCP side holds TypeScript servers, one npm package each, and 1039 published packages under published/; mcp/MISSING.md documents the check that preceded every build: what was searched, what was skipped and why the domain still counted as uncovered.
  • On the ACP side there were zero domain agents before this repo — every agent on the official list was a coding agent. These 79 Python agents are the first non-coding ACP agents, and several use protocol surfaces no other agent uses in production (session/request_permission for dataset reads, fs/write_text_file for a briefing file, session/cancel for a conditional watch, image content blocks, a live SSE push feed), each proved-unused in the wild by search at build time. Two more firsts carry their own proof: the orchestrator is an agent whose feeds are agents — it spawns sibling repo agents as real ACP child processes and merges their answers — and the nyc pack is the first multi-agency city surface.
  • acp/MISSING.md doubles as the public-feed atlas: every keyless feed probed live, with its date, what it answered and whether it still works. The published site renders that table at https://mrfentmen.github.io/awesome-servers/atlas.html.
  • The pattern across all three subtrees is the same thesis: wrap one real, keyless public dataset, answer honestly about what the feed did and did not say, and keep the whole thing small, tested and self-contained.

Publishing

  • MCP servers publish from mcp/servers/<slug> (its own package.json, version and README).
  • ACP and A2A servers are repo-run today (Python, no packaging step).

Built on top of it

Creatures that use this corpus as their world live in the sibling repo mrfentmen/superagents (public, with its own claim-check in MISSING.md):

  • polymath — routes your question to the most fitting agents of this repo, spawns each as a real ACP child process, and merges the answers into one brief with per-row citations; a sibling that fails appears as a named row, never silence. Its registry is a data file and its ranking is deterministic word-scoring, not a model opinion.
  • sentry — one plain sentence ("watch air quality in Denver over 150") becomes a tracked watch: a permission-asked protocol write produces the conditions file this repo's watchd/ obeys unchanged, plus the activation lines. Checks it can author today: air thresholds, quake magnitudes within a radius, river gauges at flood stage.
  • fedora hat guy — the persona agent in his own repo mrfentmen/fedora-hat: says "never miss" and means it — one sentence installs the full crown of watches (air + quakes, gauge-named flood) in one permissioned write, and your other questions are forwarded to the siblings above with every row cited.
  • instink — the instinct agent in his own repo mrfentmen/instink: compiles a skill into a reflex — a matcher plus the answer it fires, with hit/miss counters and honest promotion/demotion. The skill doc stays one step away, never deleted.
  • contextink — the context agent in his own repo mrfentmen/contextink: you say "do this" and it acquires the context from the repo, git, and recent files so you don't have to explain it; asks only the minimal high-information-gain questions when acquisition fails.
  • rewind — the replay agent in his own repo mrfentmen/rewind: replays agent runs and mutates one variable to see what would have happened. Replay + mutate + diff for agent traces.
  • scopink — the scope agent in his own repo mrfentmen/scopink: checks if an action is within the scope of what was asked. Detects scope creep in agent plans.
  • curious — the curiosity agent in his own repo mrfentmen/curious: proactively seeks information it doesn't have. Scans for knowledge gaps, seeks answers, learns facts.
  • bored — the idle agent in his own repo mrfentmen/bored: uses idle time productively. Consolidates memories, explores areas, prepares for tasks.

Point the polymath at a checkout of this repo with AWESOME_SERVERS_HOME=$PWD/awesome-servers and it federates across the two repos live.

Published snapshot (published/)

published/ holds one directory per npm package, byte-for-byte what the registry serves: 1039 packages, every version matching npm latest.

  • published/INDEX.md is generated from the tree by python3 scripts/index-published.py.
  • scripts/sync-published-snapshot.py re-downloads every package from npm; run it only when every local fix has been published, because it overwrites dist/ from the tarballs.
  • One package carries a licence gate (MCP_LICENSE_KEY): @mrfentmen/vg-resource-mcp. Another 495 still ship tools that answer Not yet implemented; published/INDEX.md lists every one of them.
  • Every package links to this repo (mrfentmen/awesome-servers) as its source.

servers/ holds the older per-server source that predates the snapshot. Where the two disagree, published/ is what users actually install.

來源:README.md,提交 9cd6f7e

工具

20

detect_project

Find Untyped Plutus Core files, project markers and the toolchain layout in a directory.

輸入參數pathmaxDepth

read_source

Read a Untyped Plutus Core source file, optionally a line range.

輸入參數cwdpath必填endLinestartLine

write_source

Write a Untyped Plutus Core source file. Refuses to overwrite unless overwrite is true.

輸入參數cwdpath必填content必填overwritecreateDirs

syntax_check

Check Untyped Plutus Core structure and, when configured, run the real parser without executing the program.

輸入參數cwdpathcontent

format_source

Trim trailing whitespace, normalize line endings and ensure a final newline in Untyped Plutus Core code.

輸入參數cwdpathwritecontentexpandTabsindentWidth

lint_source

Check Untyped Plutus Core code for trailing whitespace, tabs, long lines, missing final newline and unbalanced structure.

輸入參數cwdpathcontentmaxLineLength

extract_symbols

List functions, classes, types and other Untyped Plutus Core definitions with line numbers.

輸入參數cwdpathcontent

list_imports

List imports, includes and dependencies in a Untyped Plutus Core source file.

輸入參數cwdpathcontent

list_todos

Find TODO, FIXME, HACK and XXX comments in Untyped Plutus Core code.

輸入參數cwdpathcontent

find_references

Find every mention of a symbol in one Untyped Plutus Core source file.

輸入參數cwdpath必填symbol必填

rename_symbol

Rename one symbol in a Untyped Plutus Core file. Defaults to a dry run.

輸入參數cwdpath必填dryRunnewName必填oldName必填

insert_snippet

Insert a real Untyped Plutus Core starter snippet into a file. Defaults to a dry run.

輸入參數cwdlinepath必填dryRunsnippet必填

comment_lines

Comment a line range in Untyped Plutus Core code using the language comment marker.

輸入參數cwdpathwritecontentendLinestartLine

uncomment_lines

Remove the Untyped Plutus Core comment marker from a line range.

輸入參數cwdpathwritecontentendLinestartLine

scaffold_project

Create a small runnable Untyped Plutus Core project with a starter file and test directory.

輸入參數pathoverwriteprojectName

run_source

Run a Untyped Plutus Core file with the installed interpreter or compiler.

輸入參數cwdpath必填timeoutMs

run_tests

Run the configured Untyped Plutus Core test command in a project directory.

輸入參數cwdtimeoutMs

build_project

Build a Untyped Plutus Core project with the configured compiler command.

輸入參數cwdpathtimeoutMs

toolchain_status

Show which Untyped Plutus Core compilers, interpreters, build tools and test commands are installed.

無需輸入參數。

language_reference

Return a compact Untyped Plutus Core syntax and toolchain reference for agents.

無需輸入參數。

版本歷史

1
  1. v1.0.0最新Nov 8, 2026

評分

已滿足適用檢查項的 80%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分
  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。

其他 Core 整合