GitHub
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
Beschreibung vom Entwickler (englisches Original)
Optimization middleware for AI agents: JSON problem in, verified and ranked solutions out.
Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.
Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
ANNEALBRIDGE_ALLOW_REMOTEDu brauchst
Welche App nutzt du?
Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.
Öffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein
{
"mcpServers": {
"annealbridge": {
"command": "uvx",
"args": [
"annealbridge",
"mcp"
],
"env": {
"ANNEALBRIDGE_ALLOW_REMOTE": "your-value"
}
}
}
}Führe das in deinem Terminal aus
claude mcp add annealbridge --env ANNEALBRIDGE_ALLOW_REMOTE=your-value -- uvx annealbridge mcpTrag die leeren Werte ein, bevor du ihn startest.
In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"annealbridge": {
"command": "uvx",
"args": [
"annealbridge",
"mcp"
],
"env": {
"ANNEALBRIDGE_ALLOW_REMOTE": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"annealbridge": {
"type": "stdio",
"command": "uvx",
"args": [
"annealbridge",
"mcp"
],
"env": {
"ANNEALBRIDGE_ALLOW_REMOTE": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.
Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.
ANNEALBRIDGE_ALLOW_REMOTE envDiese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.
Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 9. Nov. 2026
Der Registry-Name wurde mit dem GitHub-Konto TheTsungYing bestätigt, dem das Repo gehört
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet
Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen
Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.
Die Registry nennt keinen erforderlichen Schlüssel, manche Server bitten dich aber bei der ersten Nutzung, dich anzumelden.
Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).
Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (0.4.0) kam vor 41 Tagen in die Registry.
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du Python (uv) auf deinem Computer.
In derselben Kategorie: GitHub, Desktop Commander, Cloudflare MCP
Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.
So liest du eine Karte:↓ Downloads pro Wochei★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
MCP server for terminal commands, file operations, and process management
Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.
English | 繁體中文
Combinatorial optimization middleware for AI agents. An agent describes *what* to optimize as structured JSON; AnnealBridge decides *how* to encode and solve it, checks every answer against the original problem, and returns ranked, verified solutions over MCP, a CLI, or plain Python.
flowchart LR
U[Natural language] --> A[AI agent] A -->|OptimizationProblem JSON variables · objective · constraints| B subgraph B[AnnealBridge] direction LR V[validate] --> C[compile BQM / CQM] --> S[solve local or remote] --> R[re-validate against the original problem] --> K[rank] end B -->|SolveResult ranked, verified solutions| A A --> N[Natural-language answer]
pip install annealbridge
A 0/1 knapsack: four items, capacity 10, maximize value. No file needed.
from annealbridge.models import OptimizationProblem
from annealbridge.orchestration import OptimizationService
problem = OptimizationProblem.model_validate({ "version": "1.0", "name": "knapsack", "variables": [{"name": n, "type": "binary"} for n in ["a", "b", "c", "d"]], "objective": {"direction": "maximize", "linear_terms": [ {"variable": "a", "coefficient": 10}, {"variable": "b", "coefficient": 8}, {"variable": "c", "coefficient": 7}, {"variable": "d", "coefficient": 6}]}, "constraints": [{"id": "capacity", "type": "hard", "operator": "<=", "rhs": 10, "terms": [ {"variable": "a", "coefficient": 6}, {"variable": "b", "coefficient": 5}, {"variable": "c", "coefficient": 4}, {"variable": "d", "coefficient": 3}]}], })
result = OptimizationService().solve(problem) print(result.status) # success print(result.solutions[0].variables) # {'a': 1, 'b': 0, 'c': 1, 'd': 0} print(result.solutions[0].objective_value) # 17.0
Domain failures come back as results, never as exceptions: result.status is one of success, infeasible, invalid_problem, resource_limit_exceeded, backend_unavailable, configuration_error or solver_error. See docs/output-format.md.
Optional extras:
pip install "annealbridge[mcp]" # + MCP server (annealbridge-mcp)
pip install "annealbridge[dwave]" # + D-Wave cloud backends pip install "annealbridge[all]" # everything pip install "annealbridge[gpu]" # + PyTorch, for simulated_bifurcation on CUDA
[gpu] is deliberately not part of [all]: PyTorch is a large download, and on Windows the wheel PyPI serves is the CPU-only build, so a CUDA run needs torch installed from PyTorch's own index first — see docs/backends.md.
With uv installed, add the server to claude_desktop_config.json (or your host's equivalent) and restart the host; where Claude Desktop, Claude Code and Codex keep that configuration is listed in docs/mcp.md. The first run fetches the package into uvx's own cached environment; that download — numpy, dimod, dwave-samplers and the rest — can take tens of seconds, long enough for a host's start-up timeout to show the server as disconnected. Warm the cache once in a terminal first:
uvx --from "annealbridge[mcp]" annealbridge-mcp --version
It resolves the environment and prints the version; from then on the host starts from that cache.
{
"mcpServers": { "annealbridge": { "command": "uvx", "args": ["--from", "annealbridge[mcp]", "annealbridge-mcp"] } } }
Claude Code registers it in one line:
claude mcp add annealbridge -- uvx --from "annealbridge[mcp]" annealbridge-mcp
Optimizing is then an ordinary chat:
You: I can carry 10 kg. Item A is worth 10 and weighs 6, B is worth 8
and weighs 5, C is worth 7 and weighs 4, D is worth 6 and weighs 3. Which
ones should I take?
Behind the reply, the agent writes the request as problem JSON and calls solve_optimization. Every solution comes back re-validated against the original constraints, with optimality_proven: true on the exhaustive exact backend; a document the server rejects comes back as invalid_problem with every error and a fix for each, which the agent applies before sending it again. Before solving on a remote backend, or on a large problem, it calls validate_optimization_problem first, so a mistake costs nothing; it calls get_optimization_capabilities when it needs the backend list or the full schema.
Agent: Take A and C: value 17 at exactly 10 kg. The runners-up are A
and D (16, at 9 kg) and B and C (15, at 9 kg). This is the proven optimum.
The wording is the agent's; the numbers are the tool result. Another tool, recommend_backend, ranks the backends for a problem and is advisory only; when you did not name a backend and more than one local backend fits, the server instructions tell the agent to show the top entries and ask which to run rather than to decide for you.
If your host lists prompts in its input menu, three of them — pick_subset, assign and schedule_shifts — walk the agent from your own sentence to a problem document of that everyday shape, which it then solves. The server also serves resources: the seven example documents under annealbridge://examples/ and the full problem schema at annealbridge://schema, so an agent can read a complete example or the schema itself instead of guessing.
What it is not for. AnnealBridge does not handle continuous (real-valued) variables, non-linear objectives or non-linear constraints. Only exact proves that an answer is optimal or that no feasible one exists, and by default it takes at most 24 compiled variables (slack bits included); the other local backends (simulated_annealing, tabu, simulated_bifurcation) are heuristics whose best answer may not be the optimum. See the Backends table below and docs/limitations.md.
Any stdio-capable MCP host works the same way, a streamable-http transport exists, and pipx or a pip-installed server behind an absolute path work in place of uvx. uvx reuses the environment it resolved on its first run, so a new release reaches an existing install only after uv cache clean annealbridge and a host restart; see docs/mcp.md.
Save the problem JSON below as knapsack.json, then:
annealbridge solve knapsack.json
Problem: knapsack
Backend: exact Status: success Attempts: 1 Elapsed: 2.7 ms
Best solution (rank 1) objective (maximize): 17 soft violation score: 0 item_a = 1 item_b = 0 item_c = 1 item_d = 0
Hard constraints: 1 / 1 satisfied Soft constraints: 0 violations Optimality proven: yes
Elapsed is the service's own wall clock and varies from run to run. Add --json for the full SolveResult, --backend simulated_annealing to override the backend, or try validate, recommend, capabilities, example and export-schema. See docs/cli.md.
The document behind the MCP and CLI examples above, the reduced form of examples/knapsack.json:
{
"version": "1.0", "name": "knapsack", "variables": [ {"name": "item_a", "type": "binary"}, {"name": "item_b", "type": "binary"}, {"name": "item_c", "type": "binary"}, {"name": "item_d", "type": "binary"} ], "objective": { "direction": "maximize", "linear_terms": [ {"variable": "item_a", "coefficient": 10}, {"variable": "item_b", "coefficient": 8}, {"variable": "item_c", "coefficient": 7}, {"variable": "item_d", "coefficient": 6} ] }, "constraints": [ { "id": "capacity", "type": "hard", "terms": [ {"variable": "item_a", "coefficient": 6}, {"variable": "item_b", "coefficient": 5}, {"variable": "item_c", "coefficient": 4}, {"variable": "item_d", "coefficient": 3} ], "operator": "<=", "rhs": 10 } ], "solver": {"backend": "exact"} }
Integer variables ("type": "integer" with bounds, "version": "1.1"), cardinality constraints — exactly, at most or at least *k* of a set of binary variables, a hard at-most-one compiling without slack variables ("cardinality_constraints", "version": "1.2") — templates that write a large, regular model once over index sets and let the server expand it ("index_sets", "parameters", "variable_families" and the *_templates lists, "version": "1.3"), quadratic objective terms, soft constraints with weights and per-backend solver preferences are described in docs/problem-format.md. annealbridge export-schema prints the JSON Schema an agent can use for structured output.
Seven ready-to-run examples live in the repository — knapsack, assignment, TSP, integer knapsack, shift scheduling, exam timetabling (cardinality constraints) and TSP with templates (the TSP written once over index sets; annealbridge expand prints what it expands to). The installed package carries the same files: annealbridge example lists them and annealbridge example knapsack > knapsack.json saves one (or pipe it straight in with annealbridge example knapsack | annealbridge solve -); the MCP server serves the same seven documents as the resources under annealbridge://examples/.
The agent produces an OptimizationProblem: binary or bounded-integer variables, a linear or quadratic objective, and hard or soft linear and cardinality constraints. Nothing else. AnnealBridge then, deterministically:
An opt-in `solver.postp
Nur der Anfang wird gezeigt; den Rest findest du im Repo