LinkToolAddin/host/McpServerList.cs
2025-05-29 21:01:07 +08:00

61 lines
1.6 KiB
C#

using System.Collections.Generic;
using LinkToolAddin.host.mcp;
namespace LinkToolAddin.host;
public class McpServerList
{
private Dictionary<string,McpServer> servers = new Dictionary<string, McpServer>();
public McpServerList()
{
servers.Add("gaode",new SseMcpServer
{
Name = "gaode",
Type = "sse",
Description = "高德地图API",
IsActive = true,
BaseUrl = "https://mcp.amap.com/sse?key=ed418512c94ade8f83d42c37b77d2bb2",
Headers = new Dictionary<string, string>()
{
{"Content-Type","application/json"}
}
});
servers.Add("ArcGisPro", new InnerMcpServer
{
Name = "ArcGisPro",
Type = "inner",
Description = "可以调用arcgis的地理处理工具或执行python代码等",
IsActive = true
});
servers.Add("KnowledgeBase", new InnerMcpServer
{
Name = "KnowledgeBase",
Type = "inner",
Description = "可以调用进行查询知识库,获取相关参考信息。",
IsActive = true
});
}
public McpServer GetServer(string name)
{
if (servers.ContainsKey(name))
{
return servers[name];
}
else
{
return null;
}
}
public List<McpServer> GetAllServers()
{
List<McpServer> serverList = new List<McpServer>();
foreach (var server in servers)
{
serverList.Add(server.Value);
}
return serverList;
}
}