a2aproject / a2aproject/a2a-python

[Feat]: Support adding new RPC methods to a JSON-RPC server application

Open
#584 1 comment 0 reactions 1 assignee Claimed by @lkawka View on GitHub
Dominant language
Python
Stars
2.1k
Forks
496
Avg merge
4d 17h
Merged PRs (30d)
12

Description

### Is your feature request related to a problem? Please describe.

The spec for [extensions](https://a2a-protocol.org/latest/topics/extensions) defines 3 types of extensions, the last one is: _"Method Extensions (Extended Skills): Adding entirely new RPC methods beyond the core set defined by the protocol"_
As far as I understand, there is currently no way for enhancing my `A2AStarletteApplication`/`A2AFastAPIApplication` application with new RPC methods. (as they both extends `JSONRPCApplication` and it uses a fixed list of the core RPC methods that cant be extended)

### Describe the solution you'd like

I would like `JSONRPCApplication` to allow its users to hook new JSON-RPC methods.

### Describe alternatives you've considered

I'm considering using the HTTP/REST protocol instead of the JSON-RPC protocol just because its easier to extend with new methods.

### Additional context

_No response_

### Code of Conduct

- [x] I agree to follow this project's Code of Conduct

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.