docs: rewrite JsonRpcBundle docs, add SDK docs, move them under docs/api
en/docs/api/json-rpc-bundle/developers/extensions.md
new file +30
−0
1
+
# Extensions
2
+
3
+
Packages that extend JsonRpcBundle: new ways of delivering requests, clients and shared libraries. How to write your own extension is described on the [For developers](/docs/api/json-rpc-bundle/developers) page.
4
+
5
+
## Server-side
6
+
7
+
| Package | Description |
8
+
| --- | --- |
9
+
| [MCP Bundle](/docs/api/mcp-bundle) (`ufo-tech/mcp-bundle`) | Exposes JSON-RPC methods as MCP tools for AI agents (Claude Code, Cursor, Gemini CLI, OpenAI) over Streamable HTTP. One MCP endpoint per API group; generates connection manifests for clients |
10
+
| [REST Bundle](/docs/api/rest-bundle) (`ufo-tech/rest-bundle`) | A REST API on top of existing RPC procedures, only for the methods you need: routes, access control, OpenAPI and Postman documentation |
11
+
| [RPC Mercure Transport](/docs/api/rpc-mercure-transport) (`ufo-tech/rpc-mercure-transport`) | Transport via Mercure Hub: publishes RPC requests and events for other services over SSE without a queue broker; console consumer `ufo:rpc:socket:consume` |
12
+
13
+
## Client-side
14
+
15
+
| Package | Description |
16
+
| --- | --- |
17
+
| [JSON-RPC Client SDK](/docs/api/sdk/client) (`ufo-tech/json-rpc-client-sdk`) | Generates a client SDK (procedure classes and DTOs) from any JSON-RPC server; extended support for JsonRpcBundle servers (special `$rpc` parameters, DTO responses) |
18
+
| [JSON-RPC SDK Bundle](/docs/api/sdk/bundle) (`ufo-tech/json-rpc-sdk-bundle`) | Client SDK integration into Symfony: SDK generation commands and autowiring of generated procedures |
19
+
| [RPC TS SDK](/docs/api/sdk/ts) (`@ufotech/rpc-ts-sdk`) | Generates TypeScript interfaces from OpenRPC document schemas |
20
+
| [SDK async transports](/docs/api/sdk/client/async) (`ufo-tech/component-transport-contracts`, `ufo-tech/component-transport-amqp`) | Contracts and an AMQP implementation of asynchronous calls for the Client SDK on Symfony Messenger |
21
+
22
+
## Shared libraries
23
+
24
+
Packages the core and clients are built on; you do not need to install them separately.
25
+
26
+
| Package | Description |
27
+
| --- | --- |
28
+
| `ufo-tech/rpc-objects` | JSON-RPC objects (request, notification, batch, response, error), RPC attributes (`#[RPC\Info]`, `#[RPC\Cache]`, etc.), special `$rpc` parameters |
29
+
| `ufo-tech/rpc-exceptions` | Exceptions bound to JSON-RPC error codes, and conversion of a code to an exception |
30
+
| `ufo-tech/dto-transformer` | Conversion of arrays to DTOs and back, type detection from PHP and PHPDoc |