add-service

add-service is a skill for Claude Code from wallieinformal201/pentest-mcp-server. It costs 38 tokens per session (3,331 once invoked), scanned A, a copy of add-service, Apache-2.0.

A guide for scaffolding a new service integration, meaning a reusable part of an application that connects to an external API or service.

In plain words
What is it for?
Use it when adding an external API, creating a domain module, registering its initialisation and checking the resulting server code.
Why use it?
It gives developers a consistent structure for adding service code, shared state and registration to the application.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin. Also seen: mentions CLAUDE.md; mentions AGENTS.md.

Part of the @cyanheads/pentest-mcp-server plugin — 31 skills shipped together

Good fit Use it when adding an external API, creating a domain module, registering its initialisation and checking the resulting server code.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/wallieinformal201/pentest-mcp-server/add-service
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add wallieinformal201/pentest-mcp-server --skill add-service
Clone the repo
git clone --depth 1 https://github.com/wallieinformal201/pentest-mcp-server

Made for: Claude Code.

Or install @cyanheads/pentest-mcp-server, the plugin that ships this one along with the rest of its 31 skills.

Wrote 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.

agentmods badge for add-service

README.md
[![agentmods](https://agentmods.dev/badge/skills/wallieinformal201/pentest-mcp-server/add-service/github.svg)](https://agentmods.dev/skills/wallieinformal201/pentest-mcp-server/add-service)
Your own site
<a href="https://agentmods.dev/skills/wallieinformal201/pentest-mcp-server/add-service"><img src="https://agentmods.dev/badge/skills/wallieinformal201/pentest-mcp-server/add-service/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.

agentmods 80×15 button for add-service

Your own site · 80×15
<a href="https://agentmods.dev/skills/wallieinformal201/pentest-mcp-server/add-service"><img src="https://agentmods.dev/badge/skills/wallieinformal201/pentest-mcp-server/add-service.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 38 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,331 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin 92% copy Near-identical to another mod in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00038 $0.03331
Opus 5 $0.00019 $0.01665
Sonnet 5 $0.00008 $0.00666
Haiku 4.5 $0.00004 $0.00333

Measured 10d ago against content hash cb8ac8918eff, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-11, from the pricing page.

Security

Grade A, and why

add-service 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.

Origin

This is a copy

92% identical to add-service — 4 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

skills/add-service/SKILL.md · 299 lines

How it starts

The opening of the file, as written. The whole thing — 299 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Context

Services use the init/accessor pattern: initialized once in createApp's setup() callback, then accessed at request time via a lazy getter. Each service lives in src/services/[domain]/ with an init function and accessor.

Service methods receive Context for correlated logging (ctx.log) and tenant-scoped storage (ctx.state). Convention: ctx.elicit and ctx.sample should only be called from tool handlers, not from services.

For the full service pattern, CoreServices, and Context interface, read the framework's CLAUDE.md/AGENTS.md (loaded at session start).

Steps

  1. Gather the service domain name and what it integrates with from the user's request — ask only if genuinely absent
  2. Create the directory at src/services/{{domain}}/
  3. Create the service file at src/services/{{domain}}/{{domain}}-service.ts
  4. Create types at src/services/{{domain}}/types.ts if needed
  5. Register in setup() in the server's entry point (src/index.ts, or src/worker.ts for Worker-only servers)
  6. Run bun run devcheck to verify

Template

Service file

/**
 * @fileoverview {{SERVICE_DESCRIPTION}}
 * @module services/{{domain}}/{{domain}}-service
 */

import type { AppConfig } from '@cyanheads/mcp-ts-core/config';
import type { StorageService } from '@cyanheads/mcp-ts-core/storage';
import type { Context } from '@cyanheads/mcp-ts-core';

export class {{ServiceName}} {
  constructor(
    private readonly config: AppConfig,
    private readonly storage: StorageService,
  ) {}

  async doWork(input: string, ctx: Context): Promise<string> {
    ctx.log.debug('Processing', { input });
    // Domain logic here
    return `result: ${input}`;
  }
}

// --- Init/accessor pattern ---

let _service: {{ServiceName}} | undefined;

export function init{{ServiceName}}(config: AppConfig, storage: StorageService): void {
  _service = new {{ServiceName}}(config, storage);
}

export function get{{ServiceName}}(): {{ServiceName}} {
  if (!_service) {
    throw new Error('{{ServiceName}} not initialized — call init{{ServiceName}}() in setup()');
  }
  return _service;
}

Read the full file on GitHub · 299 lines

Changes

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.

  1. 10d ago First seen · 299 lines · 38 tokens per session scan A cb8ac8918eff

Subscribe to this mod's changes

add-service is a skill published in the GitHub repository wallieinformal201/pentest-mcp-server (2 stars, last pushed 2d ago), licensed Apache-2.0. It adds 38 tokens to every session and 3,331 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. It is 92% identical to add-service, differing in 4 lines, and is treated as a copy.

Related

Other skills, from other repositories

agent-crdt-synchronizer

Agent skill for crdt-synchronizer - invoke with $agent-crdt-synchronizer.

ruvnet/ruflo · 25 tokens

event-store-design

Design and implement event stores for event-sourced systems. Use when building event sourcing infrastructure, choosing event store technologies, or implementing event persistence patterns.

wshobson/agents · 33 tokens

cqrs-implementation

Implement Command Query Responsibility Segregation for scalable architectures. Use when separating read and write models, optimizing query performance, or building event-sourced systems.

wshobson/agents · 35 tokens

workflow-orchestration-patterns

Design durable workflows with Temporal for distributed systems. Covers workflow vs activity separation, saga patterns, state management, and determinism constraints. Use when building long-running processes, distributed transactions, or microservice orchestration.

wshobson/agents · 49 tokens

microservices-patterns

Design microservices architectures with service boundaries, event-driven communication, and resilience patterns. Use when building distributed systems, decomposing monoliths, or implementing microservices.

wshobson/agents · 38 tokens

deepstream-sop

Use this skill when building, deploying, evaluating, debugging, or measuring latency for the DeepStream SOP Inference Microservice — a GPU-accelerated FastAPI service that detects whether operators perform assembly-line steps in order via event boundary detection (GEBD) plus VLM classification. Trigger even if the…

NVIDIA/skills · 219 tokens