Skip to content

Commit 985ba9d

Browse files
author
Jicheng Lu
committed
add mcp http config
1 parent 10c0714 commit 985ba9d

2 files changed

Lines changed: 19 additions & 1 deletion

File tree

src/Infrastructure/BotSharp.Abstraction/MCP/Models/McpServerConfigModel.cs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ public class McpServerConfigModel
2828
public string? Description { get; set; }
2929

3030
public McpSseServerConfig? SseConfig { get; set; }
31+
public McpHttpServerConfig? HttpConfig { get; set; }
3132
public McpStdioServerConfig? StdioConfig { get; set; }
3233
}
3334

@@ -38,6 +39,13 @@ public class McpSseServerConfig
3839
public Dictionary<string, string>? AdditionalHeaders { get; set; }
3940
}
4041

42+
public class McpHttpServerConfig
43+
{
44+
public string EndPoint { get; set; } = null!;
45+
public TimeSpan ConnectionTimeout { get; init; } = TimeSpan.FromSeconds(30);
46+
public Dictionary<string, string>? AdditionalHeaders { get; set; }
47+
}
48+
4149
public class McpStdioServerConfig
4250
{
4351
public string Command { get; set; } = null!;

src/Infrastructure/BotSharp.Core/MCP/Managers/McpClientManager.cs

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,17 @@ public McpClientManager(
2828
}
2929

3030
IClientTransport? transport = null;
31-
if (config.SseConfig != null)
31+
if (config.HttpConfig != null)
32+
{
33+
transport = new HttpClientTransport(new HttpClientTransportOptions
34+
{
35+
Name = config.Name,
36+
Endpoint = new Uri(config.HttpConfig.EndPoint),
37+
AdditionalHeaders = config.HttpConfig.AdditionalHeaders,
38+
ConnectionTimeout = config.HttpConfig.ConnectionTimeout
39+
});
40+
}
41+
else if (config.SseConfig != null)
3242
{
3343
transport = new HttpClientTransport(new HttpClientTransportOptions
3444
{

0 commit comments

Comments
 (0)