@mcpmesh/sdk 1.4.1 → 2.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (242) hide show
  1. package/dist/__tests__/a2a/a2a-bearer.spec.d.ts +2 -0
  2. package/dist/__tests__/a2a/a2a-bearer.spec.d.ts.map +1 -0
  3. package/dist/__tests__/a2a/a2a-bearer.spec.js +58 -0
  4. package/dist/__tests__/a2a/a2a-bearer.spec.js.map +1 -0
  5. package/dist/__tests__/a2a/a2a-client.spec.d.ts +2 -0
  6. package/dist/__tests__/a2a/a2a-client.spec.d.ts.map +1 -0
  7. package/dist/__tests__/a2a/a2a-client.spec.js +334 -0
  8. package/dist/__tests__/a2a/a2a-client.spec.js.map +1 -0
  9. package/dist/__tests__/a2a/a2a-job.spec.d.ts +2 -0
  10. package/dist/__tests__/a2a/a2a-job.spec.d.ts.map +1 -0
  11. package/dist/__tests__/a2a/a2a-job.spec.js +255 -0
  12. package/dist/__tests__/a2a/a2a-job.spec.js.map +1 -0
  13. package/dist/__tests__/a2a/a2a-stream.spec.d.ts +2 -0
  14. package/dist/__tests__/a2a/a2a-stream.spec.d.ts.map +1 -0
  15. package/dist/__tests__/a2a/a2a-stream.spec.js +278 -0
  16. package/dist/__tests__/a2a/a2a-stream.spec.js.map +1 -0
  17. package/dist/__tests__/a2a/agent-a2a-config.spec.d.ts +2 -0
  18. package/dist/__tests__/a2a/agent-a2a-config.spec.d.ts.map +1 -0
  19. package/dist/__tests__/a2a/agent-a2a-config.spec.js +262 -0
  20. package/dist/__tests__/a2a/agent-a2a-config.spec.js.map +1 -0
  21. package/dist/__tests__/a2a/producer/auth-filter.spec.d.ts +2 -0
  22. package/dist/__tests__/a2a/producer/auth-filter.spec.d.ts.map +1 -0
  23. package/dist/__tests__/a2a/producer/auth-filter.spec.js +127 -0
  24. package/dist/__tests__/a2a/producer/auth-filter.spec.js.map +1 -0
  25. package/dist/__tests__/a2a/producer/card-builder.spec.d.ts +2 -0
  26. package/dist/__tests__/a2a/producer/card-builder.spec.d.ts.map +1 -0
  27. package/dist/__tests__/a2a/producer/card-builder.spec.js +113 -0
  28. package/dist/__tests__/a2a/producer/card-builder.spec.js.map +1 -0
  29. package/dist/__tests__/a2a/producer/dispatcher.spec.d.ts +2 -0
  30. package/dist/__tests__/a2a/producer/dispatcher.spec.d.ts.map +1 -0
  31. package/dist/__tests__/a2a/producer/dispatcher.spec.js +850 -0
  32. package/dist/__tests__/a2a/producer/dispatcher.spec.js.map +1 -0
  33. package/dist/__tests__/a2a/producer/mount-surface-push.spec.d.ts +2 -0
  34. package/dist/__tests__/a2a/producer/mount-surface-push.spec.d.ts.map +1 -0
  35. package/dist/__tests__/a2a/producer/mount-surface-push.spec.js +164 -0
  36. package/dist/__tests__/a2a/producer/mount-surface-push.spec.js.map +1 -0
  37. package/dist/__tests__/a2a/producer/mount.spec.d.ts +2 -0
  38. package/dist/__tests__/a2a/producer/mount.spec.d.ts.map +1 -0
  39. package/dist/__tests__/a2a/producer/mount.spec.js +433 -0
  40. package/dist/__tests__/a2a/producer/mount.spec.js.map +1 -0
  41. package/dist/__tests__/a2a/producer/public-url-cache.spec.d.ts +2 -0
  42. package/dist/__tests__/a2a/producer/public-url-cache.spec.d.ts.map +1 -0
  43. package/dist/__tests__/a2a/producer/public-url-cache.spec.js +116 -0
  44. package/dist/__tests__/a2a/producer/public-url-cache.spec.js.map +1 -0
  45. package/dist/__tests__/a2a/producer/sse-emitter.spec.d.ts +2 -0
  46. package/dist/__tests__/a2a/producer/sse-emitter.spec.d.ts.map +1 -0
  47. package/dist/__tests__/a2a/producer/sse-emitter.spec.js +754 -0
  48. package/dist/__tests__/a2a/producer/sse-emitter.spec.js.map +1 -0
  49. package/dist/__tests__/a2a/producer/state-translator.spec.d.ts +2 -0
  50. package/dist/__tests__/a2a/producer/state-translator.spec.d.ts.map +1 -0
  51. package/dist/__tests__/a2a/producer/state-translator.spec.js +124 -0
  52. package/dist/__tests__/a2a/producer/state-translator.spec.js.map +1 -0
  53. package/dist/__tests__/a2a/producer/task-store.spec.d.ts +2 -0
  54. package/dist/__tests__/a2a/producer/task-store.spec.d.ts.map +1 -0
  55. package/dist/__tests__/a2a/producer/task-store.spec.js +180 -0
  56. package/dist/__tests__/a2a/producer/task-store.spec.js.map +1 -0
  57. package/dist/__tests__/agent-add-tool.spec.d.ts +2 -0
  58. package/dist/__tests__/agent-add-tool.spec.d.ts.map +1 -0
  59. package/dist/__tests__/agent-add-tool.spec.js +483 -0
  60. package/dist/__tests__/agent-add-tool.spec.js.map +1 -0
  61. package/dist/__tests__/api-runtime-race.spec.d.ts +2 -0
  62. package/dist/__tests__/api-runtime-race.spec.d.ts.map +1 -0
  63. package/dist/__tests__/api-runtime-race.spec.js +193 -0
  64. package/dist/__tests__/api-runtime-race.spec.js.map +1 -0
  65. package/dist/__tests__/claim-dispatcher.spec.d.ts +2 -0
  66. package/dist/__tests__/claim-dispatcher.spec.d.ts.map +1 -0
  67. package/dist/__tests__/claim-dispatcher.spec.js +408 -0
  68. package/dist/__tests__/claim-dispatcher.spec.js.map +1 -0
  69. package/dist/__tests__/inbound-job-dispatch.spec.d.ts +2 -0
  70. package/dist/__tests__/inbound-job-dispatch.spec.d.ts.map +1 -0
  71. package/dist/__tests__/inbound-job-dispatch.spec.js +185 -0
  72. package/dist/__tests__/inbound-job-dispatch.spec.js.map +1 -0
  73. package/dist/__tests__/job-controller-progress.spec.d.ts +2 -0
  74. package/dist/__tests__/job-controller-progress.spec.d.ts.map +1 -0
  75. package/dist/__tests__/job-controller-progress.spec.js +85 -0
  76. package/dist/__tests__/job-controller-progress.spec.js.map +1 -0
  77. package/dist/__tests__/jobs-cancel-route.spec.d.ts +2 -0
  78. package/dist/__tests__/jobs-cancel-route.spec.d.ts.map +1 -0
  79. package/dist/__tests__/jobs-cancel-route.spec.js +88 -0
  80. package/dist/__tests__/jobs-cancel-route.spec.js.map +1 -0
  81. package/dist/__tests__/llm-agent-stream.test.d.ts +14 -0
  82. package/dist/__tests__/llm-agent-stream.test.d.ts.map +1 -0
  83. package/dist/__tests__/llm-agent-stream.test.js +341 -0
  84. package/dist/__tests__/llm-agent-stream.test.js.map +1 -0
  85. package/dist/__tests__/mesh-job-submitter.spec.d.ts +2 -0
  86. package/dist/__tests__/mesh-job-submitter.spec.d.ts.map +1 -0
  87. package/dist/__tests__/mesh-job-submitter.spec.js +110 -0
  88. package/dist/__tests__/mesh-job-submitter.spec.js.map +1 -0
  89. package/dist/__tests__/proxy-stream.test.d.ts +9 -0
  90. package/dist/__tests__/proxy-stream.test.d.ts.map +1 -0
  91. package/dist/__tests__/proxy-stream.test.js +347 -0
  92. package/dist/__tests__/proxy-stream.test.js.map +1 -0
  93. package/dist/__tests__/resolver-meshjob.spec.d.ts +26 -0
  94. package/dist/__tests__/resolver-meshjob.spec.d.ts.map +1 -0
  95. package/dist/__tests__/resolver-meshjob.spec.js +201 -0
  96. package/dist/__tests__/resolver-meshjob.spec.js.map +1 -0
  97. package/dist/__tests__/schema-verdict-policy.test.d.ts +6 -0
  98. package/dist/__tests__/schema-verdict-policy.test.d.ts.map +1 -0
  99. package/dist/__tests__/schema-verdict-policy.test.js +126 -0
  100. package/dist/__tests__/schema-verdict-policy.test.js.map +1 -0
  101. package/dist/__tests__/sse-stream.test.d.ts +12 -0
  102. package/dist/__tests__/sse-stream.test.d.ts.map +1 -0
  103. package/dist/__tests__/sse-stream.test.js +170 -0
  104. package/dist/__tests__/sse-stream.test.js.map +1 -0
  105. package/dist/a2a/a2a-bearer.d.ts +27 -0
  106. package/dist/a2a/a2a-bearer.d.ts.map +1 -0
  107. package/dist/a2a/a2a-bearer.js +63 -0
  108. package/dist/a2a/a2a-bearer.js.map +1 -0
  109. package/dist/a2a/a2a-client.d.ts +114 -0
  110. package/dist/a2a/a2a-client.d.ts.map +1 -0
  111. package/dist/a2a/a2a-client.js +405 -0
  112. package/dist/a2a/a2a-client.js.map +1 -0
  113. package/dist/a2a/a2a-event.d.ts +25 -0
  114. package/dist/a2a/a2a-event.d.ts.map +1 -0
  115. package/dist/a2a/a2a-event.js +9 -0
  116. package/dist/a2a/a2a-event.js.map +1 -0
  117. package/dist/a2a/a2a-job.d.ts +58 -0
  118. package/dist/a2a/a2a-job.d.ts.map +1 -0
  119. package/dist/a2a/a2a-job.js +264 -0
  120. package/dist/a2a/a2a-job.js.map +1 -0
  121. package/dist/a2a/a2a-stream.d.ts +39 -0
  122. package/dist/a2a/a2a-stream.d.ts.map +1 -0
  123. package/dist/a2a/a2a-stream.js +290 -0
  124. package/dist/a2a/a2a-stream.js.map +1 -0
  125. package/dist/a2a/errors.d.ts +29 -0
  126. package/dist/a2a/errors.d.ts.map +1 -0
  127. package/dist/a2a/errors.js +48 -0
  128. package/dist/a2a/errors.js.map +1 -0
  129. package/dist/a2a/index.d.ts +12 -0
  130. package/dist/a2a/index.d.ts.map +1 -0
  131. package/dist/a2a/index.js +11 -0
  132. package/dist/a2a/index.js.map +1 -0
  133. package/dist/a2a/producer/auth-filter.d.ts +34 -0
  134. package/dist/a2a/producer/auth-filter.d.ts.map +1 -0
  135. package/dist/a2a/producer/auth-filter.js +39 -0
  136. package/dist/a2a/producer/auth-filter.js.map +1 -0
  137. package/dist/a2a/producer/card-builder.d.ts +59 -0
  138. package/dist/a2a/producer/card-builder.d.ts.map +1 -0
  139. package/dist/a2a/producer/card-builder.js +59 -0
  140. package/dist/a2a/producer/card-builder.js.map +1 -0
  141. package/dist/a2a/producer/dispatcher.d.ts +276 -0
  142. package/dist/a2a/producer/dispatcher.d.ts.map +1 -0
  143. package/dist/a2a/producer/dispatcher.js +896 -0
  144. package/dist/a2a/producer/dispatcher.js.map +1 -0
  145. package/dist/a2a/producer/index.d.ts +26 -0
  146. package/dist/a2a/producer/index.d.ts.map +1 -0
  147. package/dist/a2a/producer/index.js +23 -0
  148. package/dist/a2a/producer/index.js.map +1 -0
  149. package/dist/a2a/producer/mount.d.ts +75 -0
  150. package/dist/a2a/producer/mount.d.ts.map +1 -0
  151. package/dist/a2a/producer/mount.js +422 -0
  152. package/dist/a2a/producer/mount.js.map +1 -0
  153. package/dist/a2a/producer/public-url-cache.d.ts +73 -0
  154. package/dist/a2a/producer/public-url-cache.d.ts.map +1 -0
  155. package/dist/a2a/producer/public-url-cache.js +0 -0
  156. package/dist/a2a/producer/public-url-cache.js.map +1 -0
  157. package/dist/a2a/producer/registry.d.ts +138 -0
  158. package/dist/a2a/producer/registry.d.ts.map +1 -0
  159. package/dist/a2a/producer/registry.js +117 -0
  160. package/dist/a2a/producer/registry.js.map +1 -0
  161. package/dist/a2a/producer/sse-emitter.d.ts +85 -0
  162. package/dist/a2a/producer/sse-emitter.d.ts.map +1 -0
  163. package/dist/a2a/producer/sse-emitter.js +405 -0
  164. package/dist/a2a/producer/sse-emitter.js.map +1 -0
  165. package/dist/a2a/producer/state-translator.d.ts +63 -0
  166. package/dist/a2a/producer/state-translator.d.ts.map +1 -0
  167. package/dist/a2a/producer/state-translator.js +108 -0
  168. package/dist/a2a/producer/state-translator.js.map +1 -0
  169. package/dist/a2a/producer/task-store.d.ts +128 -0
  170. package/dist/a2a/producer/task-store.d.ts.map +1 -0
  171. package/dist/a2a/producer/task-store.js +128 -0
  172. package/dist/a2a/producer/task-store.js.map +1 -0
  173. package/dist/agent.d.ts +72 -0
  174. package/dist/agent.d.ts.map +1 -1
  175. package/dist/agent.js +618 -13
  176. package/dist/agent.js.map +1 -1
  177. package/dist/api-runtime.d.ts +25 -0
  178. package/dist/api-runtime.d.ts.map +1 -1
  179. package/dist/api-runtime.js +75 -2
  180. package/dist/api-runtime.js.map +1 -1
  181. package/dist/claim-dispatcher.d.ts +126 -0
  182. package/dist/claim-dispatcher.d.ts.map +1 -0
  183. package/dist/claim-dispatcher.js +478 -0
  184. package/dist/claim-dispatcher.js.map +1 -0
  185. package/dist/express.d.ts.map +1 -1
  186. package/dist/express.js +33 -6
  187. package/dist/express.js.map +1 -1
  188. package/dist/inbound-job-dispatch.d.ts +105 -0
  189. package/dist/inbound-job-dispatch.d.ts.map +1 -0
  190. package/dist/inbound-job-dispatch.js +335 -0
  191. package/dist/inbound-job-dispatch.js.map +1 -0
  192. package/dist/index.d.ts +37 -4
  193. package/dist/index.d.ts.map +1 -1
  194. package/dist/index.js +29 -3
  195. package/dist/index.js.map +1 -1
  196. package/dist/job-context.d.ts +107 -0
  197. package/dist/job-context.d.ts.map +1 -0
  198. package/dist/job-context.js +95 -0
  199. package/dist/job-context.js.map +1 -0
  200. package/dist/jobs-cancel-route.d.ts +36 -0
  201. package/dist/jobs-cancel-route.d.ts.map +1 -0
  202. package/dist/jobs-cancel-route.js +60 -0
  203. package/dist/jobs-cancel-route.js.map +1 -0
  204. package/dist/jobs-helper-tools.d.ts +48 -0
  205. package/dist/jobs-helper-tools.d.ts.map +1 -0
  206. package/dist/jobs-helper-tools.js +133 -0
  207. package/dist/jobs-helper-tools.js.map +1 -0
  208. package/dist/llm-agent.d.ts +62 -53
  209. package/dist/llm-agent.d.ts.map +1 -1
  210. package/dist/llm-agent.js +211 -292
  211. package/dist/llm-agent.js.map +1 -1
  212. package/dist/llm-provider.d.ts +4 -4
  213. package/dist/llm.d.ts +4 -1
  214. package/dist/llm.d.ts.map +1 -1
  215. package/dist/llm.js +7 -17
  216. package/dist/llm.js.map +1 -1
  217. package/dist/mesh-job-submitter.d.ts +83 -0
  218. package/dist/mesh-job-submitter.d.ts.map +1 -0
  219. package/dist/mesh-job-submitter.js +143 -0
  220. package/dist/mesh-job-submitter.js.map +1 -0
  221. package/dist/proxy.d.ts +30 -0
  222. package/dist/proxy.d.ts.map +1 -1
  223. package/dist/proxy.js +351 -1
  224. package/dist/proxy.js.map +1 -1
  225. package/dist/resolver-meshjob.d.ts +170 -0
  226. package/dist/resolver-meshjob.d.ts.map +1 -0
  227. package/dist/resolver-meshjob.js +159 -0
  228. package/dist/resolver-meshjob.js.map +1 -0
  229. package/dist/route.d.ts +4 -0
  230. package/dist/route.d.ts.map +1 -1
  231. package/dist/route.js.map +1 -1
  232. package/dist/schema-normalize.d.ts +62 -0
  233. package/dist/schema-normalize.d.ts.map +1 -0
  234. package/dist/schema-normalize.js +128 -0
  235. package/dist/schema-normalize.js.map +1 -0
  236. package/dist/sse-stream.d.ts +44 -0
  237. package/dist/sse-stream.d.ts.map +1 -0
  238. package/dist/sse-stream.js +173 -0
  239. package/dist/sse-stream.js.map +1 -0
  240. package/dist/types.d.ts +351 -9
  241. package/dist/types.d.ts.map +1 -1
  242. package/package.json +4 -3
