(id: string, opts: { transport?: boolean; server?: boolean } = {})
| 169 | }; |
| 170 | |
| 171 | const dispose = async (id: string, opts: { transport?: boolean; server?: boolean } = {}) => { |
| 172 | const t = transports.get(id); |
| 173 | const s = servers.get(id); |
| 174 | const close = sessionClosers.get(id); |
| 175 | transports.delete(id); |
| 176 | servers.delete(id); |
| 177 | resources.delete(id); |
| 178 | sessionEngines.delete(id); |
| 179 | sessionClosers.delete(id); |
| 180 | if (opts.transport) await ignoreClose(t ? () => t.close() : undefined); |
| 181 | if (opts.server) await ignoreClose(s ? () => s.close() : undefined); |
| 182 | await ignoreClose(close); |
| 183 | }; |
| 184 | |
| 185 | const modernHandlerFor = (resource: McpResource): McpHttpHandler => { |
| 186 | const key = mcpResourceKey(resource); |
no test coverage detected