MCP Server Builder
shareAI-lab/learn-claude-code
Walks through building MCP servers in Python or TypeScript that expose tools, resources and prompts to Claude, with templates, registration and testing.
Add or update repository READ function benchmark cases in the DB benchmark script.
$ npx skills add sendou-ink/sendou.ink --skill db-benchmark -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install sendou-ink/sendou.ink db-benchmark --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/sendou-ink/sendou.ink.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/db-benchmark .claude/skills/db-benchmark && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "db-benchmark" agent skill from https://github.com/sendou-ink/sendou.ink/tree/main/.claude/skills/db-benchmark into .claude/skills/db-benchmark/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "db-benchmark", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/sendou-ink/sendou.ink/tree/main/.claude/skills/db-benchmarkType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add sendou-ink/sendou.ink --skill db-benchmark -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install sendou-ink/sendou.ink db-benchmark --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sendou-ink/sendou.ink.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/db-benchmark .agents/skills/db-benchmark && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "db-benchmark" agent skill from https://github.com/sendou-ink/sendou.ink/tree/main/.claude/skills/db-benchmark into .agents/skills/db-benchmark/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "db-benchmark", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add sendou-ink/sendou.ink --skill db-benchmark -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install sendou-ink/sendou.ink db-benchmark --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sendou-ink/sendou.ink.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/db-benchmark .cursor/skills/db-benchmark && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "db-benchmark" agent skill from https://github.com/sendou-ink/sendou.ink/tree/main/.claude/skills/db-benchmark into .cursor/skills/db-benchmark/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "db-benchmark", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/sendou-ink/sendou.ink.git --path .claude/skills/db-benchmark--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add sendou-ink/sendou.ink --skill db-benchmark -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install sendou-ink/sendou.ink db-benchmark --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sendou-ink/sendou.ink.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/db-benchmark .gemini/skills/db-benchmark && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "db-benchmark" agent skill from https://github.com/sendou-ink/sendou.ink/tree/main/.claude/skills/db-benchmark into .gemini/skills/db-benchmark/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "db-benchmark", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install sendou-ink/sendou.ink db-benchmarkInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add sendou-ink/sendou.ink --skill db-benchmark -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/sendou-ink/sendou.ink.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/db-benchmark .github/skills/db-benchmark && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "db-benchmark" agent skill from https://github.com/sendou-ink/sendou.ink/tree/main/.claude/skills/db-benchmark into .github/skills/db-benchmark/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "db-benchmark", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add sendou-ink/sendou.ink --skill db-benchmark -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install sendou-ink/sendou.ink db-benchmark --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sendou-ink/sendou.ink.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/db-benchmark .opencode/skills/db-benchmark && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "db-benchmark" agent skill from https://github.com/sendou-ink/sendou.ink/tree/main/.claude/skills/db-benchmark into .opencode/skills/db-benchmark/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "db-benchmark", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
db-benchmarkAdd or update repository READ function benchmark cases in the DB benchmark script.
DB Benchmark is an agent skill from sendou-ink/sendou.ink. Add or update repository READ function benchmark cases in the DB benchmark script. Use when a new repository read function is added, when benchmark cases are missing or outdated, or when working on scripts/benchmark-db.
Its SKILL.md is about 1.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It works with SQLite. The repository describes itself as: Competitive Splatoon Platform. The licence is AGPL-3.0.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 63d970e. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
pnpmFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use pnpm, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
DB Benchmark loads about 1.1k tokens when it runs. Until then it costs about 58 tokens; SKILL.md has 378 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from sendou-ink/sendou.ink at commit 63d970e, republished under its AGPL-3.0 licence (© sendou-ink). 378 words, ~1,052 tokens.
.claude/skills/db-benchmark/SKILL.md (or your agent's skills folder).The DB benchmark (pnpm bench:db) times repository READ functions against db-prod.sqlite3 to find the slowest queries. Every exported READ function in a *Repository.server.ts file should have a case registered — when adding a new read function to a repository, add a matching benchmark case.
| File | Purpose |
|---|---|
scripts/benchmark-db.ts | Harness: CLI, timing loop, stats, output. Rarely needs changes. |
scripts/benchmark-db/cases.ts | Case registry, grouped by repository file. New cases go here. |
scripts/benchmark-db/fixtures.ts | Resolves worst-case arguments (heavy rows) from the DB. New argument kinds go here. |
scripts/seed-chat.ts | Fills the production copy with chat data, which it ships without (pnpm run bench:db:seed-chat). Run once before the chat cases mean anything. |
Cases live in buildCases() in scripts/benchmark-db/cases.ts, grouped under a // <RepositoryName> comment in file order. Three registration helpers:
// Function needs a fixture (skipped automatically if the fixture is null)
add("UserRepository.findLeanById", fx.heavyUser, (user) =>
UserRepository.findLeanById(user.id),
);
// Function takes no arguments
addStatic("BadgeRepository.all", () => BadgeRepository.all());
// Function needs two fixtures
add(
"SavedCalendarEventRepository.isSaved",
both(fx.heavyUser, fx.heavyTournamentId),
([user, tournamentId]) =>
SavedCalendarEventRepository.isSaved({ userId: user.id, tournamentId }),
);Rules:
db-prod.sqlite3.FileBasename.functionName. For multiple variants of one function, suffix with a label: BuildRepository.abilityPointAverages.all / .byWeapon. The two SkillRepository files are disambiguated as MmrSkillRepository (mmr) — sendouq-match's has no reads.showPrivate/withMembers/include* options enabled, short search query (SEARCH_QUERY). The point is surfacing slow queries.actorId()/actorIdOrNull() work: the harness runs all cases inside userAsyncLocalStorage with the heavy user as actor.If no existing fixture fits the new function's arguments, add one to scripts/benchmark-db/fixtures.ts:
Fixtures interface. Every field is T | null — null means "table empty, skip dependent cases". Bundle related values into one object (e.g. heavyOrg) so a case depends on a single field.resolve<Name>() helper at the bottom of the file and call it from resolveFixtures().groupBy + count + orderBy count desc + limit 1 query:async function resolveHeavyBuildUserId() {
const row = await db
.selectFrom("Build")
.select(({ fn }) => ["ownerId", fn.countAll<number>().as("count")])
.groupBy("ownerId")
.orderBy("count", "desc")
.limit(1)
.executeTakeFirst();
return row?.ownerId ?? null;
}null (executeTakeFirst() + ?? null).app/db/tables.ts.pnpm run typecheck:scripts
pnpm exec biome check --error-on-warnings --write scripts/benchmark-db.ts scripts/benchmark-db
DB_PATH=db-prod.sqlite3 pnpm exec vite-node scripts/benchmark-db.ts -- --filter <caseName> --iterations 3The filtered run must show the new case with plausible timings — not in the "Skipped" list (fixture resolved null: check the fixture query against real data) and not in the "errored" list (the case threw: check argument shapes). Note pnpm bench:db --filter x also works but runs the full fixture resolution either way.
© sendou-ink, AGPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .claude/skills/db-benchmark of sendou-ink/sendou.ink.
Open the folder on GitHubat commit 63d970e
DB Benchmark next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| DB Benchmark this skillsendou-ink/sendou.ink | 297 | — | ~1.1k | Automated safety check: Pass | AGPL-3.0 | |
| MCP Server BuildershareAI-lab/learn-claude-code | 78k | 5 repos | ~1.2k | Automated safety check: Pass | MIT | |
| Copilot Session Failure Analysisdotnet/maui | 23k | — | ~3.4k | Automated safety check: Pass | MIT | |
| RTK Rust Design Patternsrtk-ai/rtk | 83k | — | ~1.9k | Automated safety check: Pass | Apache-2.0 | |
| OpenWork Desktop CDP Driverdifferent-ai/openwork | 24k | — | ~465 | Automated safety check: Pass | Custom licence | |
| OpenRig Upgrade Proceduremvschwarz/openrig | 5.9k | 1 repos | ~2.9k | Automated safety check: Pass | Apache-2.0 |
shareAI-lab/learn-claude-code
Walks through building MCP servers in Python or TypeScript that expose tools, resources and prompts to Claude, with templates, registration and testing.
dotnet/maui
Mines local Copilot CLI session logs for dotnet/maui to rank costly or failing runs, tag recurring failure modes, propose repo edits and emit guard evals.
rtk-ai/rtk
Describes seven Rust design patterns for the RTK CLI filter modules, with when to use each, RTK examples, and notes on when a pattern is overkill.
different-ai/openwork
Drives a running OpenWork desktop window over CDP from the shell to evaluate JS, take screenshots, start sessions and send prompts for hand checks.
mvschwarz/openrig
Walks an agent through upgrading the OpenRig CLI and daemon one observed step at a time, keeping live seats alive and reconciling managed plugin files.
EverMind-AI/EverOS
Walks through adding a new persisted memory kind to EverOS: choose storage among Markdown, SQLite and LanceDB, pick a Markdown strategy, then wire schemas, repos and writers.
sendou-ink/sendou.ink
Run, debug, and manage Playwright e2e tests. An agent skill from sendou-ink/sendou.ink.
sendou-ink/sendou.ink
Turn a user-submitted scanner "Game data" zip (scanner--game-N.zip, a match card's download for reporting a misread) into 1-3 new failing fixtures (frame + expected.json) under…
sendou-ink/sendou.ink
A skill your agent uses when the user asks for a rich explanation of a code change, diff, branch, or PR.
sendou-ink/sendou.ink
Help write, debug, and explore SQLite database queries using Kysely.
sendou-ink/sendou.ink
Multi-agent code review that checks the current diff from multiple angles (spec compliance, bugs from two lenses, conventions/modernization, abstraction reuse, security, DB query performance, test…
sendou-ink/sendou.ink
Work with URL search param state via the unified app/modules/search-params system.
Works with
Add or update repository READ function benchmark cases in the DB benchmark script. ink. Add or update repository READ function benchmark cases in the DB benchmark script.
DB Benchmark fits situations like: A new repository read function is added; benchmark cases are missing; working on scripts/benchmark-db.
Run `npx skills add sendou-ink/sendou.ink --skill db-benchmark -a claude-code`. Or copy the skill folder (.claude/skills/db-benchmark in sendou-ink/sendou.ink) into .claude/skills/db-benchmark in your project. Claude Code loads it when a task matches its description.
Run `npx skills add sendou-ink/sendou.ink --skill db-benchmark -a codex`. Or copy the skill folder (.claude/skills/db-benchmark in sendou-ink/sendou.ink) into .agents/skills/db-benchmark in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add sendou-ink/sendou.ink --skill db-benchmark -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/db-benchmark, .gemini/skills/db-benchmark, .github/skills/db-benchmark and .opencode/skills/db-benchmark in your project.
Going by SKILL.md and its folder, DB Benchmark needs the command-line tools its instructions call (pnpm).
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
DB Benchmark is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.1k tokens (SKILL.md is roughly 4.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with DB Benchmark: MCP Server Builder (shareAI-lab/learn-claude-code, 78k stars), Copilot Session Failure Analysis (dotnet/maui, 23k stars), RTK Rust Design Patterns (rtk-ai/rtk, 83k stars) and OpenWork Desktop CDP Driver (different-ai/openwork, 24k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
sendou-ink (a GitHub organization) maintains it in sendou-ink/sendou.ink, which has 297 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on October 7, 2026.
Source: sendou-ink/sendou.ink on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.