@@ -4,20 +4,18 @@
4
4
  * This class handles:
5
5
  * - System prompt rendering (with Handlebars templates)
6
6
  * - Agentic loop with tool execution
7
- * - LLM provider calls (direct Vercel AI SDK or mesh delegation)
7
+ * - LLM provider calls via mesh delegation
8
8
  * - Response parsing with Zod validation
9
9
  * - Metadata tracking (tokens, latency, tool calls)
10
10
  *
11
11
  * Configuration Hierarchy (ENV > Config):
12
- * - MESH_LLM_PROVIDER: Override provider for direct mode (e.g., "claude", "openai", "gemini")
13
12
  * - MESH_LLM_MODEL: Override model (e.g., "gpt-4o", "gemini-2.0-flash")
14
13
  * - MESH_LLM_MAX_ITERATIONS: Override max agentic loop iterations
15
- * - MESH_LLM_FILTER_MODE: Override tool filter mode ("all", "include", "exclude")
16
14
  *
17
15
  * @example
18
16
  * ```typescript
19
17
  * const agent = new MeshLlmAgent({
20
- * provider: "claude",
18
+ * provider: { capability: "llm", tags: ["+claude"] },
21
19
  * model: "anthropic/claude-sonnet-4-5",
22
20
  * systemPrompt: "file://prompts/assistant.hbs",
23
21
  * maxIterations: 10,
@@ -27,6 +25,7 @@
27
25
  * const result = await agent.run("Help me calculate 2+2", {
28
26
  * templateContext: { user: "John" },
29
27
  * tools: resolvedToolProxies,
28
+ * meshProvider: { endpoint: "http://provider:9000", functionName: "process_chat" },
30
29
  * });
31
30
  * ```
