-
Notifications
You must be signed in to change notification settings - Fork 405
feat(dotnet-sdk): sample with semantic kernel and mcp #70
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
feat(dotnet-sdk): sample with semantic kernel and mcp #70
Conversation
Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). View this failed invocation of the CLA check for more information. For the most up to date status, view the checks section at the bottom of the pull request. |
3fa4f2c
to
faa872b
Compare
Hey @holtskinner, following your comment, I moved the dotnet sample to this repository. I also noticed there is a repository named a2a-python which holds the actual implementation SDK of Google A2A in Python language. Since my pull request contains both the Google A2A dotnet SDK and server sample, and since this is becoming a large pull request, may I kindly ask you to see if there is any possibility to create a repository named a2a-dotnet in the google-a2a organization? This way I can move the actual implementation of the Google A2A dotnet SDK there and keep only the sample here, and then also provide proper continuous integration and GitHub Actions at that repository for proper deployment of NuGet packages. If that is not possible, I can also move the SDK to my personal repository, but personally I would rather do it in the google-a2a organization. Please let me know if I need to do anything in advance to help you with the creation of google-a2a/a2a-dotnet. CC: @koverholt | @Kamyab7 | @moonbox3 | @markwallace-microsoft |
Hey @jeff-nasseri Thanks for doing this work. Was there a reason for including the source in the sample and not using the published nuget package? I have a PR that is almost complete to support 0.2.1 of the protocol and it would make it easier for you to update if you just had the package reference. |
Thank you for your response @darrelmiller . I wasn't aware of any existing C# implementation of google-a2a as a third-party SDK. You mentioned a pull request- could you please provide a link or reference to where I can find it? |
@jeff-nasseri : Hi, I don't see my comment that you refer to about dotnet. Can you provide the link of my comment? |
Sorry my bad!, I was trying to mention @darrelmiller for his comment. |
@jeff-nasseri : no problem! |
This is the official A2A C#/.NET SDK. Could you convert this PR to use the SDK? |
Thanks @holtskinner for the follow up. My hope is I can revise the pull request again and use the official SDK and create a sample here by the end of this coming weekend at the latest. Although I think the existing pull request and the official A2A SDK share the same structure, especially in metadata models, which makes it easier to finalize this pull request. I would be stay in touch with community here |
…ions Implement a new GitHub agent service using Semantic Kernel and Model Context Protocol (MCP) for interacting with GitHub repositories. This includes kernel configuration, agent setup, and MCP client integration.
faa872b
to
38050e3
Compare
Hey @holtskinner, the pull request is ready to review, please let me know if you need anything else from my side |
Add new .NET CLI client application for communicating with agents using the A2A protocol with the following features: - A2A protocol integration with streaming support - Command line interface with multiple modes (A2A, API, interactive) - Push notification support for real-time updates - Session management and history tracking - SSL certificate validation configuration - Structured command handling with System.CommandLine - Logging with Microsoft.Extensions.Logging - Network utilities for URL normalization and HTTP client management The client supports commands for: - Running A2A protocol conversations - Making direct API queries - Getting agent status - Listing available tools - Interactive sessions with mode switching
add server project with A2A integration, controllers, and services for github agent functionality
38050e3
to
11a862f
Compare
The commit adds initial .NET sample project structure integrating A2A protocol with: - Basic solution setup with Server, GitHub Agent, and CLI projects - Solution-wide .gitignore for .NET specific files - IDE settings for consistent development - Project documentation with setup instructions and architecture details - Add .editorconfig for clean coding structure
f63d874
to
81af3c6
Compare
81af3c6
to
b9214dd
Compare
Description
This pull request implements a comprehensive GitHub agent sample using C# and .NET 8, integrating Microsoft Semantic Kernel, Model Context Protocol (MCP), and Google's Agent-to-Agent (A2A) protocol. The solution enables intelligent GitHub repository analysis through natural language queries via both A2A protocol and direct API communication.
Key Implementation
Server Architecture:
Core Integration:
Related Issues
#26
4df70d207bfa4ae2902cbab440a7d254.mp4