Borrowing it
Nothing to install: this file belongs to i2mint/enlace_connector. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/i2mint/enlace_connector/main/.claude/skills/corpus-connector/SKILL.mdgit clone --depth 1 https://github.com/i2mint/enlace_connectorWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/i2mint/enlace_connector/corpus-connector)<a href="https://agentmods.dev/skills/i2mint/enlace_connector/corpus-connector"><img src="https://agentmods.dev/badge/skills/i2mint/enlace_connector/corpus-connector/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/i2mint/enlace_connector/corpus-connector"><img src="https://agentmods.dev/badge/skills/i2mint/enlace_connector/corpus-connector.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00132 | $0.01821 |
| Opus 5 | $0.00066 | $0.00911 |
| Sonnet 5 | $0.00026 | $0.00364 |
| Haiku 4.5 | $0.00013 | $0.00182 |
Grade A, and why
corpus-connector scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 125 lines — stays where its author put it; the contents beside it link to each section on GitHub.
corpus-connector — an ir corpus → a deployed MCP connector
A clean-separation pipeline (each layer has one owner; nothing knows about the
next): ir indexes + searches, py2mcp wraps a search function as MCP,
enlace_connector deploys any MCP connector, enlace_auth gates it. This skill
is only the composition; don't push corpus/connector logic into the wrong layer.
sources ──ir──▶ named corpus ──ir.make_search──▶ search fn ──py2mcp/FastMCP──▶ MCP app
└── enlace_connector.generate_deploy_bundle ──▶ app.toml + systemd + provision + allowlist + runbook
└── ship data + provision + deploy.py + allowlist + client accounts ──▶ live, access-controlled connector
Inputs to gather first
- Corpus: either an existing registered ir corpus name, or a name + sources to index from scratch (a folder of files, a mapping, etc.).
- Client name / connector name (→ app name
{name}_mcp, route/api/{name}_mcp). - Allowed users (emails) — who may use this connector (access control).
- Free port on the box (8010/8011/8020 taken; use 8031+, one per connector).
Step 1 — Resolve or build the corpus (owner: ir)
Existing corpus → just use its name. New corpus:
import ir
src = ir.CorpusSource.from_files("/path/to/sources", name="<corpus>", pattern=r".*\.md$")
# or: ir.CorpusSource.from_mapping({...}, name="<corpus>")
ir.register("<corpus>", "files", root="/path/to/sources") # persist to the registry
corpus = ir.build(src) # embed + persist (XDG store)
print(ir.tools.search("smoke test query", corpus="<corpus>", k=3)) # verify it retrieves
If the sources need custom parsing/chunking (like trufflepig's P2/FileMaker), write a
small indexer package with a CorpusSource + a strategy (see truffle as the
reference) — that indexing code is the only per-client code, and it belongs in its
own package, not here.
Step 2 — Generate the connector (owners: ir + py2mcp + enlace_connector)
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 10d ago First seen · 125 lines · 132 tokens per session scan A 1089f8896010
corpus-connector is a skill published in the GitHub repository i2mint/enlace_connector (0 stars, last pushed 13d ago), licensed Apache-2.0. It adds 132 tokens to every session and 1,821 once invoked, about $0.0007 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
agent-platform-rag-engine-management
Manage and query Agent Platform RAG Engine Corpora and retrieve grounded contexts using the Google GenAI SDK. Use when listing RAG corpora or files, inspecting a corpus, retrieving contexts, or generating content grounded in a RAG corpus. Do not use for standard database queries (use SQL/Spanner skills), Google…
llm-app-patterns
Production-ready patterns for building LLM applications. Covers RAG pipelines, agent architectures, prompt IDEs, and LLMOps monitoring. Use when designing AI applications, implementing RAG, building agents, or setting up LLM observability.
9router-embeddings
Generate vector embeddings via 9Router /v1/embeddings using OpenAI / Gemini / Mistral / Voyage / Nvidia / GitHub embedding models for RAG, semantic search, similarity. Use when the user wants embeddings, vectors, RAG, semantic search, or to embed text.
azure-search-documents-dotnet
Azure AI Search SDK for .NET (Azure.Search.Documents). Use for building search applications with full-text, vector, semantic, and hybrid search. Covers SearchClient (queries, document CRUD), SearchIndexClient (index management), and SearchIndexerClient (indexers, skillsets). Triggers: "Azure Search .NET"…
browserwing-admin
Manage and operate BrowserWing — an intelligent browser automation platform. Install dependencies, configure LLM, create/manage/execute automation scripts, use AI-driven exploration to generate scripts, browse the script marketplace, and troubleshoot issues.
embedding-strategies
Select and optimize embedding models for semantic search and RAG applications. Use when choosing embedding models, implementing chunking strategies, or optimizing embedding quality for specific domains.