32
31
  */
@@ -96,42 +95,13 @@ export interface LlmProvider {
96
95
  }): Promise<LlmCompletionResponse>;
97
96
  }
98
97
  /**
99
- * Default LiteLLM provider using HTTP proxy.
100
- * Assumes LiteLLM proxy is running at LITELLM_URL or localhost:4000.
101
- */
102
- export declare class LiteLLMProvider implements LlmProvider {
103
- private baseUrl;
104
- constructor(baseUrl?: string);
105
- complete(model: string, messages: LlmMessage[], tools?: LlmToolDefinition[], options?: {
106
- maxOutputTokens?: number;
107
- temperature?: number;
108
- topP?: number;
109
- stop?: string[];
110
- }): Promise<LlmCompletionResponse>;
111
- }
112
- /**
113
- * Direct Vercel AI SDK provider.
114
- * Uses Vercel AI SDK (@ai-sdk/anthropic, @ai-sdk/openai, etc.) directly
115
- * without needing a proxy server.
98
+ * Mesh provider that delegates to an LLM provider discovered via mesh.
116
99
  */
117
- export declare class VercelDirectProvider implements LlmProvider {
118
- private providerSpec;
119
- private cachedProvider;
120
- private providerLoadAttempted;
121
- private toolProxies;
122
- private maxSteps;
123
- constructor(providerSpec: string);
124
- /**
125
- * Set tool proxies for execute callbacks in the Vercel AI SDK agentic loop.
126
- * When set, tools are created with execute callbacks and maxSteps is enabled,
127
- * letting the SDK handle the tool execution loop internally.
128
- */
129
- setToolProxies(tools: LlmToolProxy[], maxIterations?: number): void;
130
- /**
131
- * Resolve the full model string from provider spec.
132
- * E.g., "claude" -> "anthropic/claude-sonnet-4-5"
133
- */
134
- private resolveModel;
100
+ export declare class MeshDelegatedProvider implements LlmProvider {
101
+ private endpoint;
102
+ private functionName;
103
+ private parallelToolCalls;
104
+ constructor(endpoint: string, functionName: string, parallelToolCalls?: boolean);
135
105
  complete(model: string, messages: LlmMessage[], tools?: LlmToolDefinition[], options?: {
136
106
  maxOutputTokens?: number;
137
107
  temperature?: number;
@@ -142,16 +112,20 @@ export declare class VercelDirectProvider implements LlmProvider {
142
112
  name: string;
143
113
  };
144
114
  }): Promise<LlmCompletionResponse>;
145
- }
146
- /**
147
- * Mesh provider that delegates to an LLM provider discovered via mesh.
148
- */
149
- export declare class MeshDelegatedProvider implements LlmProvider {
150
- private endpoint;
151
- private functionName;
152
- private parallelToolCalls;
153
- constructor(endpoint: string, functionName: string, parallelToolCalls?: boolean);
154
- complete(model: string, messages: LlmMessage[], tools?: LlmToolDefinition[], options?: {
115
+ /**
116
+ * Stream chunks from the mesh-delegated provider's streaming variant.
117
+ *
118
+ * Builds the same ``{request: <MeshLlmRequest>}`` body that ``complete()``
119
+ * produces, then calls the streaming MCP tool via ``streamMcpTool()`` from
120
+ * ``./proxy``. Each ``notifications/progress`` chunk is yielded as a string;
121
+ * the final ``result`` event ends the stream and is NOT yielded (matches the
122
+ * Python ``MeshLlmAgent.stream()`` contract).
123
+ *
124
+ * The provider's ``functionName`` is expected to already be the streaming
125
+ * variant — the registry resolver picks it based on the consumer's
126
+ * ``ai.mcpmesh.stream`` tag opt-in (see ``MeshLlmAgent.stream()``).
127
+ */
128
+ streamComplete(model: string, messages: LlmMessage[], tools?: LlmToolDefinition[], options?: {
155
129
  maxOutputTokens?: number;
156
130
  temperature?: number;
157
131
  topP?: number;
@@ -160,7 +134,7 @@ export declare class MeshDelegatedProvider implements LlmProvider {
160
134
  schema: Record<string, unknown>;
161
135
  name: string;
162
136
  };
163
- }): Promise<LlmCompletionResponse>;
137
+ }): AsyncGenerator<string, void, void>;
164
138
  }
165
139
  /**
166
140
  * MeshLlmAgent - The core agentic loop implementation.
@@ -192,6 +166,41 @@ export declare class MeshLlmAgent<T = string> {
192
166
  * @returns Parsed response (validated if schema provided)
193
167
  */
194
168
  run(messageInput: LlmMessageInput, context: AgentRunContext): Promise<T>;
169
+ /**
170
+ * Stream the final assistant text token-by-token from a mesh-delegated
171
+ * provider's streaming variant (Python's ``@mesh.llm_provider`` auto-
172
+ * generates a ``process_chat_stream`` MCP tool tagged
173
+ * ``ai.mcpmesh.stream``).
174
+ *
175
+ * **Tag opt-in (REQUIRED):** Unlike Python's ``@mesh.llm`` which auto-adds
176
+ * the ``ai.mcpmesh.stream`` tag based on the function's return-type
177
+ * (``Stream[str]`` vs ``str``), TypeScript users must EXPLICITLY include
178
+ * ``"ai.mcpmesh.stream"`` in their provider tag filter to get the
179
+ * streaming variant of the LLM provider:
180
+ *
181
+ * ```ts
182
+ * server.addTool(mesh.llm({
183
+ * name: "chat_stream",
184
+ * provider: { capability: "llm", tags: ["+claude", "ai.mcpmesh.stream"] },
185
+ * // ...
186
+ * execute: async ({ message }, { llm }) => {
187
+ * for await (const chunk of llm.stream(message)) {
188
+ * process.stdout.write(chunk);
189
+ * }
190
+ * return llm.meta?.outputTokens ? "ok" : "no-output";
191
+ * },
192
+ * }));
193
+ * ```
194
+ *
195
+ * Without the ``ai.mcpmesh.stream`` tag the resolver returns the
196
+ * buffered ``process_chat`` tool, and ``stream()`` will yield zero chunks
197
+ * (the buffered tool emits no progress notifications).
198
+ *
199
+ * @param messageInput - User message string or multi-turn message array
200
+ * @param context - Runtime context with tools, mesh provider, and options
201
+ * @returns AsyncIterable yielding text chunks as the provider emits them
202
+ */
203
+ stream(messageInput: LlmMessageInput, context: AgentRunContext): AsyncGenerator<string, void, void>;
195
204
  /**
196
205
  * Create a callable LlmAgent interface.
197
206
  */
@@ -200,12 +209,12 @@ export declare class MeshLlmAgent<T = string> {
200
209
  readonly meta: LlmMeta | null;
201
210
  readonly tools: LlmToolProxy[];
202
211
  setSystemPrompt(prompt: string): void;
212
+ stream(message: LlmMessageInput, options?: LlmCallOptions): AsyncIterable<string>;
203
213
  };
204
214
  /**
205
215
  * Resolve the LLM provider to use.
206
216
  *
207
- * Configuration Hierarchy (ENV > Config):
208
- * - MESH_LLM_PROVIDER: Override provider (only for direct mode, not mesh delegation)
217
+ * Mesh delegation only a resolved meshProvider is required.
209
218
  */
210
219
  private resolveProvider;
211
220
  /**
@@ -213,7 +222,7 @@ export declare class MeshLlmAgent<T = string> {
213
222
  */
214
223
  private getProviderName;
215
224
  /**
216
- * Get default model based on provider.
225
+ * Get default model mesh delegation defers model selection to the provider.
217
226
  */
218
227
  private getDefaultModel;
219
228
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"llm-agent.d.ts","sourceRoot":"","sources":["../src/llm-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llm-agent.d.ts","sourceRoot":"","sources":["../src/llm-agent.ts"],"names":[],"mappings":"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"}