pluginagentmarketplace/custom-plugin-ai-agents · Archived

tool-calling

Implement tool calling - function schemas, API integration, validation, and error handling

First seen Jan 27, 2026

Installation

$ npx skills add pluginagentmarketplace/custom-plugin-ai-agents --skill tool-calling

Stronger alternatives

This repository is archived — consider an actively maintained alternative.

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from pluginagentmarketplace/custom-plugin-ai-agents.

npx skills add pluginagentmarketplace/custom-plugin-ai-agents

Browse all from pluginagentmarketplace/custom-plugin-ai-agents

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 1
License LICENSE
Default branch main
Open issues 0
Status Archived

Skill metadata

Parsed from SKILL.md frontmatter.

Version2.0.0

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 2,537 B
  • docs SUMMARY.md 110 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 7 installs

SKILL.md

Tool Calling

Enable LLMs to call functions and interact with external systems.

When to Use This Skill

Invoke this skill when:

  • Adding function calling to agents
  • Designing tool schemas
  • Integrating external APIs
  • Implementing validation and error handling

Parameter Schema

Parameter Type Required Description Default
task string Yes Tool calling goal -
provider enum No anthropic, openai, langchain anthropic
strict_mode bool No Enable strict validation true

Quick Start

Claude Tool Use

from anthropic import Anthropic

tools = [{
    "name": "get_weather",
    "description": "Get weather for a location",
    "input_schema": {
        "type": "object",
        "properties": {
            "location": {"type": "string"}
        },
        "required": ["location"]
    }
}]

response = client.messages.create(
    model="claude-sonnet-4-20250514",
    tools=tools,
    messages=[{"role": "user", "content": "Weather in Tokyo?"}]
)

LangChain Tools

from langchain_core.tools import tool

@tool
def search(query: str) -> str:
    """Search the web for information."""
    return web_search(query)

Schema Best Practices

# Good: verb_noun, clear description
{
    "name": "search_products",
    "description": """Search product database.
    USE WHEN: User asks about products.
    DO NOT USE: For order status (use get_order instead)."""
}

# Bad: vague
{"name": "helper", "description": "Helps with stuff"}

Troubleshooting

Issue Solution
Tool not called Improve description
Wrong tool selected Add "DO NOT USE" conditions
Invalid arguments Enable strict mode
Execution timeout Add timeout, retry logic

Best Practices

  • Use verb_noun naming convention
  • Keep tool count under 20
  • Include usage examples in descriptions
  • Return errors as tool results

Related Skills

  • ai-agent-basics - Agent loops
  • llm-integration - API setup
  • agent-safety - Input validation

References