You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[FEATURE] Support MCP resources and prompts for GitNexus context workflows #1662
Astron Agent's current MCP integration exposes tool discovery and tool execution only. The client session calls list_tools() and call_tool(), and the public request/response schemas have no operations for MCP resources or prompts.
GitNexus is a concrete fixture where this loses high-value, read-only context:
resources such as gitnexus://repos, repository context, clusters, processes, schema, and group status/contracts;
guided prompts such as detect_impact and generate_map.
Without list_resources / read_resource and list_prompts / get_prompt, Astron workflows must reconstruct this context through extra tool calls or cannot use it at all.
Proposed solution
Add first-class MCP resource and prompt operations alongside the existing tool APIs:
Extend the transport service to call ClientSession.list_resources, read_resource, list_prompts, and get_prompt on the already initialized Streamable HTTP/SSE session.
Add typed request/response schemas that preserve cursors, resource metadata, prompt arguments, text/blob contents, annotations, and protocol errors without flattening them into fabricated tool results.
Keep server selection and transport negotiation identical to tool listing/calls, including the same URL, blacklist, loopback, and future credential resolution policies.
Treat resource URIs as opaque MCP identifiers after the server session is established; never fetch a resource URI as an arbitrary HTTP URL.
Add bounded response sizes, cursor/page limits, timeouts, and explicit truncation/error metadata. Do not auto-read every advertised resource into model context.
Let an operator select which resources/prompts an agent or workflow may use, and audit server, operation, URI/prompt name, duration, result size, and status without logging sensitive content.
Preserve MCP content types and errors; unsupported content must remain explicit instead of being silently dropped.
Activity