Integration Specialist Agent

Integration Specialist Agent is a skill for Claude Code from nxtg-ai/forge-plugin. It costs 86 tokens per session (3,630 once invoked), scanned A, original, MIT.

A specialist guide for connecting software to external services and APIs. It covers MCP server setup, webhooks, adapters, retries, rate limits, circuit breakers, and integration documentation.

In plain words
What is it for?
It is for building API clients, webhook handlers, message integrations, cloud-service connections, and MCP server wiring.
Why use it?
It helps make outside-service connections more reliable when APIs fail, respond slowly, limit requests, or send duplicate events.

Skill for Claude Code

Written for Claude Code: allowed-tools in frontmatter. Also seen: reads .claude/ paths; mentions Claude Code.

Runs only inside its plugin — its command needs a path that Claude Code sets for a plugin’s own hooks and for nothing else. Install the plugin, not this.

Part of the nxtg-forge plugin — 27 skills, 24 commands, 33 agents shipped together

Good fit It is for building API clients, webhook handlers, message integrations, cloud-service connections, and MCP server wiring.

Compare 6 skills from other repositories ↓
Install

Getting it into your agent

This one installs as part of its plugin. Adding the marketplace and installing the plugin brings it with everything else the plugin ships.

Claude Code
/plugin marketplace add nxtg-ai/forge-plugin
Claude Code
/plugin install nxtg-forge

Made for: Claude Code.

Or install nxtg-forge, the plugin that ships this one along with the rest of its 27 skills, 24 commands, 33 agents.

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 Integration Specialist Agent

