@emseepea/server 0.0.0 → 0.0.2
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.
- package/README.md +321 -3
- package/dist/http.d.ts +15 -0
- package/dist/http.d.ts.map +1 -0
- package/dist/http.js +284 -0
- package/dist/http.js.map +1 -0
- package/dist/index.d.ts +207 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1000 -0
- package/dist/index.js.map +1 -0
- package/dist/ui.d.ts +185 -0
- package/dist/ui.d.ts.map +1 -0
- package/dist/ui.js +263 -0
- package/dist/ui.js.map +1 -0
- package/package.json +44 -2
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
import { McpServer, type AuthMetadataOptions, type GetPromptResult, type OAuthTokenVerifier, type ReadResourceResult } from "@modelcontextprotocol/server";
|
|
2
|
+
import type { FastifyInstance } from "fastify";
|
|
3
|
+
import { z } from "zod";
|
|
4
|
+
export * from "./ui.js";
|
|
5
|
+
declare const REGISTER: unique symbol;
|
|
6
|
+
declare const TOOL_NAME: unique symbol;
|
|
7
|
+
declare const TOOL_ACCESS: unique symbol;
|
|
8
|
+
declare const TOOL_STREAMING: unique symbol;
|
|
9
|
+
declare const RESOURCE_NAME: unique symbol;
|
|
10
|
+
declare const RESOURCE_URI: unique symbol;
|
|
11
|
+
declare const RESOURCE_KIND: unique symbol;
|
|
12
|
+
declare const RESOURCE_MATCHES: unique symbol;
|
|
13
|
+
declare const RESOURCE_ROUTE: unique symbol;
|
|
14
|
+
declare const PROMPT_NAME: unique symbol;
|
|
15
|
+
declare const HAS_COMPLETION: unique symbol;
|
|
16
|
+
export interface ToolPrincipal {
|
|
17
|
+
readonly clientId: string;
|
|
18
|
+
readonly scopes: readonly string[];
|
|
19
|
+
readonly resource?: string;
|
|
20
|
+
}
|
|
21
|
+
export interface ToolContext<Access extends ToolAccess = ToolAccess> {
|
|
22
|
+
readonly signal: AbortSignal;
|
|
23
|
+
readonly deadlineMs: number;
|
|
24
|
+
readonly principal: Access extends "public" ? undefined : ToolPrincipal;
|
|
25
|
+
}
|
|
26
|
+
export interface ProgressUpdate {
|
|
27
|
+
readonly progress: number;
|
|
28
|
+
readonly total?: number;
|
|
29
|
+
readonly message?: string;
|
|
30
|
+
}
|
|
31
|
+
export interface StreamingToolContext<Access extends ToolAccess = ToolAccess> extends ToolContext<Access> {
|
|
32
|
+
readonly reportProgress: (update: ProgressUpdate) => Promise<void>;
|
|
33
|
+
}
|
|
34
|
+
export interface ToolResult<Output> {
|
|
35
|
+
readonly text: string;
|
|
36
|
+
readonly data: Output;
|
|
37
|
+
}
|
|
38
|
+
export interface BackendAdapterContext {
|
|
39
|
+
readonly signal: AbortSignal;
|
|
40
|
+
readonly deadlineMs: number;
|
|
41
|
+
}
|
|
42
|
+
export type OperationContext = BackendAdapterContext;
|
|
43
|
+
export interface CompletionContext extends OperationContext {
|
|
44
|
+
readonly arguments: Readonly<Record<string, string>>;
|
|
45
|
+
}
|
|
46
|
+
export type CompletionHandler = (value: string, context: CompletionContext) => readonly string[] | Promise<readonly string[]>;
|
|
47
|
+
interface ProtectedToolAccess {
|
|
48
|
+
readonly type: "protected";
|
|
49
|
+
readonly requiredScopes: readonly string[];
|
|
50
|
+
}
|
|
51
|
+
export type ToolAccess = "public" | "protected";
|
|
52
|
+
interface ToolDefinitionBase<Input extends z.ZodObject, Output extends z.ZodObject> {
|
|
53
|
+
readonly name: string;
|
|
54
|
+
readonly title?: string;
|
|
55
|
+
readonly description: string;
|
|
56
|
+
readonly inputSchema: Input;
|
|
57
|
+
readonly outputSchema: Output;
|
|
58
|
+
}
|
|
59
|
+
export type ToolDefinition<Input extends z.ZodObject, Output extends z.ZodObject> = ToolDefinitionBase<Input, Output> & ({
|
|
60
|
+
readonly access: "public";
|
|
61
|
+
readonly requiredScopes?: never;
|
|
62
|
+
readonly handler: (input: z.output<Input>, context: ToolContext<"public">) => ToolResult<z.input<Output>> | Promise<ToolResult<z.input<Output>>>;
|
|
63
|
+
} | {
|
|
64
|
+
readonly access: "protected";
|
|
65
|
+
readonly requiredScopes: readonly string[];
|
|
66
|
+
readonly handler: (input: z.output<Input>, context: ToolContext<"protected">) => ToolResult<z.input<Output>> | Promise<ToolResult<z.input<Output>>>;
|
|
67
|
+
});
|
|
68
|
+
export type StreamingToolDefinition<Input extends z.ZodObject, Output extends z.ZodObject> = ToolDefinitionBase<Input, Output> & ({
|
|
69
|
+
readonly access: "public";
|
|
70
|
+
readonly requiredScopes?: never;
|
|
71
|
+
readonly handler: (input: z.output<Input>, context: StreamingToolContext<"public">) => ToolResult<z.input<Output>> | Promise<ToolResult<z.input<Output>>>;
|
|
72
|
+
} | {
|
|
73
|
+
readonly access: "protected";
|
|
74
|
+
readonly requiredScopes: readonly string[];
|
|
75
|
+
readonly handler: (input: z.output<Input>, context: StreamingToolContext<"protected">) => ToolResult<z.input<Output>> | Promise<ToolResult<z.input<Output>>>;
|
|
76
|
+
});
|
|
77
|
+
interface MappedToolDefinitionBase<Input extends z.ZodObject, Output extends z.ZodObject, BackendInput extends z.ZodObject, BackendOutput extends z.ZodObject> extends ToolDefinitionBase<Input, Output> {
|
|
78
|
+
readonly backendInputSchema: BackendInput;
|
|
79
|
+
readonly backendOutputSchema: BackendOutput;
|
|
80
|
+
/** Side-effect-free provider check. The tool stays listed while unavailable. */
|
|
81
|
+
readonly isAvailable?: (context: BackendAdapterContext) => boolean | Promise<boolean>;
|
|
82
|
+
readonly mapInput: (input: z.output<Input>) => z.input<BackendInput>;
|
|
83
|
+
readonly adapter: (input: z.output<BackendInput>, context: BackendAdapterContext) => unknown | Promise<unknown>;
|
|
84
|
+
readonly mapOutput: (output: z.output<BackendOutput>) => ToolResult<z.input<Output>>;
|
|
85
|
+
}
|
|
86
|
+
export type MappedToolDefinition<Input extends z.ZodObject, Output extends z.ZodObject, BackendInput extends z.ZodObject, BackendOutput extends z.ZodObject> = MappedToolDefinitionBase<Input, Output, BackendInput, BackendOutput> & {
|
|
87
|
+
readonly access: "public";
|
|
88
|
+
readonly requiredScopes?: never;
|
|
89
|
+
} | MappedToolDefinitionBase<Input, Output, BackendInput, BackendOutput> & {
|
|
90
|
+
readonly access: "protected";
|
|
91
|
+
readonly requiredScopes: readonly string[];
|
|
92
|
+
};
|
|
93
|
+
export interface EmseepeaTool {
|
|
94
|
+
readonly [TOOL_NAME]: string;
|
|
95
|
+
readonly [TOOL_ACCESS]: "public" | ProtectedToolAccess;
|
|
96
|
+
readonly [TOOL_STREAMING]: boolean;
|
|
97
|
+
readonly [REGISTER]: (server: McpServer, timeoutMs: number, maxApplicationResultBytes: number, maxProgressEvents: number, maxProgressEventBytes: number) => void;
|
|
98
|
+
}
|
|
99
|
+
export interface ResourceDefinition {
|
|
100
|
+
readonly name: string;
|
|
101
|
+
readonly uri: string;
|
|
102
|
+
readonly title?: string;
|
|
103
|
+
readonly description?: string;
|
|
104
|
+
readonly mimeType?: string;
|
|
105
|
+
readonly handler: (context: OperationContext) => ReadResourceResult | Promise<ReadResourceResult>;
|
|
106
|
+
}
|
|
107
|
+
export interface ResourceTemplateDefinition {
|
|
108
|
+
readonly name: string;
|
|
109
|
+
readonly uriTemplate: string;
|
|
110
|
+
readonly title?: string;
|
|
111
|
+
readonly description?: string;
|
|
112
|
+
readonly mimeType?: string;
|
|
113
|
+
readonly complete?: Readonly<Record<string, CompletionHandler>>;
|
|
114
|
+
readonly handler: (input: {
|
|
115
|
+
readonly uri: string;
|
|
116
|
+
readonly variables: Readonly<Record<string, string | readonly string[]>>;
|
|
117
|
+
}, context: OperationContext) => ReadResourceResult | Promise<ReadResourceResult>;
|
|
118
|
+
}
|
|
119
|
+
interface ResourceTemplateRoute {
|
|
120
|
+
readonly protocol: string;
|
|
121
|
+
readonly host: string;
|
|
122
|
+
readonly segments: readonly (string | undefined)[];
|
|
123
|
+
}
|
|
124
|
+
export interface EmseepeaResource {
|
|
125
|
+
readonly [RESOURCE_NAME]: string;
|
|
126
|
+
readonly [RESOURCE_URI]: string;
|
|
127
|
+
readonly [RESOURCE_KIND]: "static" | "template";
|
|
128
|
+
readonly [RESOURCE_MATCHES]?: (uri: string) => boolean;
|
|
129
|
+
readonly [RESOURCE_ROUTE]?: ResourceTemplateRoute;
|
|
130
|
+
readonly [HAS_COMPLETION]: boolean;
|
|
131
|
+
readonly [REGISTER]: (server: McpServer, timeoutMs: number, maxApplicationResultBytes: number) => void;
|
|
132
|
+
}
|
|
133
|
+
type NonStringPromptArgumentKeys<Args extends z.ZodObject> = {
|
|
134
|
+
[Key in keyof z.input<Args>]-?: Exclude<z.input<Args>[Key], undefined> extends string ? never : Key;
|
|
135
|
+
}[keyof z.input<Args>];
|
|
136
|
+
type PromptInputConstraint<Args extends z.ZodObject> = [
|
|
137
|
+
NonStringPromptArgumentKeys<Args>
|
|
138
|
+
] extends [never] ? object : {
|
|
139
|
+
readonly promptArgumentsMustAcceptStrings: never;
|
|
140
|
+
};
|
|
141
|
+
export type PromptDefinition<Args extends z.ZodObject> = {
|
|
142
|
+
readonly name: string;
|
|
143
|
+
readonly title?: string;
|
|
144
|
+
readonly description?: string;
|
|
145
|
+
readonly argsSchema: Args;
|
|
146
|
+
readonly complete?: Readonly<Partial<Record<Extract<keyof z.input<Args>, string>, CompletionHandler>>>;
|
|
147
|
+
readonly handler: (args: z.output<Args>, context: OperationContext) => GetPromptResult | Promise<GetPromptResult>;
|
|
148
|
+
} & PromptInputConstraint<Args>;
|
|
149
|
+
export interface EmseepeaPrompt {
|
|
150
|
+
readonly [PROMPT_NAME]: string;
|
|
151
|
+
readonly [HAS_COMPLETION]: boolean;
|
|
152
|
+
readonly [REGISTER]: (server: McpServer, timeoutMs: number, maxApplicationResultBytes: number) => void;
|
|
153
|
+
}
|
|
154
|
+
export interface OAuthResourceServerOptions {
|
|
155
|
+
readonly verifier: OAuthTokenVerifier;
|
|
156
|
+
readonly metadata: Omit<AuthMetadataOptions, "dangerouslyAllowInsecureIssuerUrl"> & {
|
|
157
|
+
readonly dangerouslyAllowInsecureIssuerUrl?: false;
|
|
158
|
+
};
|
|
159
|
+
readonly verificationTimeoutMs?: number;
|
|
160
|
+
}
|
|
161
|
+
export interface EmseepeaOptions {
|
|
162
|
+
readonly name: string;
|
|
163
|
+
readonly version: string;
|
|
164
|
+
readonly instructions?: string;
|
|
165
|
+
readonly tools?: readonly EmseepeaTool[];
|
|
166
|
+
readonly resources?: readonly EmseepeaResource[];
|
|
167
|
+
readonly prompts?: readonly EmseepeaPrompt[];
|
|
168
|
+
readonly maxRequestBytes?: number;
|
|
169
|
+
readonly maxApplicationResultBytes?: number;
|
|
170
|
+
readonly maxProgressEvents?: number;
|
|
171
|
+
readonly maxProgressEventBytes?: number;
|
|
172
|
+
readonly operationTimeoutMs?: number;
|
|
173
|
+
readonly deployment?: DeploymentProfile;
|
|
174
|
+
readonly oauth?: OAuthResourceServerOptions;
|
|
175
|
+
}
|
|
176
|
+
export type DeploymentProfile = {
|
|
177
|
+
readonly mode: "loopback";
|
|
178
|
+
} | {
|
|
179
|
+
readonly mode: "production-behind-proxy";
|
|
180
|
+
readonly allowedAuthorities: readonly string[];
|
|
181
|
+
readonly allowedOrigins: readonly string[];
|
|
182
|
+
readonly trustedProxyAddresses: readonly string[];
|
|
183
|
+
readonly rateLimit: Readonly<RateLimitOptions>;
|
|
184
|
+
};
|
|
185
|
+
export interface ServeOptions {
|
|
186
|
+
readonly host?: "127.0.0.1" | "::1" | "localhost" | "0.0.0.0" | "::";
|
|
187
|
+
readonly port?: number;
|
|
188
|
+
readonly shutdownTimeoutMs?: number;
|
|
189
|
+
}
|
|
190
|
+
export interface RunningEmseepeaServer {
|
|
191
|
+
readonly url: URL;
|
|
192
|
+
readonly close: () => Promise<void>;
|
|
193
|
+
}
|
|
194
|
+
interface RateLimitOptions {
|
|
195
|
+
maxRequests: number;
|
|
196
|
+
windowMs: number;
|
|
197
|
+
maxClients: number;
|
|
198
|
+
}
|
|
199
|
+
export declare function defineTool<Input extends z.ZodObject, Output extends z.ZodObject>(definition: ToolDefinition<Input, Output>): EmseepeaTool;
|
|
200
|
+
export declare function defineStreamingTool<Input extends z.ZodObject, Output extends z.ZodObject>(definition: StreamingToolDefinition<Input, Output>): EmseepeaTool;
|
|
201
|
+
export declare function defineMappedTool<Input extends z.ZodObject, Output extends z.ZodObject, BackendInput extends z.ZodObject, BackendOutput extends z.ZodObject>(definition: MappedToolDefinition<Input, Output, BackendInput, BackendOutput>): EmseepeaTool;
|
|
202
|
+
export declare function defineResource(definition: ResourceDefinition): EmseepeaResource;
|
|
203
|
+
export declare function defineResourceTemplate(definition: ResourceTemplateDefinition): EmseepeaResource;
|
|
204
|
+
export declare function definePrompt<Args extends z.ZodObject>(definition: PromptDefinition<Args>): EmseepeaPrompt;
|
|
205
|
+
export declare function createEmseepea(options: EmseepeaOptions): FastifyInstance;
|
|
206
|
+
export declare function serveEmseepea(app: FastifyInstance, options?: ServeOptions): Promise<RunningEmseepeaServer>;
|
|
207
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|