MCPcopy Create free account
hub / github.com/chainreactors/EvilProxy / rpcCapabilitiesFromPlugin

Function rpcCapabilitiesFromPlugin

internal/pluginhost/rpc_schema.go:124–151  ·  view source on GitHub ↗
(plugin pluginapi.Plugin)

Source from the content-addressed store, hash-verified

122type rpcEmptyResponse struct{}
123
124func rpcCapabilitiesFromPlugin(plugin pluginapi.Plugin) rpcCapabilities {
125 caps := plugin.Capabilities
126 return rpcCapabilities{
127 ModelRegistrar: caps.ModelRegistrar != nil,
128 ModelProvider: caps.ModelProvider != nil,
129 AuthProvider: caps.AuthProvider != nil,
130 FrontendAuthProvider: caps.FrontendAuthProvider != nil,
131 FrontendAuthProviderExclusive: caps.FrontendAuthProvider != nil && caps.FrontendAuthProviderExclusive,
132 Scheduler: caps.Scheduler != nil,
133 ModelRouter: caps.ModelRouter != nil,
134 Executor: caps.Executor != nil,
135 ExecutorModelScope: normalizedExecutorModelScope(caps),
136 ExecutorInputFormats: append([]string(nil), caps.ExecutorInputFormats...),
137 ExecutorOutputFormats: append([]string(nil), caps.ExecutorOutputFormats...),
138 RequestTranslator: caps.RequestTranslator != nil,
139 RequestNormalizer: caps.RequestNormalizer != nil,
140 RequestInterceptor: caps.RequestInterceptor != nil,
141 ResponseTranslator: caps.ResponseTranslator != nil,
142 ResponseBeforeTranslator: caps.ResponseBeforeTranslator != nil,
143 ResponseAfterTranslator: caps.ResponseAfterTranslator != nil,
144 ResponseInterceptor: caps.ResponseInterceptor != nil,
145 StreamChunkInterceptor: caps.StreamChunkInterceptor != nil,
146 ThinkingApplier: caps.ThinkingApplier != nil,
147 UsagePlugin: caps.UsagePlugin != nil,
148 CommandLinePlugin: caps.CommandLinePlugin != nil,
149 ManagementAPI: caps.ManagementAPI != nil,
150 }
151}
152
153func marshalRPCResult(v any) ([]byte, error) {
154 result, errMarshal := json.Marshal(v)

Calls 1