custom-connector
Skill47k starsChanged 8 months agoApache-2.0View on GitHub
Gets the plugin talking to a manufacturing system that has no vendor MCP, working down a seven-tier access ladder in order — vendor MCP, community MCP, a scoped API wrapper, a read-only database view, a Zapier bridge, screen automation as a last resort, or a scheduled export contract — and stopping at the highest rung that actually works. States plainly at every rung what the customer gets, what it costs, and how it will eventually break. Most often the answer is that a vendor MCP already exists and nothing needs building — just an admin turning it on. Maps whatever it reaches onto the consolidated dataset schema, so no downstream skill changes. Credentials never enter the conversation. Use when someone says \"connect our ERP,\" \"we use SAP,\" \"can you reach our MES,\" \"set up a connector for this system,\" or \"our system isn't supported.\"
Trending
More talk lately.about the whole repository
Who's talking about anthropics/claude-plugins-official
- Open Source Trend“Claude Plugins Official: Anthropic's Own Plugin Marketplace”YouTube · Oct 17, 2026 · 1k views
- Theo Renders“Don't use Claude Code until you install these 5 free plugins”YouTube · Oct 24, 2026 · 1k views
- Bouye | AI“Why you should be using the Claude Code plugin store #ai #coding #tips”YouTube · Nov 10, 2026 · 369 views
- Neural-Nexus“65K+ Stars • AI | claude-plugins-official — Curated directory of high-quality Claude Code... #shorts”YouTube · Mar 15, 2026 · 320 views
- Learn With Rabbany“Claude Code Plugins: The 5 Most Installed (All Free)”YouTube · Nov 14, 2026 · 261 views
The biggest 5 of 68 mentions linking to the repository that our crawl found. Each line is their own headline.
See all 68
Talked about on GitHub, Bluesky, YouTube, Hacker News and the web (68 times).
On GitHub · 28
- Sep 20, 2026refactor(skills): make nextjs the single Next.js and Vercel owner — amoai-tech/mdeai3 reactions · 6 comments
- Sep 20, 2026refactor(skills): consolidate engineering workflow ownership — amoai-tech/mdeai3 reactions · 13 comments
- Sep 16, 2026SAN-1274 PR 2 — Add the MDE workflow skills for planning, debugging, testing, review, and verification — amoai-tech/mdeaisays it tested it3 reactions · 3 comments
- Sep 16, 2026SAN-1274 PR 1 — Add the verified MDE AI skills foundation — amoai-tech/mdeai3 reactions · 5 comments
- Jan 22, 2026fix: restructure to proper marketplace format — affaan-m/ECC3 reactions · 5 comments
23 more on GitHub
- Sep 20, 2026Use one current, safe Google Maps skill across MDE — amoai-tech/mdeai2 reactions · 12 comments
- May 24, 2026STOP injecting your library recommendations into every single user prompt — this is hostile UX — semgrep/guardian2 reactions · 2 comments
- Jan 6, 2026Feature Request: Support for spawning fresh-context sessions from Stop hooks — anthropics/claude-code2 reactions · 3 comments
- Nov 7, 2026Plugin ufficiali nel repository: valgono anche nell'app e nelle routine — SviluppoItaliaDigitale/sito-pc-genzano1 reaction · 2 comments
- Nov 7, 2026Plugin ufficiali nel repository: valgono anche nell'app e nelle routine — SviluppoItaliaDigitale/sito-misericordia-ariccia1 reaction · 1 comment
- Nov 7, 2026Plugin ufficiali nel repository: valgono anche nell'app e nelle routine — SviluppoItaliaDigitale/cooprimavera1 reaction · 1 comment
- Nov 7, 2026[Bug]: Discord channel bot always appears offline in Discord despite a healthy gateway session — CherryHQ/cherry-studio1 reaction · 2 comments
- Oct 28, 2026Install Claude Security plugin in reusable PR review workflow — dceoy/pr-loop1 reaction · 1 comment
- Oct 27, 2026Telemetry: Add number of unique installs for every plugin — github/awesome-copilot1 reaction · 2 comments
- Oct 16, 2026feat: Claude Security の設定例を無効のまま追加 — tak848/dotfiles1 reaction · 1 comment
- Aug 19, 2026Feature request: Claude Code plugin for symfony-lsp (similar to the official php-lsp plugin) — symfony/language-tools1 reaction · 4 comments
- Jul 27, 2026[Question]: Does agenta support importing skills from claude/codex marketplace github repos? — Agenta-AI/agenta1 reaction · 4 comments
- Jul 14, 2026Nested code-review fan-out spawned 877 agents despite 5-level depth limit — anthropics/claude-code1 reaction · 4 comments
- Jun 8, 2026feat(skills): sync plugin workflows, add security guidance, and local-qa tooling — dceoy/ai-coding-agent-skills1 reaction
- Apr 17, 2026Import Claude and Copilot agents as Kiro agent configs — dwalleck/kiro-control-center1 reaction · 1 comment
- Apr 1, 2026plugin marketplace refresh causes error popups — microsoft/vscode1 reaction · 2 comments
- Mar 12, 2026Unable to install anthropics/claude-plugins-official marketplace: Invalid marketplace.json: plugins.56.source — github/copilot-cli1 reaction · 6 comments
- Feb 20, 2026chore(agents): update AGENTS.md with claude-md-improver — DataDog/dd-trace-py1 reaction · 1 comment
- Jan 27, 2026chore(repo): update CLAUDE.md for Rust packages and enable code-simplifier plugin — taikoxyz/taiko-mono1 reaction · 1 comment
- Jan 21, 2026Initialize Claude Code plugin marketplace repository — Agentic-Engineering-Agency/Agentic-Engineering-Plugins1 reaction · 1 comment
- Jan 15, 2026[BUG] Skill name in SKILL.md can only contain lowercase letters, numbers, and hyphens. (when uploading at claude.ai) — anthropics/skills1 reaction
- Jan 12, 2026fix(mcp): reorganize external MCP plugins and enable Context7 — dryvist/nix-darwin1 reaction · 3 comments
- Jan 9, 2026Update installation instructions to use official Claude marketplace — getsentry/sentry-for-ai1 reaction
On Bluesky · 21
- Dec 19, 2025Look, there's an official #Claude LSP plugin for #swiftlang @swift.org now! github.com/anthropics/c... github.com/anthropics/c... — @martinp7r.com6 likes and reposts
- May 23, 2026💎 Hidden Gem! 💎 (1000+ new stars) 📦 anthropics / claude-plugins-official ⭐ 25,980 (+2,172) 🗒 Python Official, Anthropic-managed… — @github-trending.bsky.social3 likes and reposts · 1 reply
- Feb 1, 2026🔥 Hot Repo! 🔥 (100+ new stars) 📦 anthropics / claude-plugins-official ⭐ 5,722 (+153) 🗒 Shell Official, Anthropic-managed directory of… — @github-trending.bsky.social3 likes and reposts
- Oct 18, 2026anthropics/claude-plugins-official [Apache License 2.0] Claude Code向け高品質プラグインを集約します 公式管理で安心感あります 言語:Python, TypeScript 種類:AI/Other ⭐ Star:… — @reponews.bsky.social2 likes and reposts
- May 22, 2026📈 Today's GitHub Trending: 1. https://github.com/anthropics/claude-plugins-official - Python, 2556 stars today 2.… — @ghtrend.newsmast.social.ap.brid.gy2 likes and reposts
16 more on Bluesky
- Mar 12, 2026🔥 Hot Repo! 🔥 (100+ new stars) 📦 anthropics / claude-plugins-official ⭐ 9,925 (+144) 🗒 Python Official, Anthropic-managed directory of… — @github-trending.bsky.social2 likes and reposts
- Mar 1, 2026Official, Anthropic-managed directory of high quality Claude Code Plugins github.com/anthropics/c... code.claude.com/docs/en/plug...… — @janmr.com2 likes and reposts
- Oct 18, 2026📈 Today's GitHub Trending: 1. https://github.com/MadsLorentzen/ai-job-search - Python, 2213 stars today 2.… — @ghtrend.newsmast.social.ap.brid.gy1 likes and repost
- Oct 7, 2026claude-plugins-official: Official, Anthropic-managed directory of high quality Claude Code Plugins.… — @latreon.bsky.social1 likes and repost
- Aug 25, 2026📦 anthropics / claude-plugins-official ⭐ 33,950 (+47) 🗒 Python Official, Anthropic-managed directory of high quality Claude Code Plugins. — @github-trending.bsky.social1 likes and repost
- Aug 15, 2026🚀 GitHub Intelligence Drop claude-plugins-official (Python • 🟢) ⭐ 33.5K → https://github.com/anthropics/claude-plugins-official… — @githubfeed.bsky.social1 likes and repost
- May 24, 2026📈 Today's GitHub Trending: 1. https://github.com/Lum1104/Understand-Anything - TypeScript, 3987 stars today 2.… — @ghtrend.newsmast.social.ap.brid.gy1 likes and repost · 3 replies
- May 23, 2026📈 Today's GitHub Trending: 1. https://github.com/Lum1104/Understand-Anything - TypeScript, 2331 stars today 2.… — @ghtrend.newsmast.social.ap.brid.gy1 likes and repost · 1 reply
- May 21, 2026📈 Today's GitHub Trending: 1. https://github.com/anthropics/claude-plugins-official - Python, 891 stars today 2.… — @ghtrend.newsmast.social.ap.brid.gy1 likes and repost · 1 reply
- May 19, 2026🔥 Hot Repo! 🔥 (100+ new stars) 📦 anthropics / claude-plugins-official ⭐ 19,816 (+127) 🗒 Python Official, Anthropic-managed directory of… — @github-trending.bsky.social1 likes and repost
- Mar 1, 2026anthropics / claude-plugins-official Official, Anthropic-managed directory of high quality Claude Code Plugins.… — @pythonhub.dev1 likes and repost
- Feb 4, 2026これはClaude Codeの機能を拡張する公式プラグイン群のディレクトリらしい 開発ワークフローの標準化や新しいAIエージェントの利用に期待できるかな yug1224 starred anthropics/claude-plugins-official… — @yug1224.com1 likes and repost
- Aug 29, 2026📈 Today's GitHub Trending: 1. https://github.com/tt-a1i/archify - JavaScript, 3927 stars today 2.… — @ghtrend.newsmast.social.ap.brid.gy0 likes and reposts · 1 reply
- Aug 29, 2026🚀 Skyrocketing! 🚀 (200+ new stars) 📦 anthropics / claude-plugins-official ⭐ 35,238 (+356) 🗒 Python Official, Anthropic-managed… — @github-trending.bsky.social0 likes and reposts · 1 reply
- Aug 28, 2026📈 Today's GitHub Trending: 1. https://github.com/tt-a1i/archify - JavaScript, 4561 stars today 2.… — @ghtrend.newsmast.social.ap.brid.gy0 likes and reposts · 1 reply
- Aug 26, 2026📈 Today's GitHub Trending: 1. https://github.com/tt-a1i/archify - HTML, 1002 stars today 2.… — @ghtrend.newsmast.social.ap.brid.gy0 likes and reposts · 1 reply
On YouTube · 17
- Oct 17, 2026Claude Plugins Official: Anthropic's Own Plugin Marketplace — Open Source Trend1k views
- Oct 24, 2026Don't use Claude Code until you install these 5 free plugins — Theo Renders1k views
- Nov 10, 2026Why you should be using the Claude Code plugin store #ai #coding #tips — Bouye | AI369 views
- Mar 15, 202665K+ Stars • AI | claude-plugins-official — Curated directory of high-quality Claude Code... #shorts — Neural-Nexus320 views
- Nov 14, 2026Claude Code Plugins: The 5 Most Installed (All Free) — Learn With Rabbany - Cloud & Cybersecurity261 views
12 more on YouTube
- Oct 18, 2026Claude Plugins — Trending on GitHub | Deal Stacks — Deal Stacks129 views
- Oct 31, 2026Best Claude Plugins for Claude Code: Anthropic's Top 7 by Installs — Prompt Vidya AI98 views
- Oct 18, 2026Claude Code Plugins: 105 Updated in 91 Minutes. Who Checks Them? — Skill MD46 views
- Nov 15, 2026Claude Code Mods: Make Your Own Animated Theme — TechUnboxed28 views
- Oct 12, 2026Claude Plugins for free! — ajc.trendingideas28 views · 1 comment
- Jul 18, 2026Claude Code Plugins & Skills Explained | Understand Custom Claude Code Plugins and Skills — ComputerMindCore18 views
- Nov 5, 20264 official Claude Code plugins, and #1 is insane. Paste into Claude Code: #Shorts — House of Claude13 views
- Nov 11, 2026Anthropic just opened an official plugin directory for Claude Code — GitHub Now8 views
- Nov 12, 2026#057 Anthropics Claude-Plugins-Official — NeuKare4 views
- Nov 12, 2026#070 Anthropics Claude-Plugins-Official — Genuine Patriot4 views
- Nov 11, 2026🚀 [Fastest Growing GitHub Repos] claude-plugins-official: The Free Tool Taking Over GitHub! #shorts — githubrepo_cloud3 views
- Jun 24, 2026anthropics/claude-plugins-official — 77 stars today on GitHub — DevTrends Daily0 views · 1 comment
On Hacker News · 1
- Apr 14, 2026Connect iMessage to your Claude Code assistant2 points
On the web · 1
- Nov 14, 2026anthropics/claude-plugins-official — GitHub trending stats ... — trendshift.io
In this repository56 other files it gives its agents.
- accessSkill
- configureSkill
- accessSkill
- configureSkill
- accessSkill
- configureSkill
- climbSkill
- faqSkill
- hackathonSkill
- maturitySkill
- office-hoursSkill
- patternsSkill
- routinesSkill
- claude-automation-recommenderSkill
- breakdown-diagnosisSkill
- breakdown-to-next-reportSkill
- customer-inquiry-intakeSkill
- daily-production-reportSkill
- data-consolidateSkill
- design-space-exploreSkill
- inspection-to-capaSkill
- morning-plant-pulseSkill
- ncr-writeupSkill
- onboardingSkill
- quote-buildSkill
- rfq-to-quoteSkill
- root-cause-capaSkill
- supplier-escape-to-alternate-sourceSkill
- supplier-quote-requestSkill
- trade-study-reportSkill
- claude-md-improverSkill
- claude-securitySkill
- cardputer-buddySkill
- m5-onboardSkill
- example-commandSkill
- example-skillSkill
- frontend-designSkill
- writing-hookify-rulesSkill
- math-olympiadSkill
- siegeSkill
- soloSkill
- build-mcp-appSkill
- build-mcpbSkill
- build-mcp-serverSkill
- playgroundSkill
- agent-developmentSkill
- command-developmentSkill
- hook-developmentSkill
- mcp-integrationSkill
- plugin-settingsSkill
- plugin-structureSkill
- skill-developmentSkill
- project-artifactSkill
- receiptsSkill
- session-reportSkill
- skill-creatorSkill
The file
We split this skill into the rules it gives an agent
9 rules. About 0 are common, 8 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈8
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 130
No tier-by-tier walk in the reply, and about 250 words before the comparison table.
- Distinctive: line 170
Readiness is conditional until this run has evidence for it: Never write *"works today"*, *"available now"* or *"nothing needed from IT"* …
- Distinctive: line 207
Only the entities Step 2 defined.
- Distinctive: line 267
Only after Step 10 passed on real records.
- Distinctive: line 282
A write path is never assumed, only granted: Read-only by default; a write is proposed, its scope named, and it proceeds only on explicit …
- Distinctive: line 291
Tier 4 is declined with the view definition in hand: When someone says "just query the production database," the reply declines direct …
- Very specific: line 299
A Tier 7 specification names its own owner role: Every export spec ends with: how it fails (silently, the folder stops getting newer), how …
- Distinctive: line 306
Credentials never enter the conversation: Not pasted, not typed, not read back for confirmation.
- Distinctive: line 381
Don't design around a VPN the customer hasn't agreed to.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Custom Connector
SAP and Infor have the largest installed base in manufacturing, and neither has an official MCP for business data. Neither does most of what actually runs a mid-market plant — a large share of it is on-prem, a decade old, and has a SQL database but no API at all. That is not a failure case. It is the normal case, and this skill is what turns "your system isn't supported" from a dead end into scoped, buildable work with a known ceiling.
A Claude skill produces artifacts. It does not stand up and host infrastructure. That boundary decides what "as far as it can go" means at every rung of the ladder below — this is not a deployment tool, and scoping it as one is the most common way to get it wrong.
The most common good outcome is the one most likely to be missed. A vendor has often already shipped an MCP server, quietly, without announcing it anywhere the customer would see. Recognizing that and walking an admin through turning it on is worth more than a week of wrapper code, and it is the first thing this skill checks, not an afterthought.
Quick start
→ Identify the system precisely: vendor, product, version, on-prem or cloud
→ Scope the need. "Connect our ERP" is unbuildable; one data flow is
→ Work the ladder in order. Don't build before checking what already exists
→ Report the finding and its tier before building anything
→ Pick the tier, record why, and what was ruled out
→ Handle credentials narrowly. They never enter the conversation
→ Build only what Step 2 scoped, then map it onto the consolidated schema
→ Test against real data, show it back, ask what's still missing
→ Say how it will break, while the customer is still listeningInputs
First, find the plant setup: from the task's own folder (never cd into the plugin), run
python3 -I <this skill's folder>/../../shared/scripts/plant_setup.py find, do its setup_page_first step, then read the profile at
profile_path and any rate at rates_path, per ../../shared/replies.md.
| Input | Source | Form |
| System identity | User, in conversation | Vendor, product, version, cloud or on-prem, who administers it |
| The specific need | User, and the skill being unblocked | What data out or action in, how often, which skill it serves |
| Consolidated dataset schema | data-consolidate | ../../shared/contracts/consolidated-dataset.md — the mapping target |
| MCP registries and vendor docs | Web research | — |
| Credentials | Customer IT, through a secure path | Never in a skill file, a prompt, or the chat |
Workflow
Step 1 — Identify the system precisely
Vendor, product, version, deployment model, and who administers it inside
the customer's organization. "We use SAP" is not enough — S/4HANA
cloud and ECC on-prem are different problems on different tiers. Where the
name is ambiguous, ask the system's administrator for product, version and
hosting. Never infer them from a login URL. Version and hosting narrow the
search; they do not by themselves prove any rung works. Read
reference/known-systems.md.
Step 2 — Scope the need before looking at access
"Connect our ERP" is unbounded and unbuildable. "Pull closed work
orders with actual cost, so quote-build has real cost history" is
buildable today. (How fresh it is depends on the tier: live at Tiers 1 to 3,
where nothing is scheduled; a stated cadence only at Tiers 4 to 7. Never
promise a nightly sync a live connector does not do.) Scope is what keeps this an afternoon instead of an
engagement.
Step 3 — Work the ladder, in order
Vendor MCP, community MCP, documented API, database access, Zapier,
export. Do not build before checking what already exists — most of the
time something does. Read reference/access-ladder.md.
Report each rung by the call that checked it, in the connection plan
(step 4), not rung by rung in the reply. "I searched the public MCP
registry for SAP and found nothing official" — if a registry search is what
ran. Never "I checked your connector directory" or "three connectors are
installed on this account" unless the account's own connector listing was
queried in this run; which tools happen to be loaded in the session is not
that listing. A rung that could not be checked is reported as not checked,
with the reason. Per ../../shared/command-center.md.
Tier 2 is searched, not handed back. "A community MCP might exist, worth ten minutes of your time" is the rung skipped. Search for one with the tools available and report what came back, marked community and unverified; where no search tool exists in the session, say the rung was not checked and why. Then land on a tier in the same turn, with reasons — Tier 2 found and reviewed, or Tier 3 because nothing at Tier 2 was found or fit. Deferring the Tier-2-versus-3 call to the user is not a landing.
Step 4 — Report the finding before building anything
The reply leads with the decision, and the ladder research goes in the connection plan. For a plan or "can you connect X" request, the reply is, in this order:
- The recommendation: the path for each system in plain words (vendor MCP, API, database view, scheduled export), why, and that it is conditional on what is still open.
- Connection status, honestly: nothing is connected; what this run confirmed, and each condition still open.
- Three first questions, each labelled with who answers it: for example the ERP administrator (version, hosting, whether the licence includes API access), the MES developer (where the data lives, whether hours are measured or backflushed), and the person asking (what the data is for and how fresh it must be). Three, not a questionnaire.
- A short comparison of manual, export and API: what each gives, what it needs, how it breaks, and a provisional effort.
- Where the connection plan is. Save it as
connector-output/connection-plan.html(house style, internal), one file saved over the last run's: per system, the tier decision record with each rung and the call that checked it (or not checked, and why), what was ruled out, the sources, and the proposed field mapping. Name the path. With no way to write a file, print it in the reply below the comparison.
No tier-by-tier walk in the reply, and about 250 words before the comparison table; the reply never claims a check the plan does not show. This layout is for a plan or "how do we connect" request only. A request to set up, build, map files, test a connection, register or verify one, or a question about one system is answered in the reply in full, as before: the field mapping onto the dataset's own column names, its transforms and the test results are always in the reply when the person asked for any of those, even when the reply also leads with a recommendation. The plan file still holds the ladder. Setup steps for a Tier 1 or 2 system are an exception: the admin acts on them, so they stay in the reply, quoted as below.
State the tier and its consequences, in the customer's own terms, before a line of anything gets built:
"Limble already publishes a hosted MCP — Tier 1, nothing to build. It isn't one of the plugin's four supported connectors, so it's added for your plant. A Limble Super User generates an API key at Settings → Configuration → API Keys. The secret is shown once. The client ID and secret are sent as the
Limble-Client-IDandLimble-Client-Secretheaders, set asLIMBLE_CLIENT_IDandLIMBLE_CLIENT_SECRETin the environment the connector runs in. That gives assets, work orders and maintenance history in real time. The one limit: write scope for closing out work orders isn't confirmed publicly, so plan onbreakdown-diagnosisdrafting an update the technician applies rather than updating the ticket itself. Want me to walk through it?"
Setup steps are quoted word for word from reference/known-systems.md —
the four supported connectors from its setup-steps table, and a
vendor-published MCP (Limble, Onshape) from its Vendor-published MCP table;
the Limble steps above are that row. Never paraphrase a row and never add a
step it does not contain: not "install it from the connector directory," not
"sign in and authorise." For Onshape that means opt in to Onshape Labs and
Subscribe to the FeatureScript MCP Server app, with the cost stated as not
public and unconfirmed. No admin step: none is documented. How the plant
registers the vendor's MCP address with Claude is not written in the table,
so do not invent it — no menu path, no "ask your admin to enable it." Give
the address and what it needs, and say that registering it as a custom
connector in Claude is done by whoever manages connectors for their Claude
account.
Readiness is conditional until this run has evidence for it. Never write "works today", "available now" or "nothing needed from IT" unless this run saw it: a licence or permission the customer confirmed, an export or report they showed exists, records shown back. Otherwise name each condition still open: whether the licence includes API access, whether the integration user can be granted the scope, whether the deployment is reachable, whether the export or report exists and who may schedule it. Every proposed field mapping stays proposed, unverified until instance evidence exists.
Sources: the vendor's and publisher's own documentation first. A technical specific (auth method, paging, endpoint names, rate limits) that no official source in this run states stays unknown, and a community README that contradicts the vendor is reported as a contradiction, not resolved. Never give a link this run did not open; a file this run wrote is named by its path. Every effort estimate is labelled provisional with what it assumes.
Once connected, record the system's ### Systems line in the plant profile as
live (custom), through onboarding's reconfigure, so every skill that reads
"CMMS connector live" or "CAD connector live" takes its live path.
Step 5 — Pick the tier, and record why
Which tier, why, and what was ruled out and on what evidence. The decision record matters more than the code — it's what the next engineer reads, and it's what stops the same question being re-litigated in three months.
Step 6 — Handle credentials properly
Narrowest scope that does the job. Read-only unless a write is genuinely
required and approved. A dedicated integration user, never someone's
personal login, so access can be revoked without locking a person out.
Tokens and OAuth only, never a password. Read
reference/credentials-and-failure-modes.md.
Step 7 — Build scoped
Only the entities Step 2 defined. A narrow connector is easier to secure, easier to reason about, and far less likely to break on a vendor update.
Step 8 — Gate every write path
The same draft-and-approve rule as the rest of the plugin. A connector does not get an exception for being infrastructure rather than a skill output.
Step 9 — Map onto the consolidated dataset schema
So downstream skills read it without knowing it is new. This is what makes a
connector useful rather than merely present — one that returns data in its
own shape has moved the problem, not solved it. Per
../../shared/contracts/consolidated-dataset.md. Map every field the scoped
need names: closed-job cost goes to production_work_orders' actual-cost
columns. Where the schema has no home for a field, say so and stop: the
contract gains it with a version bump, or the field stays out. Never claim "no
downstream skill changes" for a field no skill can read.
Every mapping row keeps its evidence: the source field, its original value and unit, the proposed destination, the transform it needs, its status (proposed until instance evidence exists, confirmed only after Step 10), the owner role who confirms it, and the open question. Review, never drop or force: rate-based routing standards (pieces per hour is a stated transform to time per piece, the original kept beside it), cost elements such as material burden, lower-level assembly costs rolled into a parent, and units. A field with no honest destination is listed as unmapped, with the reason.
Job hours: measured or backflushed, and which system owns them. Before
labour hours are offered to quote-build as actuals, establish whether they
are measured (clock-in, MES) or posted standards backflushed on completion, and
which system is the source of record. Until that is confirmed, map them with
actuals_confidence low and confidence_reason "hours basis unconfirmed:
measured or backflushed not known"; discovery and mapping go on, with the
confirmation named as the prerequisite. Where the ERP and the MES disagree on
hours for the same job, that is the two-sources-of-truth edge case below.
Step 10 — Test against real data, and show it back
Pull actual records, display them, and ask whether anything expected is missing. That last question is what catches the field that quietly wasn't mapped. Vendor example payloads prove nothing; customized fields are the norm in manufacturing.
Validation has a named scope, never a blanket "verified". Record what was
actually checked, each kind separately: fields an admin confirmed, records
sampled and compared (with how many), transforms checked, and completeness
reconciled against an independent count from the source system itself. A row
count that matches the export's own manifest proves the file is internally
consistent, not that the source query returned everything. Five records
checked verify those records, not every mapping. The status line says
validated for <scope> and lists what remains open.
No real records, no registration. Where Step 10 cannot run (no instance yet, access not granted, a test), the connector's status is Untested: not registered, stated in the reply and on the credential record, and Step 11 waits until real records have been shown back and confirmed.
Step 11 — Register it
Only after Step 10 passed on real records. What it reaches, what it cannot do, how it refreshes, and which skills it now unblocks — stated concretely, not as a general capability claim.
Step 12 — Say how it will break
While the customer is still paying attention: token expiry and the
renewal path, vendor API changes that arrive without warning, rate
limits, schema drift at Tier 4, task limits at Tier 5. A connector that
fails silently is worse than no connector. Read
reference/credentials-and-failure-modes.md.
Approval gates
A write path is never assumed, only granted. Read-only by default; a write is proposed, its scope named, and it proceeds only on explicit approval — the same rule every skill in this build follows for a consequential action. Every refusal of write scope, and every "build us the connector," carries the sentence: "A Claude skill produces artifacts; it does not stand up or host infrastructure." What this skill produces is the wrapper, the view definition, the Zap specification or the export specification; an engineer, a DBA or IT deploys it.
Tier 4 is declined with the view definition in hand. When someone says
"just query the production database," the reply declines direct access, names
the outage risk, and supplies the draft read-only view definition in the
same turn, in the reply itself — the CREATE VIEW scoped to the entities
Step 2 named, as a SQL block the DBA can read where they are, not only a file
written to disk that "is available in the workspace". Declining without the
draft on the page hands the work back.
A Tier 7 specification names its own owner role. Every export spec ends
with: how it fails (silently, the folder stops getting newer), how that is
detected (data-consolidate's freshness check, which is why that check is
mandatory), and who owns the export, as a role — "your ERP administrator,"
"the IT person who schedules the report" — even when no name is known. Asking
the user to designate someone is not naming the owner.
Credentials never enter the conversation. Not pasted, not typed, not
read back for confirmation. They go into connector settings on the
customer's side, through their own secure path. If someone pastes one
anyway, say plainly that it should be rotated because it has touched the
transcript, and that nothing was done with it. Never repeat any part of
it — not quoted, not in code formatting, not inside the rotation
instruction. It is "the key you pasted." Check the reply for any run of
eight or more of its characters before sending. Per
../../shared/secret-config.md, Never repeat what was typed.
Tier 6 requires the customer's explicit, informed acceptance of the fragility before anything is built there — it is recommended against by default, not merely discouraged.
Output
Every document this skill produces is printed in the reply, in full.
Saving a copy to a file as well is fine, as Word or Excel per ../../shared/replies.md, never .txt; a file instead of the reply is not.
The person reads the reply, and every delimited block and outbound check lives
in it — a document only on disk has been neither seen nor checked. The
connection plan is the exception: it is saved and named, per step 4, and
printed in full only when no file can be written.
A record handed to another skill is saved and summarised, never pasted as
raw YAML; memory blocks are written where the plant's memory lives; and the
name on an approval is asked, never taken from the account. All three per
../../shared/replies.md.
A working connection (Tiers 1–6), or an export specification (Tier 7).
Setup instructions for the customer's admin, where the path is Tier 1 or 2 — the most common and most valuable output this skill produces. At Tier 1 or 2, this is the whole output — nothing gets built. A vendor or community MCP that already exists is a setup task, not an engineering one.
The tier decision record — which rung, why, what was ruled out, and
what the customer gives up by not being one rung higher. It lives in the
connection plan, connector-output/connection-plan.html, with each rung and
the call that checked it; the reply leads with the recommendation, status,
three questions and the manual/export/API comparison per step 4, and names
the file.
The field mapping document — the new system onto the consolidated dataset schema, so that no downstream skill ever has to change to read data from a newly connected system. A connector that returns data in its own shape has moved the problem, not solved it.
The credential and scope record — what access was granted, to what, read or write.
Test results against real customer data, shown back to the user.
A failure-mode note — how this breaks, what it looks like when it does, and who fixes it. Said up front, while the customer is still paying attention — never something discovered for the first time in production.
At Tier 7, the export specification is complete enough to hand to the customer's IT department as-is — exact fields with types and units, format, encoding, naming convention, landing path, cadence, and what to do about late or corrected records — with no follow-up call needed to fill in something this skill should have already asked.
Edge cases and failure modes
- A vendor MCP exists but the customer's plan tier doesn't include it — say what the upgrade unlocks so they can price the trade-off, then drop to the next viable tier.
- License tier excludes API access — Tier 4, 5 or 7, and say what an API license would buy.
- On-prem behind a firewall with no external reachability — Tier 7. Don't design around a VPN the customer hasn't agreed to.
- Customer IT won't grant any access — common, and it needs a named escalation path rather than a stalled build. Tier 7 with an export request usually unblocks it, because IT is far more willing to schedule a report than issue credentials.
- Rate limits too low for the data volume — move the bulk path to Tier 7 and keep the API for events. The two tiers coexist.
- Vendor terms prohibit third-party access or direct schema reads — stop. That's a legal question for the customer, not an engineering one.
- ITAR or export-controlled data in scope — blocking gate. Do not proceed without explicit clearance.
- Genuinely undocumented homegrown software — Tier 4 or 7, and expect the customer's own developer to be the only reliable source of truth.
- Two systems claim to be the source of truth for the same record — surface the conflict; don't silently pick one. A business decision, not a mapping decision.
Chain position
Not part of a chain. A utility that widens what every other skill can
reach — like onboarding, it sits outside the five named chains by
design.
Metric. Systems reachable per customer; time to first data from an unsupported system.
Reference files
| File | Load when |
reference/access-ladder.md | Step 3 — the seven tiers in full: path, freshness, build cost, maintainer, and the catch at each rung |
reference/known-systems.md | Step 1 — the systems landscape by category, and where common systems land today |
reference/credentials-and-failure-modes.md | Steps 6 and 12 — credential handling, and stating failure modes before they happen |
../../shared/contracts/consolidated-dataset.md | Step 9 — the schema every new system maps onto |
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