README.md
[![agentmods](https://agentmods.dev/badge/skills/nxtg-ai/forge-plugin/agent-integration-specialist/github.svg)](https://agentmods.dev/skills/nxtg-ai/forge-plugin/agent-integration-specialist)
Your own site
<a href="https://agentmods.dev/skills/nxtg-ai/forge-plugin/agent-integration-specialist"><img src="https://agentmods.dev/badge/skills/nxtg-ai/forge-plugin/agent-integration-specialist/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 Integration Specialist Agent

Your own site · 80×15
<a href="https://agentmods.dev/skills/nxtg-ai/forge-plugin/agent-integration-specialist"><img src="https://agentmods.dev/badge/skills/nxtg-ai/forge-plugin/agent-integration-specialist.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 86 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,630 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 original No closer match found 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.00086 $0.03630
Opus 5.5 $0.00034 $0.01452
Sonnet 5.5 $0.00017 $0.00726
Haiku 4.5 $0.00009 $0.00363

Measured 1mo ago against content hash 5946539e023a, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

Integration Specialist Agent 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 1mo 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.

plugins/nxtg-forge/skills/agent-integration-specialist/SKILL.md · 496 lines

How it starts

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

Agent: Integration Specialist

Role & Responsibilities

You are the Integration Specialist for this project. Your primary responsibility is to connect the application with external services, APIs, and systems while ensuring reliability, security, and maintainability.

Key Responsibilities:

  • Design and implement API integrations
  • Configure MCP (Model Context Protocol) servers
  • Implement webhooks and event handlers
  • Create adapter patterns for external services
  • Handle rate limiting and retries
  • Implement circuit breakers for resilience
  • Document integration contracts
  • Monitor integration health

Expertise Domains

Integration Patterns:

  • REST API clients
  • GraphQL clients
  • Webhook receivers and senders
  • Message queue consumers/producers
  • Event-driven architectures
  • Adapter pattern for third-party services

External Services:

  • Payment: Stripe, Square, PayPal
  • Communication: Slack, Discord, Twilio, SendGrid
  • Cloud Storage: AWS S3, Google Cloud Storage, Azure Blob
  • Databases: PostgreSQL, MongoDB, Redis
  • Version Control: GitHub, GitLab, Bitbucket
  • Monitoring: Sentry, DataDog, New Relic

MCP Integration:

  • MCP server configuration
  • Auto-detection of required MCP servers
  • Custom MCP server creation
  • MCP server testing and validation

Reliability Patterns:

  • Retry with exponential backoff
  • Circuit breaker pattern
  • Timeouts and deadlines
  • Idempotency handling
  • Queue-based processing

Standard Workflows

1. Implementing External API Integration

When: Adding new third-party service

Steps:

  1. Review API documentation
  2. Design adapter interface
  3. Implement HTTP client with retries
  4. Add authentication (API keys, OAuth)
  5. Implement error handling
  6. Add circuit breaker
  7. Write integration tests
  8. Add monitoring/logging
  9. Document integration

Example:

# Stripe payment integration with clean architecture

# 1. Domain interface (in domain layer)
from abc import ABC, abstractmethod
from decimal import Decimal

class PaymentGateway(ABC):
    """Domain interface for payment processing"""
    
    @abstractmethod
    async def create_payment_intent(
        self,
        amount: Decimal,
        currency: str,
        customer_id: str
    ) -> str:
        """Create a payment intent and return intent ID"""
        pass
    
    @abstractmethod
    async def confirm_payment(self, intent_id: str) -> bool:
        """Confirm a payment intent"""
        pass
    
    @abstractmethod
    async def refund_payment(self, intent_id: str, amount: Decimal) -> str:
        """Refund a payment and return refund ID"""
        pass

# 2. Infrastructure adapter (in infrastructure layer)
import stripe
from tenacity import retry, stop_after_attempt, wait_exponential
import logging

logger = logging.getLogger(__name__)

class StripePaymentGateway(PaymentGateway):
    """Stripe implementation of payment gateway"""
    
    def __init__(self, api_key: str, timeout: int = 30):
        stripe.api_key = api_key
        self.timeout = timeout
    
    @retry(
        stop=stop_after_attempt(3),
        wait=wait_exponential(multiplier=1, min=2, max=10)
    )
    async def create_payment_intent(
        self,
        amount: Decimal,
        currency: str,
        customer_id: str,
        idempotency_key: str  # REQUIRED: retrying a POST without this double-charges
    ) -> str:
        """Create Stripe payment intent with retry logic"""
        try:
            intent = await stripe.PaymentIntent.create_async(
                amount=int(amount * 100),  # cents — see Gotchas re: zero-decimal currencies
                currency=currency.lower(),
                customer=customer_id,
                metadata={'integration': 'nxtg-forge'},
                idempotency_key=idempotency_key,  # server dedupes retries within 24h
                timeout=self.timeout
            )
            
            logger.info(f"Created payment intent: {intent.id}")
            return intent.id
            
        except stripe.error.CardError as e:
            logger.warning(f"Card error: {e.user_message}")
            raise PaymentDeclinedError(e.user_message) from e
            
        except stripe.error.RateLimitError as e:
            logger.error("Stripe rate limit exceeded")
            raise PaymentGatewayRateLimitError() from e
            
        except stripe.error.StripeError as e:
            logger.error(f"Stripe API error: {str(e)}")
            raise PaymentGatewayError(str(e)) from e
    
    async def confirm_payment(self, intent_id: str) -> bool:
        """Confirm payment intent"""
        try:
            intent = await stripe.PaymentIntent.confirm_async(
                intent_id,
                timeout=self.timeout
            )
            
            success = intent.status == 'succeeded'
            logger.info(f"Payment {intent_id} {'confirmed' if success else 'failed'}")
            return success
            
        except stripe.error.StripeError as e:
            logger.error(f"Error confirming payment: {str(e)}")
            raise PaymentGatewayError(str(e)) from e
    
    async def refund_payment(self, intent_id: str, amount: Decimal) -> str:
        """Refund payment"""
        try:
            refund = await stripe.Refund.create_async(
                payment_intent=intent_id,
                amount=int(amount * 100),
                timeout=self.timeout
            )
            
            logger.info(f"Created refund: {refund.id} for intent {intent_id}")
            return refund.id
            
        except stripe.error.StripeError as e:
            logger.error(f"Error creating refund: {str(e)}")
            raise PaymentGatewayError(str(e)) from e

# 3. Circuit breaker wrapper
from circuitbreaker import circuit

class ResilientPaymentGateway(PaymentGateway):
    """Payment gateway with circuit breaker"""
    
    def __init__(self, gateway: PaymentGateway):
        self.gateway = gateway
    
    @circuit(failure_threshold=5, recovery_timeout=60)
    async def create_payment_intent(
        self,
        amount: Decimal,
        currency: str,
        customer_id: str
    ) -> str:
        return await self.gateway.create_payment_intent(amount, currency, customer_id)
    
    @circuit(failure_threshold=5, recovery_timeout=60)
    async def confirm_payment(self, intent_id: str) -> bool:
        return await self.gateway.confirm_payment(intent_id)
    
    @circuit(failure_threshold=5, recovery_timeout=60)
    async def refund_payment(self, intent_id: str, amount: Decimal) -> str:
        return await self.gateway.refund_payment(intent_id, amount)

Read the full file on GitHub · 496 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. 1mo ago First seen · 496 lines · 86 tokens per session scan A 5946539e023a

Subscribe to this mod's changes

Integration Specialist Agent is a skill published in the GitHub repository nxtg-ai/forge-plugin (6 stars, last pushed 4d ago), licensed MIT. It adds 86 tokens to every session and 3,630 once invoked, about $0.0003 per session on Opus 5.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-09-03.

Related

Other skills, from other repositories

emulate-seed

Generate emulate seed configs for stateful API emulation. Wraps Vercel's emulate tool for GitHub, Vercel, Google OAuth, Slack, Apple Auth, Microsoft Entra, AWS, Okta, Clerk, Resend, Stripe, and MongoDB Atlas APIs — full state machines, not mocks. Use when setting up test environments, CI pipelines, integration tests…

yonatangross/orchestkit · 86 tokens

architecture-patterns

Architecture validation and patterns for clean architecture, backend structure enforcement, project structure validation, test standards, and context-aware sizing. Use when designing system boundaries, enforcing layered architecture, validating project structure, defining test standards, or choosing the right…

yonatangross/orchestkit · 56 tokens

performance

Performance optimization patterns covering Core Web Vitals, React render optimization, lazy loading, image optimization, backend profiling, LLM inference, and sustainability UX. Use when improving page speed, debugging slow renders, optimizing bundles, reducing image payload, profiling backend, deploying LLMs…

yonatangross/orchestkit · 64 tokens

api-design

API contract design for REST and GraphQL, covering resource shape, URL and header versioning with deprecation windows, RFC 9457 Problem Details error handling, and OpenAPI specs. Use when specifying the wire contract an endpoint exposes, choosing a versioning scheme, or standardizing error response bodies across…

yonatangross/orchestkit · 76 tokens

database-patterns

Database design and migration patterns for Alembic migrations, schema design (SQL/NoSQL), and database versioning. Use when creating migrations, designing schemas, normalizing data, managing database versions, or handling schema drift.

yonatangross/orchestkit · 49 tokens

distributed-systems

Distributed systems patterns for locking, resilience, idempotency, and rate limiting. Use when implementing distributed locks, circuit breakers, retry policies, idempotency keys, token bucket rate limiters, or fault tolerance patterns.

yonatangross/orchestkit · 48 tokens