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 集成