Serveur MCP

GAIP Opportunity Broker

io.github.tjcgraham-rgb/gaip-opportunity-broker
Infrastructure MCP et agents Public et accessible MCP 2026-07-28

Ce que fait ce MCP

Ranks candidate agents by declared capability match for a bounded task and reports candidates that are unavailable or held.

preflight_broker_candidates
Which agent can do this task?
Use this when choosing which agent to hand a task to ("which of these agents can do X?"). Pass `task_class` and `candidates` (A2A agent cards). Returns callable candidates ordered by declared skill match (not a quality ranking), held ones with reasons and a receipt. Free, read-only, no account; inputs must be public and non-personal.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'examples': [{'candidates': [{'agent_card': {'url': 'https://forecast.example.com/a2a', 'name': 'Open Forecast Agent', 'skills': [{'id': 'weather_forecast', 'name': 'Weather forecast', 'tags': ['weather', 'forecast'], 'description': '7-day forecast for a named city.'}], 'version': '1.2.0', 'description': 'Public weather forecasts over A2A.'}, 'explicit_read_only_consent': True}, {'agent_card': {'url': 'https://premium-weather.example.com/a2a', 'name': 'Premium Weather Agent', 'skills': [{'id': 'forecast', 'name': 'Hyperlocal forecast', 'tags': ['weather', 'forecast']}], 'security': [{'bearer': []}], 'securitySchemes': {'bearer': {'type': 'http', 'scheme': 'bearer'}}}, 'explicit_read_only_consent': True}, {'agent_card': {'url': 'https://fx.example.com/a2a', 'name': 'FX Agent', 'skills': [{'id': 'currency_conversion', 'name': 'Currency conversion', 'tags': ['fx', 'currency']}]}}], 'task_class': 'weather_forecast'}], 'required': ['candidates'], 'properties': {'synthetic': {'type': 'boolean', 'description': 'Optional: true marks a test call.'}, 'candidates': {'type': 'array', 'items': {'type': 'object'}, 'description': 'A2A agent cards as published, or {agent_card, explicit_read_only_consent}.'}, 'episode_id': {'type': 'string', 'description': 'Optional: your own id to group related calls.'}, 'task_class': {'type': 'string', 'description': 'Optional: short name of the task, e.g. weather_forecast.'}, 'continuity_handle': {'type': 'object', 'required': ['continuity_id', 'token'], 'properties': {'token': {'type': 'string'}, 'continuity_id': {'type': 'string'}}, 'description': 'Optional: the continuity_handle from an earlier GAIP result; links this call to your earlier ones.', 'additionalProperties': False}, 'data_classification': {'enum': ['PUBLIC', 'NON_PERSONAL_PUBLIC'], 'type': 'string', 'default': 'PUBLIC', 'description': 'PUBLIC (default) or NON_PERSONAL_PUBLIC. Never send personal data.'}, 'independent_operator_id': {'type': 'string', 'description': 'Optional: your operator id (recorded as a claim, not verified).'}}, 'additionalProperties': True}
Modifié
preflight_broker_candidates
30 September 2026 02:40
Ajouté
preflight_broker_candidates
28 September 2026 02:40