modelcontextprotocol / modelcontextprotocol/csharp-sdk
How can a server using the SSE (Server-Sent Events) model over HTTP support additional content like images within the conversational context?
Nessuno ha ancora preso questa issue.
- Lingua principale
- C#
- Stelle
- 4.5k
- Fork
- 814
- Merge medio
- 9g 19h
- PR unite (30g)
- 4
Descrizione
[McpServerTool(Name = "ConvertImageFormat")]
[Description("Converts image format")]
public static async Task<string> ConvertImageFormat(
[Description("Base64 encoded image data")] string imageData,
[Description("Target format: jpeg, png, bmp")] string targetFormat)
{
try
{
if (imageData.Contains(","))
{
imageData = imageData.Split(',')[1];
}
byte[] imageBytes = Convert.FromBase64String(imageData);
// Here you can integrate System.Drawing or ImageSharp for format conversion
// For simplicity, this is just simulating the conversion
var convertedBytes = await SimulateImageConversion(imageBytes, targetFormat);
var convertedBase64 = Convert.ToBase64String(convertedBytes);
return $"Image format conversion completed:\n" +
$"- Original size: {imageBytes.Length} bytes\n" +
$"- Converted size: {convertedBytes.Length} bytes\n" +
$"- Target format: {targetFormat}\n" +
$"- Converted base64 data: data:image/{targetFormat};base64,{convertedBase64}";
}
catch (Exception ex)
{
return $"Error: Failed to convert image format - {ex.Message}";
}
}
This approach/way of writing does not successfully call it.
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia riproducendo la chiamata allo strumento ConvertImageFormat tramite la configurazione SSE e HTTP descritta nell’issue, quindi esamina come il server gestisce il contenuto delle immagini nel contesto della conversazione. Il lavoro è completato quando la chiamata allo strumento ha esito positivo e le immagini possono essere supportate insieme alla conversazione; nel report non vengono identificati file sorgente o test.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- csharp
- Ambito
- api, backend
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 25/100