[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6J19Q9RBHAB6CQ7ASNRA1VR":3,"skill-same:01M6J19Q9RBHAB6CQ7ASNRA1VR":78},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":26,"publishedAt":43,"linkOnly":44,"markdownContent":45,"markdownBody":46,"frontMatter":47,"refName":48,"commitSha":49,"skillDirectory":50,"forksCount":51,"repositoryHtmlUrl":52,"repositoryHomepageUrl":53,"ownerHtmlUrl":54,"ownerBlogUrl":55,"ownerDescription":56,"updatedAt":57,"install":58,"resources":71},"01M6J19Q9RBHAB6CQ7ASNRA1VR","liter-llm-using-the-mcp-server",null,"Use when calling LLM APIs through the liter-llm MCP server's 22 tools, and to decide when MCP beats the CLI or SDK. Covers the tool surface, the auto-installing launcher, and authentication.","xberg-io\u002Fliter-llm","xberg-io","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F241328462?v=4","01M6BYYMACFMK5WNT338Y71K58","Xberg.io","01M6J160RA8VS7XVE01W9305F3",266,"MIT","https:\u002F\u002Fgithub.com\u002Fxberg-io\u002Fliter-llm\u002Fblob\u002Fmain\u002Fplugin\u002F.hermes\u002Fplugins\u002Fliter-llm\u002Fskills\u002Fliter-llm-using-the-mcp-server\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",[27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42],"MCP","mcp server","server","liter llm using the mcp server","liter llm","cli","sdk","authentication","Tools","tool","decide","use","auto","launcher","calling","when","2026-11-10 10:12:30",false,"---\ndescription: Use when calling LLM APIs through the liter-llm MCP server's 22 tools, and to decide when MCP beats the CLI or SDK. Covers the tool surface, the auto-installing launcher, and authentication.\nname: liter-llm-using-the-mcp-server\n---\n\n\u003C!--\nAI-RULEZ :: GENERATED FILE — DO NOT EDIT\nContent-Hash: blake3:6925dd58f9790a1cc57f093167cf3b430886393ff3792d28003f15269b5546a2\nSource-Hash: blake3:725e6663621cbc5ffbaf9dbb2141fe5f9b95aee234fe9f7ece2d2b6e63dc5a66\nSchema-Version: v1\n-->\n\n# Using the MCP Server\n\nThe `liter-llm` MCP server exposes 22 tools that mirror the proxy's REST\nendpoints, so an MCP-compatible client (Claude Code, Claude Desktop) can call\n174 LLM providers as tools with no glue code.\n\n## Standalone skill installation\n\nInstalling this skill alone does not register an MCP server or include the plugin launcher.\nInstall the CLI (for example, `brew install xberg-io\u002Ftap\u002Fliter-llm`), then configure your MCP client with\n`liter-llm mcp --transport stdio` as its stdio command. The full product plugin supplies registration where\nthe runtime supports MCP.\n\n## How it runs in this plugin\n\nThe plugin auto-registers the server. Its command is the bundled launcher\n`scripts\u002Fmcp-launch.sh`, which execs `liter-llm mcp --transport stdio`. On first\nrun the launcher resolves a `liter-llm` binary: it reuses one on `PATH`, then\ntries `npx`\u002F`uvx`, then Homebrew, then downloads a prebuilt\nfrom the tool's latest GitHub release. Override with\n`LITER_LLM_LAUNCHER=auto|npx|uvx|brew|download`.\n\nTo run it manually:\n\n```bash\nliter-llm mcp --transport stdio          # for Claude Code \u002F Claude Desktop\nliter-llm mcp --transport http --port 3001\n```\n\n## Configure model routing\n\nProvider-backed tools use the proxy model registry. Create `liter-llm-proxy.toml` in the\nworking directory, or pass `--config \u002Fabsolute\u002Fpath\u002Fliter-llm-proxy.toml` when launching:\n\n```toml\n[[models]]\nname = \"gpt-4o\"\nprovider_model = \"openai\u002Fgpt-4o\"\n```\n\nSupply `OPENAI_API_KEY` in the MCP process environment, then call `chat` using the\nconfigured name `gpt-4o`. `list_models` shows configured names; an unknown model is a\nrequest error. Missing credentials are also reported on provider-backed requests.\nGemini filters host credentials: install with `--skip-settings` and configure the selected\nprovider through `gemini extensions config liter-llm \"OpenAI key\"`. Local stdio does not\nneed a separate proxy virtual key.\n\n## The 22 tools\n\nModality tools: `chat`, `embed`, `generate_image`, `speech`, `transcribe`,\n`moderate`, `rerank`, `search`, `ocr`.\n\nModel listing: `list_models`.\n\nFile operations: `create_file`, `list_files`, `retrieve_file`, `delete_file`,\n`file_content`.\n\nBatch operations: `create_batch`, `list_batches`, `retrieve_batch`,\n`cancel_batch`.\n\nResponses API: `create_response`, `retrieve_response`, `cancel_response`.\n\n## Authentication\n\nLocal stdio trusts the invoking local client by default, so the registered command starts\nwithout extra proxy authentication configuration. Provider API keys still come from environment\nvariables and are needed for provider-backed requests.\n\nTo apply a restricted virtual key, configure `mcp.stdio_key_id`; an unknown key fails startup.\nSet `mcp.stdio_trust_local = false` to require an explicit virtual key. HTTP transport retains\nits authentication policy; the local stdio default does not disable HTTP authorization.\n\n## When to prefer MCP over the CLI or SDK\n\n- **Prefer MCP** inside an agent session: the agent invokes tools directly, with\n  no code to write or process to manage.\n- **Prefer the SDK** when building application software in a specific language.\n- **Prefer the proxy** when many apps or teams need a shared OpenAI-compatible\n  endpoint with keys, budgets, and rate limits.\n","\u003C!--\nAI-RULEZ :: GENERATED FILE — DO NOT EDIT\nContent-Hash: blake3:6925dd58f9790a1cc57f093167cf3b430886393ff3792d28003f15269b5546a2\nSource-Hash: blake3:725e6663621cbc5ffbaf9dbb2141fe5f9b95aee234fe9f7ece2d2b6e63dc5a66\nSchema-Version: v1\n-->\n\n# Using the MCP Server\n\nThe `liter-llm` MCP server exposes 22 tools that mirror the proxy's REST\nendpoints, so an MCP-compatible client (Claude Code, Claude Desktop) can call\n174 LLM providers as tools with no glue code.\n\n## Standalone skill installation\n\nInstalling this skill alone does not register an MCP server or include the plugin launcher.\nInstall the CLI (for example, `brew install xberg-io\u002Ftap\u002Fliter-llm`), then configure your MCP client with\n`liter-llm mcp --transport stdio` as its stdio command. The full product plugin supplies registration where\nthe runtime supports MCP.\n\n## How it runs in this plugin\n\nThe plugin auto-registers the server. Its command is the bundled launcher\n`scripts\u002Fmcp-launch.sh`, which execs `liter-llm mcp --transport stdio`. On first\nrun the launcher resolves a `liter-llm` binary: it reuses one on `PATH`, then\ntries `npx`\u002F`uvx`, then Homebrew, then downloads a prebuilt\nfrom the tool's latest GitHub release. Override with\n`LITER_LLM_LAUNCHER=auto|npx|uvx|brew|download`.\n\nTo run it manually:\n\n```bash\nliter-llm mcp --transport stdio          # for Claude Code \u002F Claude Desktop\nliter-llm mcp --transport http --port 3001\n```\n\n## Configure model routing\n\nProvider-backed tools use the proxy model registry. Create `liter-llm-proxy.toml` in the\nworking directory, or pass `--config \u002Fabsolute\u002Fpath\u002Fliter-llm-proxy.toml` when launching:\n\n```toml\n[[models]]\nname = \"gpt-4o\"\nprovider_model = \"openai\u002Fgpt-4o\"\n```\n\nSupply `OPENAI_API_KEY` in the MCP process environment, then call `chat` using the\nconfigured name `gpt-4o`. `list_models` shows configured names; an unknown model is a\nrequest error. Missing credentials are also reported on provider-backed requests.\nGemini filters host credentials: install with `--skip-settings` and configure the selected\nprovider through `gemini extensions config liter-llm \"OpenAI key\"`. Local stdio does not\nneed a separate proxy virtual key.\n\n## The 22 tools\n\nModality tools: `chat`, `embed`, `generate_image`, `speech`, `transcribe`,\n`moderate`, `rerank`, `search`, `ocr`.\n\nModel listing: `list_models`.\n\nFile operations: `create_file`, `list_files`, `retrieve_file`, `delete_file`,\n`file_content`.\n\nBatch operations: `create_batch`, `list_batches`, `retrieve_batch`,\n`cancel_batch`.\n\nResponses API: `create_response`, `retrieve_response`, `cancel_response`.\n\n## Authentication\n\nLocal stdio trusts the invoking local client by default, so the registered command starts\nwithout extra proxy authentication configuration. Provider API keys still come from environment\nvariables and are needed for provider-backed requests.\n\nTo apply a restricted virtual key, configure `mcp.stdio_key_id`; an unknown key fails startup.\nSet `mcp.stdio_trust_local = false` to require an explicit virtual key. HTTP transport retains\nits authentication policy; the local stdio default does not disable HTTP authorization.\n\n## When to prefer MCP over the CLI or SDK\n\n- **Prefer MCP** inside an agent session: the agent invokes tools directly, with\n  no code to write or process to manage.\n- **Prefer the SDK** when building application software in a specific language.\n- **Prefer the proxy** when many apps or teams need a shared OpenAI-compatible\n  endpoint with keys, budgets, and rate limits.\n",{"name":5,"description":7},"main","2bc4403def694d18143810aa54dc8522a45705ca","plugin\u002F.hermes\u002Fplugins\u002Fliter-llm\u002Fskills\u002Fliter-llm-using-the-mcp-server",27,"https:\u002F\u002Fgithub.com\u002Fxberg-io\u002Fliter-llm","https:\u002F\u002Fdocs.liter-llm.xberg.io","https:\u002F\u002Fgithub.com\u002Fxberg-io","https:\u002F\u002Fxberg.io","Open-source content intelligence with a Rust core: documents, web, LLMs and code, with native bindings for every major language.","2026-11-13 21:14:04",{"source":8,"skillName":5,"commands":59,"prompt":69,"zipAvailable":70},[60,63,66],{"tool":61,"command":62},"npx","npx skills add xberg-io\u002Fliter-llm --skill liter-llm-using-the-mcp-server",{"tool":64,"command":65},"bunx","bunx skills add xberg-io\u002Fliter-llm --skill liter-llm-using-the-mcp-server",{"tool":67,"command":68},"pnpm","pnpm dlx skills add xberg-io\u002Fliter-llm --skill liter-llm-using-the-mcp-server","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fxberg-io\u002Fliter-llm\u002Fblob\u002Fmain\u002Fplugin\u002F.hermes\u002Fplugins\u002Fliter-llm\u002Fskills\u002Fliter-llm-using-the-mcp-server\u002FSKILL.md",true,[72],{"path":73,"resourceType":74,"resourceTypeDesc":75,"sizeBytes":76,"sourceHtmlUrl":77},"index.md","REFERENCE","参考文档",483,"https:\u002F\u002Fgithub.com\u002Fxberg-io\u002Fliter-llm\u002Fblob\u002Fmain\u002Fplugin\u002F.hermes\u002Fplugins\u002Fliter-llm\u002Fskills\u002Fliter-llm-using-the-mcp-server\u002Findex.md",[79,108,115,133,150,173],{"skillNo":80,"name":81,"nameZh":6,"description":82,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":83,"categories":84,"keywords":92,"publishedAt":43},"01M6J1DRP0968S21HH1C4HR9RK","liter-llm","Universal LLM API client for 174 providers with native bindings for 14 languages. Use when writing code that calls LLM APIs via liter-llm in Python, TypeScript, Rust, Go, Java, C#, Ruby, PHP, Elixir, WASM, or C, when running the OpenAI-compatible proxy, or when calling LLMs through the MCP server. Covers chat, streaming, tool calling, embeddings, image generation, speech, transcription, moderation, web search, OCR, reranking, provider routing, middleware, and configuration.","https:\u002F\u002Fgithub.com\u002Fxberg-io\u002Fliter-llm\u002Fblob\u002Fmain\u002Fskills\u002Fliter-llm\u002FSKILL.md",[85,86,87],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":88,"categoryName":89,"taxonomyType":90,"taxonomyTypeDesc":91},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[31,93,94,95,96,97,98,27,99,100,28,101,102,103,104,105,29,106,107,42],"ocr","web search","search","rust","middleware","ruby","writing","image","code","api","io","streaming","llms","native","elixir",{"skillNo":109,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":110,"categories":111,"keywords":114,"publishedAt":43},"01M6J1DK94H9KDPW62F1E96VRR","https:\u002F\u002Fgithub.com\u002Fxberg-io\u002Fliter-llm\u002Fblob\u002Fmain\u002Fskills\u002Fliter-llm-using-the-mcp-server\u002FSKILL.md",[112,113],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},[27,28,30,29,31,40,37,34,36,41,39,38,32,33,35,42],{"skillNo":116,"name":117,"nameZh":6,"description":118,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":119,"categories":120,"keywords":121,"publishedAt":43},"01M6J1DEEPNVQ3E5CX5ZF69416","liter-llm-tool-calling","Use when defining functions\u002Ftools for an LLM to call through liter-llm, or requesting structured JSON outputs. Covers tool schemas, tool_calls handling, and response formats.","https:\u002F\u002Fgithub.com\u002Fxberg-io\u002Fliter-llm\u002Fblob\u002Fmain\u002Fskills\u002Fliter-llm-tool-calling\u002FSKILL.md",[],[122,36,41,123,31,124,125,126,127,38,128,129,130,35,131,132,42],"tool calling","liter llm tool calling","llm tool","for","calls","call","functions","json","formats","structured","outputs",{"skillNo":134,"name":135,"nameZh":6,"description":136,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":137,"categories":138,"keywords":139,"publishedAt":43},"01M6J1DBN4XD93NN04WA8ZP75H","liter-llm-streaming-responses","Use when streaming tokens incrementally from an LLM via liter-llm over SSE or async iterators. Covers chat_stream, delta handling, and null-content chunks.","https:\u002F\u002Fgithub.com\u002Fxberg-io\u002Fliter-llm\u002Fblob\u002Fmain\u002Fskills\u002Fliter-llm-streaming-responses\u002FSKILL.md",[],[140,31,104,141,142,143,144,145,38,146,147,148,149,42],"liter llm streaming responses","chat","delta","via","tokens","async","content","sse","chunks","stream",{"skillNo":151,"name":152,"nameZh":6,"description":153,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":154,"categories":155,"keywords":156,"publishedAt":43},"01M6J1D76FTYTKSPWNNRVZ2PX3","liter-llm-running-the-proxy","Use when running the `liter-llm api` OpenAI-compatible gateway — virtual keys, per-key rate limits, budgets, cost tracking, and model routing. Covers the TOML config and the 22 REST endpoints.","https:\u002F\u002Fgithub.com\u002Fxberg-io\u002Fliter-llm\u002Fblob\u002Fmain\u002Fskills\u002Fliter-llm-running-the-proxy\u002FSKILL.md",[],[157,158,31,159,160,161,162,163,164,38,102,165,166,167,168,169,170,171,172,42],"proxy","liter llm running the proxy","running","openai-compatible","virtual","gateway","model","toml","cost","routing","REST","endpoints","keys","config","limits","llm api",{"skillNo":174,"name":175,"nameZh":6,"description":176,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":177,"categories":178,"keywords":179,"publishedAt":43},"01M6J1D2W434JGGHXR8SP91PZ3","liter-llm-embeddings-and-search","Use when generating embeddings, calling the 12 web-search providers, or running OCR over documents with the 4 OCR providers through liter-llm. Covers embed, search, and ocr methods plus reranking.","https:\u002F\u002Fgithub.com\u002Fxberg-io\u002Fliter-llm\u002Fblob\u002Fmain\u002Fskills\u002Fliter-llm-embeddings-and-search\u002FSKILL.md",[],[95,180,31,181,93,182,41,38,183,184,185,186,187,188,189,159,42],"liter llm embeddings and search","embeddings","methods","documents","embed","with","web","web-search","Providers","reranking"]