Entropic 2.14.3
Local-first agentic inference engine
Loading...
Searching...
No Matches
entropic::ExternalMCPConfig Struct Reference

External MCP server configuration (Entropic-as-server). More...

#include <entropic/types/config.h>

Public Attributes

bool enabled = false
 Enable external MCP.
 
std::optional< std::filesystem::path > socket_path
 Socket path (nullopt = derived)
 
int rate_limit = 10
 NOT ENFORCED.
 
bool ask_streaming = true
 Route entropic.ask through entropic_run (false) or entropic_run_streaming (true, default).
 
int http_port = 0
 Also serve the bridge over Streamable HTTP on 127.0.0.1:<port> (gh#204, v2.14.0).
 
std::string tool_prefix = "entropic"
 Namespace for the tools this bridge advertises (gh#145).
 
std::string server_name = "entropic"
 serverInfo.name reported in the MCP initialize response (gh#145).
 
std::unordered_map< std::string, std::string > tool_descriptions
 Optional per-tool description overrides, keyed by bare suffix ("ask", "status", "context_clear", ...) — gh#145.
 

Detailed Description

External MCP server configuration (Entropic-as-server).

Version
2.12.0

Definition at line 856 of file config.h.

Member Data Documentation

◆ ask_streaming

bool entropic::ExternalMCPConfig::ask_streaming = true

Route entropic.ask through entropic_run (false) or entropic_run_streaming (true, default).

Set false when MTP is active — streaming binds on_token and trips the MTP incompatibility guard (gh#115, v2.9.12).

Definition at line 867 of file config.h.

◆ enabled

bool entropic::ExternalMCPConfig::enabled = false

Enable external MCP.

Definition at line 857 of file config.h.

◆ http_port

int entropic::ExternalMCPConfig::http_port = 0

Also serve the bridge over Streamable HTTP on 127.0.0.1:<port> (gh#204, v2.14.0).

0 (default) = unix socket only.

One URL for every MCP client, instead of a host per client. Loopback only; clients authenticate with the bearer token written to ~/.entropic/serve/<port>.token (mode 0600) on each start. For remote use, tunnel with ssh -L <port>:127.0.0.1:<port> host. If the port cannot be served, configure fails with ENTROPIC_ERROR_IO.

Definition at line 877 of file config.h.

◆ rate_limit

int entropic::ExternalMCPConfig::rate_limit = 10

NOT ENFORCED.

Parsed since the bridge shipped and read by nothing; the bridge logs a warning at start when it is set to anything but the default (v2.14.0). Kept only so existing configs still load — enforcing it now at 10/min would throttle every consumer.

Definition at line 863 of file config.h.

◆ server_name

std::string entropic::ExternalMCPConfig::server_name = "entropic"

serverInfo.name reported in the MCP initialize response (gh#145).

Independent of tool_prefix on purpose: the tool namespace is what a MODEL reasons over when choosing a tool, while this is what a PERSON reads in their MCP server list. A consumer may legitimately want to namespace its tools while still disclosing which engine is behind the bridge, or vice versa.

Version
2.12.0

Definition at line 897 of file config.h.

◆ socket_path

std::optional<std::filesystem::path> entropic::ExternalMCPConfig::socket_path

Socket path (nullopt = derived)

Definition at line 858 of file config.h.

◆ tool_descriptions

std::unordered_map<std::string, std::string> entropic::ExternalMCPConfig::tool_descriptions

Optional per-tool description overrides, keyed by bare suffix ("ask", "status", "context_clear", ...) — gh#145.

A tool description is the string a model actually reasons over when deciding what to call. The stock text describes the TRANSPORT ("Submit a prompt to the running entropic engine") rather than the capability, so a host with one specific job cannot express it. An absent or unknown key leaves the built-in description untouched.

Version
2.12.0

Definition at line 908 of file config.h.

◆ tool_prefix

std::string entropic::ExternalMCPConfig::tool_prefix = "entropic"

Namespace for the tools this bridge advertises (gh#145).

The engine is a substrate, not the product: librentropic.so is deliberately consumable by more than one app, so the tools a given host exposes are that HOST's identity. Default "entropic" reproduces the pre-2.12.0 names exactly, so an unset config is bit-identical. A prefix of "sumac" advertises sumac.ask, sumac.status, and so on.

Version
2.12.0

Definition at line 887 of file config.h.


The documentation for this struct was generated from the following file: