Packages

Gleam library for building Model Context Protocol servers and transports

Current section

Files

Jump to
mcp_toolkit src mcp_ffi.erl
Raw

src/mcp_ffi.erl

-module(mcp_ffi).
-export([read_line/0, input_schema_to_json/1]).
-spec read_line() -> {ok, unicode:unicode_binary()} | {error, eof | no_data}.
read_line() ->
case io:get_line("") of
eof ->
{error, eof};
{error, _} ->
{error, no_data};
Data when is_binary(Data) ->
{ok, string:trim(Data, trailing, "\r\n")};
Data when is_list(Data) ->
{ok,
string:trim(
unicode:characters_to_binary(Data), trailing, "\r\n")}
end.
input_schema_to_json(Schema) ->
json:encode(Schema).