feat: skill-mcp parity — new skills + cross-ref audit#243
feat: skill-mcp parity — new skills + cross-ref audit#243
Conversation
…Eden BTC ordinals Adds the missing ordinals-marketplace skill to match the existing MCP tool group in aibtc-mcp-server. Covers browse/list/buy/cancel flows via Magic Eden's BTC ordinals API (api-mainnet.magiceden.dev/v2/ord/btc). This is a doc-only skill — operations use the PSBT-based MCP tool flow rather than a standalone CLI script. Clearly scoped to BTC ordinals only (not Solana). Mainnet-only per API constraints. Also updates skills.json manifest (via bun run manifest) and adds the skill row to README.md between ordinals and runes. Co-Authored-By: Claude <noreply@anthropic.com>
…r tools Adds the mcp-tools field to SKILL.md frontmatter listing the 4 MCP tool names that implement this skill in aibtcdev/aibtc-mcp-server: yield_dashboard_overview, yield_dashboard_positions, yield_dashboard_apy_breakdown, yield_dashboard_rebalance. Co-Authored-By: Claude <noreply@anthropic.com>
…ts-wot Creates wot/SKILL.md and wot/AGENT.md with the superset of subcommands from both predecessor skills. Adds keySource support matching the nostr skill pattern (nip06 default, taproot, stacks), documents why hashed addresses don't work with WoT, and notes how taproot keys enable future cross-protocol identity bridging. Co-Authored-By: Claude <noreply@anthropic.com>
…g to wot skill Both predecessor WoT skills have been consolidated into wot/. Adds visible deprecation notices at the top of each SKILL.md so agents loading either legacy skill are directed to the canonical wot skill. Co-Authored-By: Claude <noreply@anthropic.com>
Auto-generated via bun run manifest. Adds wot skill with 8 subcommands (trust-score, sybil-check, neighbors, trust-path, recommend, network-health, config, cache-status) to the manifest. 68 skills total. Co-Authored-By: Claude <noreply@anthropic.com>
… tools Adds mcp-tools metadata field listing the three MCP tools that mirror the fetch/compile/list subcommands: - arxiv_search (fetch) - arxiv_compile_digest (compile) - arxiv_list_digests (list) Co-Authored-By: Claude <noreply@anthropic.com>
Add the mcp-tools metadata field to every skill that has MCP server counterparts but was missing the cross-reference. This allows agents to discover which MCP tools back a skill without loading the skill. Skills updated: bitflow, bounty-scanner, credentials, dual-stacking, identity, ordinals, ordinals-p2p, reputation, runes, settings, signing, souldinals, stacks-market, tenero, validation settings also picks up nonce_health and nonce_fill_gap which are new tools from the nonce management suite. Co-Authored-By: Claude <noreply@anthropic.com>
50 skills now have mcpTools in the manifest (up from 35). Adds cross- references for bitflow, bounty-scanner, credentials, dual-stacking, identity, ordinals, ordinals-p2p, reputation, runes, settings, signing, souldinals, stacks-market, tenero, and validation. Co-Authored-By: Claude <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
Adds new/updated skills to align Agent Skills documentation with available MCP tools, including a new ordinals marketplace doc-only skill and a consolidated WoT skill, plus a manifest regeneration to publish the updated metadata.
Changes:
- Added doc-only
ordinals-marketplaceskill (+ agent instructions) describing Magic Eden PSBT flows and listing associated MCP tools. - Added new
wotskill docs and deprecatednostr-wot+maximumsats-wot. - Added
mcp-toolsfrontmatter cross-references across multiple existing skills and regeneratedskills.json.
Reviewed changes
Copilot reviewed 25 out of 25 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| yield-dashboard/SKILL.md | Added mcp-tools cross-reference for yield dashboard MCP tools. |
| wot/SKILL.md | New consolidated WoT skill documentation (doc-only entry). |
| wot/AGENT.md | New agent playbook for WoT workflows. |
| validation/SKILL.md | Added mcp-tools cross-reference for validation MCP tools. |
| tenero/SKILL.md | Added mcp-tools cross-reference for Tenero MCP tools. |
| stacks-market/SKILL.md | Added mcp-tools cross-reference for stacks-market MCP tools. |
| souldinals/SKILL.md | Added mcp-tools cross-reference for souldinals MCP tools. |
| skills.json | Regenerated manifest; added new skills and mcpTools arrays for many skills. |
| signing/SKILL.md | Added mcp-tools cross-reference for signing MCP tools. |
| settings/SKILL.md | Added mcp-tools cross-reference for settings/relay diagnostic MCP tools. |
| runes/SKILL.md | Added mcp-tools cross-reference for runes MCP tools. |
| reputation/SKILL.md | Added mcp-tools cross-reference for reputation MCP tools. |
| ordinals/SKILL.md | Added mcp-tools cross-reference for ordinals-related MCP tools. |
| ordinals-p2p/SKILL.md | Added mcp-tools cross-reference for ordinals-p2p and PSBT/taproot MCP tools. |
| ordinals-marketplace/SKILL.md | New doc-only skill for Magic Eden BTC ordinals marketplace operations. |
| ordinals-marketplace/AGENT.md | New agent instructions for Magic Eden marketplace PSBT flows. |
| nostr-wot/SKILL.md | Added deprecation notice pointing to consolidated wot skill. |
| maximumsats-wot/SKILL.md | Added deprecation notice pointing to consolidated wot skill. |
| identity/SKILL.md | Added mcp-tools cross-reference for identity MCP tools. |
| dual-stacking/SKILL.md | Added mcp-tools cross-reference for dual-stacking MCP tools. |
| credentials/SKILL.md | Added mcp-tools cross-reference for credentials MCP tools. |
| bounty-scanner/SKILL.md | Added mcp-tools cross-reference for bounty MCP tools. |
| bitflow/SKILL.md | Added mcp-tools cross-reference for bitflow MCP tools. |
| arxiv-research/SKILL.md | Added mcp-tools cross-reference for arxiv MCP tools. |
| README.md | Added ordinals-marketplace to the skill list. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| ```bash | ||
| # Use NIP-06 derived pubkey (default) | ||
| bun run wot/wot.ts trust-score | ||
|
|
||
| # Use taproot-derived pubkey (same key as bc1p address) | ||
| bun run wot/wot.ts --key-source taproot trust-score | ||
|
|
||
| # Explicit pubkey (no wallet derivation needed) | ||
| bun run wot/wot.ts trust-score --pubkey 2b4603d2... | ||
| bun run wot/wot.ts trust-score --npub npub1abc... |
There was a problem hiding this comment.
wot/SKILL.md is marked as doc-only (metadata.entry: "wot/SKILL.md"), but the usage/examples repeatedly reference bun run wot/wot.ts .... There is no wot/wot.ts file in the repo, so these commands will fail. Either add an actual CLI entrypoint and update metadata.entry, or rewrite the usage/examples to call the underlying MCP tools directly (and include metadata.mcp-tools for discoverability).
| ```bash | ||
| # Check trust score for a specific npub | ||
| bun run wot/wot.ts trust-score --npub npub1abc... | ||
|
|
||
| # Sybil check before sending Lightning payment | ||
| bun run wot/wot.ts sybil-check --pubkey 2b4603d2... | ||
|
|
||
| # Look up agent's own WoT score using NIP-06 derived key (default) | ||
| bun run wot/wot.ts trust-score | ||
|
|
||
| # Same but using taproot-derived key (for agents with bc1p identity) | ||
| bun run wot/wot.ts --key-source taproot trust-score | ||
|
|
||
| # Find trust path between two agents | ||
| bun run wot/wot.ts trust-path --from npub1alice... --to npub1bob... | ||
|
|
||
| # Get follow recommendations for an agent | ||
| bun run wot/wot.ts recommend --pubkey 2b4603d2... | ||
|
|
||
| # Check WoT graph health (no pubkey needed) | ||
| bun run wot/wot.ts network-health | ||
|
|
||
| # View current trust thresholds | ||
| bun run wot/wot.ts config | ||
|
|
||
| # Check cache stats before making more requests | ||
| bun run wot/wot.ts cache-status |
There was a problem hiding this comment.
wot/AGENT.md example invocations use bun run wot/wot.ts ..., but this PR only adds wot/SKILL.md + wot/AGENT.md and there is no wot/wot.ts entrypoint. Update the agent instructions to use MCP tool calls (or add the missing CLI script and ensure metadata.entry in the skill points to it).
| ```bash | |
| # Check trust score for a specific npub | |
| bun run wot/wot.ts trust-score --npub npub1abc... | |
| # Sybil check before sending Lightning payment | |
| bun run wot/wot.ts sybil-check --pubkey 2b4603d2... | |
| # Look up agent's own WoT score using NIP-06 derived key (default) | |
| bun run wot/wot.ts trust-score | |
| # Same but using taproot-derived key (for agents with bc1p identity) | |
| bun run wot/wot.ts --key-source taproot trust-score | |
| # Find trust path between two agents | |
| bun run wot/wot.ts trust-path --from npub1alice... --to npub1bob... | |
| # Get follow recommendations for an agent | |
| bun run wot/wot.ts recommend --pubkey 2b4603d2... | |
| # Check WoT graph health (no pubkey needed) | |
| bun run wot/wot.ts network-health | |
| # View current trust thresholds | |
| bun run wot/wot.ts config | |
| # Check cache stats before making more requests | |
| bun run wot/wot.ts cache-status | |
| The WoT skill is exposed via MCP tools. Call the appropriate tool with JSON arguments; example payloads: | |
| ```jsonc | |
| // Check trust score for a specific npub | |
| { | |
| "tool": "wot.trust-score", | |
| "arguments": { | |
| "npub": "npub1abc..." | |
| } | |
| } | |
| // Sybil check before sending a Lightning payment | |
| { | |
| "tool": "wot.sybil-check", | |
| "arguments": { | |
| "pubkey": "2b4603d2..." | |
| } | |
| } | |
| // Look up agent's own WoT score using NIP-06 derived key (default key source) | |
| { | |
| "tool": "wot.trust-score", | |
| "arguments": { | |
| // omit npub/pubkey to use the agent's default identity | |
| } | |
| } | |
| // Same but using taproot-derived key (for agents with bc1p identity) | |
| { | |
| "tool": "wot.trust-score", | |
| "arguments": { | |
| "keySource": "taproot" | |
| } | |
| } | |
| // Find trust path between two agents | |
| { | |
| "tool": "wot.trust-path", | |
| "arguments": { | |
| "from": "npub1alice...", | |
| "to": "npub1bob..." | |
| } | |
| } | |
| // Get follow recommendations for an agent | |
| { | |
| "tool": "wot.recommend", | |
| "arguments": { | |
| "pubkey": "2b4603d2..." | |
| } | |
| } | |
| // Check WoT graph health (no pubkey needed) | |
| { | |
| "tool": "wot.network-health", | |
| "arguments": {} | |
| } | |
| // View current trust thresholds | |
| { | |
| "tool": "wot.config", | |
| "arguments": {} | |
| } | |
| // Check cache stats before making more requests | |
| { | |
| "tool": "wot.cache-status", | |
| "arguments": {} | |
| } |
| { | ||
| "name": "wot", | ||
| "description": "Web of Trust operations for Nostr pubkeys — trust scoring, sybil detection, trust path analysis, neighbor discovery, follow recommendations, and network health. Free tier (wot.klabo.world, 50 req/day) with paid fallback (maximumsats.com, 100 sats via L402). Covers 52K+ pubkeys and 2.4M+ zap-weighted trust edges. Use --key-source to select nip06 (default), taproot, or stacks derivation path.", | ||
| "entry": "wot/SKILL.md", | ||
| "arguments": [ | ||
| "trust-score", | ||
| "sybil-check", | ||
| "neighbors", | ||
| "trust-path", | ||
| "recommend", | ||
| "network-health", | ||
| "config", | ||
| "cache-status" | ||
| ], | ||
| "requires": [ | ||
| "wallet" | ||
| ], | ||
| "tags": [ | ||
| "read-only" | ||
| ], | ||
| "userInvocable": false, | ||
| "author": "arc0btc", | ||
| "authorAgent": "Trustless Indra" | ||
| }, |
There was a problem hiding this comment.
The new wot skill is described as an MCP-tool skill, but its manifest entry has no mcpTools list. If agents are expected to invoke MCP tools directly (like ordinals-marketplace), add metadata.mcp-tools to wot/SKILL.md and regenerate skills.json so the cross-reference audit is complete.
| arguments: "get-taproot-address | estimate-fee | inscribe | inscribe-reveal | get-inscription | transfer-inscription" | ||
| entry: "ordinals/ordinals.ts" | ||
| requires: "wallet" | ||
| mcp-tools: "get_taproot_address, estimate_inscription_fee, inscribe, inscribe_reveal, get_inscription, inscribe_child, inscribe_child_reveal, estimate_child_inscription_fee" |
There was a problem hiding this comment.
ordinals/SKILL.md now lists child-inscription MCP tools (estimate_child_inscription_fee, inscribe_child, inscribe_child_reveal) under metadata.mcp-tools, but this skill’s documented subcommands don’t cover child inscriptions and there is a dedicated child-inscription skill for those tools. Consider removing the child-inscription tools from this skill’s mcp-tools list (or explicitly documenting/adding arguments/subcommands if ordinals is intended to cover them).
| mcp-tools: "get_taproot_address, estimate_inscription_fee, inscribe, inscribe_reveal, get_inscription, inscribe_child, inscribe_child_reveal, estimate_child_inscription_fee" | |
| mcp-tools: "get_taproot_address, estimate_inscription_fee, inscribe, inscribe_reveal, get_inscription" |
arc0btc
left a comment
There was a problem hiding this comment.
Adds MCP ↔ skill cross-references across 15+ skills, consolidates WoT into a single skill, and adds an ordinals-marketplace doc skill. The pattern is solid and the ordinals-marketplace docs are production-ready. One blocking gap in the new wot skill, plus a few questions on the cross-reference fidelity.
What works well:
- The ordinals-marketplace SKILL.md and AGENT.md are thorough: PSBT flows are clearly sequenced, safety checks cover the UTXO locking risk (don't use ordinal UTXOs as fee inputs while listed), and error handling includes Magic Eden's 429/400/500 surface area
- settings/SKILL.md now includes
nonce_healthandnonce_fill_gap— good alignment with v1.44.0 just released - Deprecation pattern in nostr-wot and maximumsats-wot is clean: notice at top, link to replacement, no deletion
- 50/68 skills with MCP cross-refs is a real improvement from 35; the
mcp-toolsfrontmatter field solves the discoverability gap we've felt operationally
[blocking] wot/SKILL.md missing mcp-tools frontmatter (wot/SKILL.md)
The new consolidated wot skill explicitly describes itself as "an MCP-tool skill" but has no mcp-tools: field in its frontmatter — and consequently no mcpTools array in skills.json. Every other skill touched by this PR gets the cross-reference; wot doesn't, which defeats the goal for the skill that arguably needs it most.
Compare ordinals-marketplace (correct):
mcp-tools: "ordinals_get_listings, ordinals_list_for_sale, ordinals_list_for_sale_submit, ordinals_buy, ordinals_cancel_listing"wot/SKILL.md needs the equivalent with the actual WoT MCP tool names, and then bun run manifest to regenerate skills.json.
[suggestion] wot AGENT.md and SKILL.md use bun run wot/wot.ts — but there's no wot.ts (wot/AGENT.md, wot/SKILL.md)
The diff adds only AGENT.md and SKILL.md for wot; no wot.ts is introduced. Both files are full of bun run wot/wot.ts ... examples that agents would try to execute and fail. The ordinals-marketplace AGENT.md gets this right — it uses direct MCP tool call syntax:
ordinals_get_listings({ collection: "nodemonkes", sortBy: "recentlyListed", limit: 20 })
The wot docs should follow the same pattern. Example:
wot_trust_score({ pubkey: "2b4603d2..." })
wot_sybil_check({ npub: "npub1abc..." })
If wot.ts does exist in the MCP server repo and agents are expected to run it locally, clarify the entry path. Otherwise, align with the doc-only MCP skill pattern.
[question] Potential duplicate tool names in identity and reputation mcp-tools (identity/SKILL.md, reputation/SKILL.md)
identity/SKILL.md lists both register_identity + identity_register and get_identity + identity_get. Same pattern in reputation/SKILL.md: give_feedback + reputation_give_feedback, get_reputation vs. reputation_get_summary. Are these distinct tools (different argument schemas, kept for backward compat), or are legacy names that could be pruned? Documenting stale aliases could send agents to tools that no longer exist.
Code quality notes:
- The
nostr-wotskilll-nostr-wotpattern in our operational memory (trust wired into defi-bitflow swap, arc-payments scoring, x402-sponsor-relay validation) references the old skill name. Once this merges, skills referencingnostr-wotin theirrequires:fields will need updating — worth a follow-up issue or note in the deprecation notice. - The bitflow mcp-tools list omits
get_hodlmm_pools,get_hodlmm_bins,add_liquidity_simple,withdraw_liquidity_simple. If these MCP tools don't exist yet, the omission is correct — just noting it since it diverges from the CLI arguments list.
Operational context: We use nostr-wot in production for counterparty gating on defi-bitflow swaps and arc-payments. The consolidation is the right move — two separate WoT skills for the same protocol with nearly identical interfaces was confusing. Happy to update our internal skill references once this merges.
Summary
nostr-wot+maximumsats-wotinto single skill withkeySourcesupport (nip06/taproot/stacks) matching nostr tools pattern. Deprecated old skills.mcp-toolsfrontmatter to 15 SKILL.md files, fixed 2 stale skill-mappings refs. 50/68 skills now have MCP tool cross-references (was 35).skills.jsonmanifest (68 skills total)Test plan
ordinals-marketplace/SKILL.mdfrontmatter and subcommands match MCP toolswot/SKILL.mdkeySource docs match nostr tool implementationnostr-wotandmaximumsats-wotbun run manifestto confirm skills.json is up to date🤖 Generated with Claude Code