claude-scholar
A research assistant plugin for Claude Code that supports literature review, paper writing, citation verification, Zotero and Obsidian integration, and code review and debugging for academic and software work.
What n8n-mcp-skills runs automatically, and when. A hook is a command Claude Code fires at a fixed moment, without you asking for it.
Claude Code
> /plugin marketplace add czlonkowski/n8n-skills> /plugin install n8n-mcp-skills@n8n-mcp-skills
Cursor
Cursor also runs Claude Code hooks from .claude/settings.json, so copy these hooks there to use them in Cursor.
What fires, and when
SessionStart
Fires once when a session begins, and again after a context compaction. It is where a plugin sets up its environment, or restores state the compaction dropped.
startup|resume|clear|compact${CLAUDE_PLUGIN_ROOT}/hooks/session-start.shPreToolUse
^mcp__.*__get_node$${CLAUDE_PLUGIN_ROOT}/hooks/pre-tool-use/get-node.sh^mcp__.*__n8n_create_workflow$${CLAUDE_PLUGIN_ROOT}/hooks/pre-tool-use/create-workflow.sh^mcp__.*__(n8n_update_partial_workflow|n8n_update_full_workflow)${CLAUDE_PLUGIN_ROOT}/hooks/pre-tool-use/update-workflow.sh^mcp__.*__(validate_workflow|n8n_validate_workflow)$${CLAUDE_PLUGIN_ROOT}/hooks/pre-tool-use/validate-workflow.sh^mcp__.*__n8n_test_workflow$${CLAUDE_PLUGIN_ROOT}/hooks/pre-tool-use/test-workflow.sh^mcp__.*__n8n_instances$${CLAUDE_PLUGIN_ROOT}/hooks/pre-tool-use/instances.sh^mcp__.*__n8n_manage_credentials$${CLAUDE_PLUGIN_ROOT}/hooks/pre-tool-use/manage-credentials.shPostToolUse
^mcp__.*__validate_workflow$${CLAUDE_PLUGIN_ROOT}/hooks/post-tool-use/validate-workflow.shWhere it lives
#!/usr/bin/env bash
# Portions of this file are adapted from the n8n-io/skills plugin
# (https://github.com/n8n-io/skills), licensed under Apache License 2.0.
# Adapted for the community n8n-mcp MCP server. See /NOTICES.
#
# SessionStart hook for n8n-mcp-skills.
# Loads the meta-skill (using-n8n-mcp-skills) into every session via additionalContext.
# Re-fires on resume/clear/compact so the protocol survives compaction.
#
# On `clear` and `compact`, also wipes the PreToolUse hook markers for this
# session so the per-node-type warnings can fire again. The agent's memory
# of those warnings is gone after a clear/compact, so the markers shouldn't
# keep them silent.
#
# Fails silently and never blocks session startup.
set -uo pipefail
PLUGIN_ROOT="${CLAUDE_PLUGIN_ROOT:-$(cd "$(dirname "$0")/.." && pwd)}"
META_SKILL="${PLUGIN_ROOT}/skills/using-n8n-mcp-skills/SKILL.md"
CACHE_DIR="${HOME}/.cache/n8n-mcp-skills"
mkdir -p "${CACHE_DIR}" 2>/dev/null || true
INPUT="$(cat)"
# --- Reset PreToolUse markers on clear/compact -------------------------------
#
# After /clear or /compact, the agent has lost the additionalContext that the
# PreToolUse hooks injected earlier in the session. Without wiping markers,
# the per-node warnings stay silent for the rest of the session even though
# the agent no longer remembers them.
if command -v jq >/dev/null 2>&1; then
SOURCE="$(echo "${INPUT}" | jq -r '.source // empty' 2>/dev/null)"
SESSION_ID="$(echo "${INPUT}" | jq -r '.session_id // empty' 2>/dev/null)"
if [[ "${SOURCE}" == "clear" || "${SOURCE}" == "compact" ]] && [[ -n "${SESSION_ID}" ]]; then
STATE_DIR="${TMPDIR:-/tmp}/n8n-mcp-skills-state"
rm -f "${STATE_DIR}/${SESSION_ID}-"*.loaded 2>/dev/null || true
fi
fi
# --- Build additionalContext --------------------------------------------------
if [[ ! -r "${META_SKILL}" ]]; then
# Skill missing or unreadable. Fail open with no context, don't break session.
exit 0
fi
SKILL_BODY="$(cat "${META_SKILL}")"
ADDITIONAL_CONTEXT="${SKILL_BODY}"
# --- Emit hook output ---------------------------------------------------------
# jq is the safe way to escape arbitrary text into JSON. Fall back to python3
# if jq isn't installed (rare on macOS, possible on minimal Linux).
if command -v jq >/dev/null 2>&1; then
jq -n --arg ctx "${ADDITIONAL_CONTEXT}" '{
hookSpecificOutput: {
hookEventName: "SessionStart",
additionalContext: $ctx
}
}'
elif command -v python3 >/dev/null 2>&1; then
python3 -c '
import json, sys
ctx = sys.stdin.read()
print(json.dumps({
"hookSpecificOutput": {
"hookEventName": "SessionStart",
"additionalContext": ctx
}
}))
' <<< "${ADDITIONAL_CONTEXT}"
else
# No JSON encoder available, skip injection rather than emit malformed JSON.
exit 0
fi
Read the script before you install anything that runs on your machine. This is the one part of a plugin that acts without being asked.
Expert Claude Code skills for building flawless n8n workflows using the n8n-mcp MCP server
A research assistant plugin for Claude Code that supports literature review, paper writing, citation verification, Zotero and Obsidian integration, and code review and debugging for academic and software work.
Runs multi-AI workflows in Claude Code that split research, requirements scoping, implementation and review across several external AI providers, such as Codex, Gemini-style CLIs, Copilot, Ollama and OpenRouter, to cover each model's blind spots.
Orchestrates multiple Claude Code agents across terminals and machines, giving them persistent memory and agent-to-agent messaging so you no longer have to relay messages between them by hand.
An autonomous pipeline that turns a text description into a playable Godot game, generating design docs, game assets such as backgrounds, characters, props, cards and effects, and running visual checks and playtests.
A personal AI assistant with voice, screen and meeting support that learns your patterns and can update its own code. It runs across several Macs and can talk with other people's assistants.
Helps hardware teams turn product requirements into a reviewable, buildable PCB design plan. Covers embedded architecture, MCU or SoC selection, power tree, interfaces, sensors, connectivity, and BOM risk.
MCP server for reusable prompt templates, multi-step workflow chains, and quality gates. Compose agentic workflows with an operator syntax; export as native skills to Claude Code, Cursor, OpenCode, and Gemini CLI.
A Claude Code plugin for crypto trading with skills to run multi-agent market analysis, track a portfolio and open trades, close trades with post-mortem review, and monitor stop-loss and take-profit levels on a schedule.