adk_mcp_server (erlang_adk v0.7.0)

View Source

Bounded MCP 2025-11-25 Streamable HTTP server.

The server deliberately implements JSON responses to POST and returns 405 for the optional GET/SSE channel. Tool/resource/prompt work runs in monitored lightweight processes behind a global concurrency and deadline bound.

Summary

Functions

code_change(OldVersion, State, Extra)

delete_session(Server, Session, Version)

-spec delete_session(pid(), undefined | binary(), undefined | binary()) -> ok | {error, term()}.

delete_session(Server, Session, Version, AuthContext)

-spec delete_session(pid(), undefined | binary(), undefined | binary(), legacy | map()) ->
                        ok | {error, term()}.

endpoint(Server)

-spec endpoint(pid()) -> {ok, map()} | {error, term()}.

format_status(Status)

handle_call(Request, From, State)

handle_cast(Message, State)

handle_http(Server, Session, Version, Message, Timeout)

-spec handle_http(pid(), undefined | binary(), undefined | binary(), map(), timeout()) -> term().

handle_http(Server, Session, Version, Message, AuthContext, Timeout)

-spec handle_http(pid(), undefined | binary(), undefined | binary(), map(), legacy | map(), timeout()) ->
                     term().

handle_info(Info, State)

init(Config0)

register_prompt(Server, Prompt)

-spec register_prompt(pid(), map()) -> ok | {error, term()}.

register_resource(Server, Resource)

-spec register_resource(pid(), map()) -> ok | {error, term()}.

register_tool(Server, Tool)

-spec register_tool(pid(), module() | map()) -> ok | {error, term()}.

start(Transport, Config)

-spec start(binary(), map() | [module()]) -> {ok, pid()} | {error, term()}.

start_link(Config)

-spec start_link(map()) -> gen_server:start_ret().

stop(Server)

-spec stop(pid()) -> ok.

terminate(Reason, State)