Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 4 additions & 5 deletions java/dev/enola/ai/mcp/McpLoader.java
Original file line number Diff line number Diff line change
Expand Up @@ -112,10 +112,11 @@ public static McpClientTransport createTransport(
private static McpSyncClient createSyncClient(McpServerConnectionsConfig config, String name) {
var origin = config.origin + "#" + name;
var transport = createTransport(config, name);
return createSyncClient(transport, origin);
return createSyncClient(transport, config.servers.get(name).log, origin);
}

private static McpSyncClient createSyncClient(McpClientTransport transport, String origin) {
private static McpSyncClient createSyncClient(
McpClientTransport transport, McpSchema.LoggingLevel log, String origin) {
var implementation = new McpSchema.Implementation("https://Enola.dev", Version.get());
var client =
McpClient.sync(transport)
Expand All @@ -129,9 +130,7 @@ private static McpSyncClient createSyncClient(McpClientTransport transport, Stri
client.initialize();

// To avoid "Method not found", check logging capability before setting it
if (client.getServerCapabilities().logging() != null)
// TODO Ideally this should be passed through from the CLI's -vv Logging config...
client.setLoggingLevel(McpSchema.LoggingLevel.INFO);
if (client.getServerCapabilities().logging() != null) client.setLoggingLevel(log);

client.ping();
var serverInfo = client.getServerInfo();
Expand Down
4 changes: 4 additions & 0 deletions java/dev/enola/ai/mcp/McpServerConnectionsConfig.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@

import dev.enola.common.io.object.WithSchema;

import io.modelcontextprotocol.spec.McpSchema;

import java.net.URI;
import java.time.Duration;
import java.util.ArrayList;
Expand Down Expand Up @@ -72,6 +74,8 @@ public enum Type {
public String url;
public final Map<String, String> headers = new HashMap<>();
public Duration timeout;

public McpSchema.LoggingLevel log = McpSchema.LoggingLevel.WARNING;
}

public static class Input {
Expand Down
Loading