Skip to main content
AI/MLCrestApps

crestapps-core-a2a

Skill for A2A client and host setup, agent cards, remote skills, and deciding when to use A2A instead of MCP.

Stars
13
Source
CrestApps/CrestApps.AgentSkills
Updated
2026-05-29
Slug
CrestApps--CrestApps.AgentSkills--crestapps-core-a2a
View on GitHubRaw SKILL.md

// install — copy + paste into any project

mkdir -p .claude/skills && curl -fsSL https://raw.githubusercontent.com/CrestApps/CrestApps.AgentSkills/HEAD/plugins/crestapps-core/skills/crestapps-core-a2a/SKILL.md -o .claude/skills/crestapps-core-a2a.md

Drops the SKILL.md into .claude/skills/crestapps-core-a2a.md. Works with Claude Code, Cursor, and any agent that loads SKILL.md files from .claude/skills/.

CrestApps.Core A2A - Prompt Templates

Add A2A Support

You are a CrestApps.Core expert. Generate code and guidance for Agent-to-Agent protocol support in CrestApps.Core.

Guidelines

  • Use A2A when the remote system is an AI agent that reasons independently.
  • Use MCP when the remote system is exposing tools or resources rather than a full agent.
  • Add the A2A client to discover remote agents and invoke their skills.
  • Add the A2A host to expose local agents to remote clients.
  • Configure authentication explicitly for host scenarios.

Client Registration

builder.Services.AddCrestAppsCore(crestApps => crestApps
    .AddAISuite(ai => ai
        .AddOpenAI()
        .AddA2AClient()
    )
);

Host Registration

builder.Services.AddCrestAppsCore(crestApps => crestApps
    .AddAISuite(ai => ai
        .AddOpenAI()
        .AddA2AHost()
    )
);

builder.Services.Configure<A2AHostOptions>(options =>
{
    options.AuthenticationType = A2AHostAuthenticationType.ApiKey;
    options.ApiKey = "your-secret-key";
});

A2A vs MCP

Use case Prefer
Remote system should think and keep agent context A2A
Remote system should expose tools or resources MCP