Llmqore
Qt C++ library for working with AI/LLM Providers and MCP
Ask AI about Llmqore
Powered by Claude Β· Grounded in docs
I know everything about Llmqore. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
LLMQore
Qt/C++ library for working with cloud and local LLM providers, create MCP servers and clients, download and using library MCP Bridge.
LLM clients β unified streaming API across all providers:
auto *client = new LLMQore::ClaudeClient(url, apiKey, model, this);
client->ask("What is Qt?", cb);
MCP server β expose tools, resources and prompts over stdio or HTTP:
// stdio (stdin/stdout, e.g. for Claude Desktop)
auto *transport = new LLMQore::McpStdioServerTransport(&app);
// or Streamable HTTP
auto *transport = new LLMQore::McpHttpServerTransport({.port = 8080, .path = "/mcp"}, &app);
auto *server = new LLMQore::McpServer(transport, cfg, &app);
server->addTool(new MyTool(server));
server->start();
MCP client β connect to MCP servers and bind their tools into LLM clients:
// Add servers one by one
client->tools()->addMcpServer({.name = "filesystem", .command = "npx",
.arguments = {"-y", "@modelcontextprotocol/server-filesystem", "/home/user"}});
// Or load from a JSON config
client->tools()->loadMcpServers(QJsonDocument::fromJson(configData).object());
loadMcpServers accepts:
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/home/user"]
}
}
}
See Quick Start for complete examples.
MCP Bridge
A standalone CLI tool built on llmqore that aggregates multiple MCP servers (stdio or SSE) and re-exposes them either behind a single HTTP/SSE endpoint or as one stdio server β useful when the upstreams and the client disagree on transport.
mcp-bridge bridge.json # HTTP endpoint
mcp-bridge --stdio bridge.json # stdio (for Claude Desktop and friends)
Config uses the familiar mcpServers schema:
{
"port": 8808,
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/home/user"]
}
}
}
Prebuilt binaries for Linux/macOS/Windows (with Qt runtime bundled) are published to GitHub Releases. See MCP Bridge docs for full usage, config reference, and build instructions.
Supported Providers
| Provider | Client class | Streaming | Tools | Thinking |
|---|---|---|---|---|
| Anthropic Claude | ClaudeClient | β | β | β |
| OpenAI (Chat Completions) | OpenAIClient | β | β | β |
| OpenAI (Responses API) | OpenAIResponsesClient | β | β | β |
| Ollama | OllamaClient | β | β | β |
| Google AI | GoogleAIClient | β | β | β |
| Mistral | MistralClient | β | β | β |
| llama.cpp | LlamaCppClient | β | β | β |
MCP (Model Context Protocol)
Client and server implementation of the MCP 2025-11-25 spec:
- Transports: stdio, Streamable HTTP
- Server: tools, resources, resource templates, prompts, completions, sampling, elicitation
- Client: tools, resources, prompts, completions, sampling, elicitation, roots
See MCP Protocol Coverage for the full spec-conformance matrix.
Requirements
- C++20
- Qt 6.5+
- CMake 3.21+
Documentation
- Quick Start β examples for LLM clients, tools, MCP server and client
- Integration β FetchContent and installed setup
- MCP Bridge β aggregate stdio MCP servers behind one HTTP/SSE endpoint
- MCP Protocol Coverage β spec-conformance matrix
- Architecture β internals, for contributors
Support
- Report Issues: open an issue on GitHub
- Contribute: pull requests with bug fixes or new features are welcome
- Spread the Word: star the repository and share with fellow developers
- Financial Support:
- Bitcoin (BTC):
bc1qndq7f0mpnlya48vk7kugvyqj5w89xrg4wzg68t - Ethereum (ETH):
0xA5e8c37c94b24e25F9f1f292a01AF55F03099D8D - Litecoin (LTC):
ltc1qlrxnk30s2pcjchzx4qrxvdjt5gzuervy5mv0vy - USDT (TRC20):
THdZrE7d6epW6ry98GA3MLXRjha1DjKtUx
- Bitcoin (BTC):
License
MIT β see LICENSE.
