MCPcopy Index your code
hub / github.com/arteam/simple-json-rpc

github.com/arteam/simple-json-rpc @simple-json-rpc-1.3

Chat with this repo
repository ↗ · DeepWiki ↗ · release simple-json-rpc-1.3 ↗ · + Follow
478 symbols 1,767 edges 80 files 125 documented · 26%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Simple JSON-RPC Maven Central ===================

Library for a simple integration of the JSON-RPC 2.0 protocol to a Java application.

The goal is to provide a simple, fast and reliable way to integrate JSON-RPC 2.0 into a Java application on the server and/or the client side. You need to configure either JsonRpcClient or JsonRpcServer and implement transport code: the library takes care of the rest. No manual JSON transformation, reflection and manual error handling: just a service interface with annotations. Even this is not a requirement: there is a fluent API on the client side if you prefer builder-style APIs. The library is a JSON-RPC 2.0 compliant implementation, so it should support handle all kind of JSON-RPC requests (correct or malformed). It doesn't depend on any transport protocol, an application server, or a DI framework.

The library has a few dependencies:

  • Jackson, which is great for JSON parsing and data-binding;
  • Guava, which is great for caching and optional values (needed only for the server side)
  • SL4J, which is the standard for logging (needed only for server)
  • IntelliJ Annotations, which is great for providing compiler-time null checks.

Submodules

Extension points exported contracts — how you extend this code

IdGenerator (Interface)
Date: 24.08.14 Time: 18:12 A strategy for the generation of request ids [8 implementers]
client/src/main/java/com/github/arteam/simplejsonrpc/client/generator/IdGenerator.java
ErrorDataResolver (Interface)
(no doc)
server/src/main/java/com/github/arteam/simplejsonrpc/server/metadata/ErrorDataResolver.java
TeamService (Interface)
Date: 24.08.14 Time: 18:02
client/src/test/java/com/github/arteam/simplejsonrpc/client/object/TeamService.java
BaseService (Interface)
Date: 11/17/14 Time: 9:59 PM
client/src/test/java/com/github/arteam/simplejsonrpc/client/object/BaseService.java
Transport (Interface)
Date: 8/9/14 Time: 8:52 PM Abstract transport for JSON-RPC communication
client/src/main/java/com/github/arteam/simplejsonrpc/client/Transport.java
MethodIsNotAnnotatedService (Interface)
(no doc) [1 implementers]
client/src/test/java/com/github/arteam/simplejsonrpc/client/JsonRpcObjectAPITest.java

Core symbols most depended-on inside this repo

add
called by 99
client/src/test/java/com/github/arteam/simplejsonrpc/client/object/TeamService.java
get
called by 72
server/src/main/java/com/github/arteam/simplejsonrpc/server/JsonRpcServer.java
execute
called by 50
client/src/main/java/com/github/arteam/simplejsonrpc/client/builder/RequestBuilder.java
handle
called by 40
server/src/main/java/com/github/arteam/simplejsonrpc/server/JsonRpcServer.java
returnType
called by 26
client/src/main/java/com/github/arteam/simplejsonrpc/client/builder/BatchRequestBuilder.java
method
called by 25
client/src/main/java/com/github/arteam/simplejsonrpc/client/builder/RequestBuilder.java
createRequest
called by 24
client/src/main/java/com/github/arteam/simplejsonrpc/client/JsonRpcClient.java
createBatchRequest
called by 24
client/src/main/java/com/github/arteam/simplejsonrpc/client/JsonRpcClient.java

Shape

Method 401
Class 65
Interface 9
Enum 3

Languages

Java100%

Modules by API surface

server/src/test/java/com/github/arteam/simplejsonrpc/server/simple/JsonRpcErrorsTest.java42 symbols
server/src/test/java/com/github/arteam/simplejsonrpc/server/simple/service/TeamService.java24 symbols
client/src/test/java/com/github/arteam/simplejsonrpc/client/JsonRpcObjectAPITest.java24 symbols
client/src/test/java/com/github/arteam/simplejsonrpc/client/BatchRequestBuilderTest.java19 symbols
server/src/test/java/com/github/arteam/simplejsonrpc/server/simple/JsonRpcServiceTest.java18 symbols
server/src/test/java/com/github/arteam/simplejsonrpc/server/spec/SpecTest.java17 symbols
server/src/main/java/com/github/arteam/simplejsonrpc/server/JsonRpcServer.java17 symbols
client/src/test/java/com/github/arteam/simplejsonrpc/client/builder/BatchRequestBuilderErrorsTest.java17 symbols
client/src/test/java/com/github/arteam/simplejsonrpc/client/JsonRpcClientTest.java16 symbols
client/src/main/java/com/github/arteam/simplejsonrpc/client/builder/RequestBuilder.java16 symbols
client/src/main/java/com/github/arteam/simplejsonrpc/client/builder/BatchRequestBuilder.java15 symbols
client/src/test/java/com/github/arteam/simplejsonrpc/client/object/TeamService.java11 symbols

For agents

$ claude mcp add simple-json-rpc \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page