namespace McpStudy.McpServerSSE; public class Program { public static void Main(string[] args) { var builder = WebApplication.CreateBuilder(args); // Add services to the container. builder.Services.AddControllers(); // Learn more about configuring OpenAPI at https://aka.ms/aspnet/openapi builder.Services.AddOpenApi(); builder.Services .AddMcpServer() .WithHttpTransport() .WithToolsFromAssembly(typeof(McpStudy.Core.TimeTools).Assembly) .WithToolsFromAssembly(typeof(McpStudy.McpServerSSE.Program).Assembly); var app = builder.Build(); // Configure the HTTP request pipeline. app.MapOpenApi(); app.UseSwaggerUI(options => { options.SwaggerEndpoint("/openapi/v1.json", "v1"); }); app.UseAuthorization(); app.MapControllers(); //配置启动地址(支持子站点):自定义中间件+重定向 //只能用中间件,不能用路由(app.Map): / 和 "" 会优先被app.MapMcp处理 app.Use(async (context, next) => { if (context.Request.Path == "/" || context.Request.Path == "") { context.Response.ContentType = "text/html"; await context.Response.SendFileAsync(Path.Combine(app.Environment.ContentRootPath, "index.html")); } else { await next(); } }); app.MapMcp(); app.Run(); } }