|
Entropic 2.14.3
Local-first agentic inference engine
|
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. | |
External MCP server configuration (Entropic-as-server).
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).
| 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.
| int entropic::ExternalMCPConfig::rate_limit = 10 |
| 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.
| std::optional<std::filesystem::path> entropic::ExternalMCPConfig::socket_path |
| 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.
| 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.