AnythingLLM MCP server: add Sume as a streamable server

Add Sume's hosted MCP server to AnythingLLM in anythingllm_mcp_servers.json with type streamable and a key header, then refresh Agent Skills.

5 min readSume
All posts

To add an MCP server to AnythingLLM, add an entry to the mcpServers object in plugins/anythingllm_mcp_servers.json in your AnythingLLM storage directory, then click Refresh on the Agent Skills page. A remote server such as Sume's hosted MCP needs "type": "streamable", the url https://mcp.sume.com/mcp, and your Sume API key in headers. Set type explicitly: without it, AnythingLLM assumes sse.

AnythingLLM's side comes from its MCP overview, MCP on Desktop, MCP on Docker, and Using AI Agents pages; Sume's side comes from MCP OAuth and API keys, MCP tools and gates, and Jobs and results, all read on 2026-09-28. MCP needs AnythingLLM Desktop v1.8.0 or later; on Docker it is self-hosting only, not in AnythingLLM Cloud. Sume has no official AnythingLLM integration: AnythingLLM connects to Sume's remote MCP server like any other, and Sume's basics page says hosted MCP still works but is not part of the primary path today. LM Studio MCP server covers another local-model host.

How do I add Sume to anythingllm_mcp_servers.json?

The file is created for you if it doesn't exist when you open the Agent Skills page. On Docker, the storage directory is the one the STORAGE_LOCATION environment variable names. AnythingLLM's remote example sends an API key in headers, and Sume accepts its key as x-api-key or as Authorization: Bearer, so send one of the two. Add Sume inside mcpServers, next to any servers already there:

{
  "mcpServers": {
    "sume": {
      "type": "streamable",
      "url": "https://mcp.sume.com/mcp",
      "headers": {
        "x-api-key": "<SUME_API_KEY>"
      }
    }
  }
}

How do I check that AnythingLLM loaded Sume?

Click Refresh on the Agent Skills page. AnythingLLM reloads the servers from the file and restarts them, with no restart of the app or container. The same page lists each MCP server with its status, shows an error in the server's card when there is one, and lists the tools of servers that loaded.

MCP servers start when you open Agent Skills or invoke @agent. If the prompt input shows the @ symbol, start an agent session with @agent; if it doesn't, every chat is agentic. /exit ends an agent session. Ask the agent to call mcp_health and tools_list, Sume's read-only discovery tools, before anything that costs money.

Why does type have to be streamable?

AnythingLLM's remote types are sse and streamable; both need url, and if type is missing, sse is assumed. Sume's docs point clients at a streamable HTTP MCP server, and in current code Sume's endpoint answers a GET with 405 and Remote MCP uses POST JSON-RPC requests. Don't leave Sume on the SSE default. MCP SSE vs Streamable HTTP explains the two transports.

Fields from AnythingLLM's MCP overview; Sume values from MCP OAuth and API keys and MCP quickstart, read 2026-09-28.
FieldWhat AnythingLLM's docs sayFor Sume
typesse or streamable; sse is assumed when missingstreamable
urlRequired by both sse and streamablehttps://mcp.sume.com/mcp
headersOptional custom HTTP headersx-api-key, or Authorization with Bearer and the key
anythingllm.autoStartfalse stops the server from starting automaticallyOptional

What should I know before relying on it?

  • An API-key session sees Sume's full hosted tool set, paid tools included, and spend resolves to the key's workspace. AnythingLLM's MCP pages describe no confirmation step before an MCP tool runs.
  • Sume's paid tools need an idempotency_key; dry_run=true previews admission and cost without submitting; max_spend_usd caps a call only when it is sent. The model writes those arguments itself.
  • The key sits in the JSON file as plain text. Keep the file private, and rotate the key if it appears in logs or chat history.
  • AnythingLLM loads MCP tools, not resources, prompts, or sampling. That suits Sume: its current server declares only tools.
  • One jobs_wait call holds at most 55 seconds. For a longer render the agent should call it again with the same ids and never resubmit the paid create.
  • If the model never calls Sume, AnythingLLM says to confirm the server is running with its tools listed, then look at the model, especially a small local model with a limited context window.

Sources

Related posts

More in Integrations

All Integrations posts

Written by Sume