Sublinear Time Solver MCP

An MCP server and CLI that solve sparse linear systems, compute PageRank and estimate single values without a full pass

  • 93 ★ on the repository
  • Last commit
  • MIT
MCP server

Minimal access

Why this level

  • The server computes locally on the data it receives and makes no network calls, reads no project files on its own and needs no keys.
All reasons and checks

ruvnet/sublinear-time-solver

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add mcp/sublinear-time-solver

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Minimal accessThe tool runs nothing and makes no network calls.

  • The server computes locally on the data it receives and makes no network calls, reads no project files on its own and needs no keys.

This is third-party code. Review the repository files before installing.

What it does

Sublinear Time Solver solves systems of linear equations with a sparse matrix, computes PageRank and local personalized PageRank and estimates a single entry of a solution. The idea is that when each variable depends on only a few others, a local question can sometimes be answered by visiting a small neighborhood instead of solving the whole system. A matrix is passed in COO format (the value, row and column of each nonzero entry), as dense rows or as CSR. The MCP server starts with `npx -y sublinear-time-solver serve` over stdio. Its tools include `solve` for a full solution, `estimateEntry` for one value and `pageRank` for node importance in a graph. A client can request complexity metadata for a tool before calling it. The same package ships a CLI with `solve`, `analyze` and `pagerank` commands, and the method is picked with `--method`: for example `forward-push`, while symmetric positive definite matrices suit conjugate gradient. For embedding there is the dependency-free `@ruvnet/sublinear-core` package and the `sublinear` Rust crate.

Who it is for. Developers and researchers who need an agent to solve sparse systems, rank graph nodes and check the residual of a solution.

Good fit when

  • You need to solve `Ax = b` for a large sparse matrix and get the result with a residual check
  • You need to rank pages, users or code by a link graph and get PageRank whose scores sum to one
  • One row of the system changed and a local update is enough instead of a full recompute
  • An agent needs an estimate of a single solution entry with a standard error through `estimateEntry`
  • You want the solver inside your own code: `@ruvnet/sublinear-core` installs with one `npm install` command

Not a fit when

  • The matrix is dense or lacks diagonal dominance: the Jacobi, Neumann and Gauss-Seidel methods do not converge on it
  • You need general numerical math, symbolic work or spreadsheets: the solver handles only linear systems and graphs
  • You need an exact solution of a small system: a full solve is faster there than a local method

Example request

List the solver tools, then solve a 2 by 2 system given as a COO matrix with the vector [3, 3] and check the residual.

MCP

Transport
stdio
Authentication
not required

Limitations

Local methods pay off when rows have few neighbors, diagonal entries dominate and the change stays local. Conjugate gradient needs a symmetric positive definite matrix. A full solve returns every value, so its output grows with the system. The install pulls Node.js and the `sublinear-time-solver` package with about 99 dependencies, while the lightest core is a single dependency-free package. The author notes that speed measurements were taken on a shared machine and are indicative only. Version 1.8 changed behavior: a converged and a non-converged result now differ by the `converged` field and no error is thrown.

How to disable. Remove the `sublinear` entry from the client MCP configuration or run `claude mcp remove sublinear`. npm packages are removed with `npm uninstall`.

FAQ

How do I connect Sublinear Time Solver to Claude Code?

Run `claude mcp add sublinear -- npx -y sublinear-time-solver serve`. For Codex add a `[mcp_servers.sublinear]` section to `~/.codex/config.toml` with `command = "npx"` and the arguments `-y`, `sublinear-time-solver`, `serve`.

Does it need a key or an account?

No. The server runs locally over stdio, needs no environment variables and sends diagnostics to stderr so stdout stays clean JSON-RPC.

Which matrix input formats are supported?

COO with values and row and column indices, dense rows and CSR matrices. Duplicate COO entries are summed.

How does `estimateEntry` differ from `solve`?

`solve` returns the full solution vector, while `estimateEntry` estimates one entry with random walks and gives a standard error. After a one-time check of the matrix its cost does not depend on the system size.

Can the solver be used without MCP?

Yes. There is a CLI (`npx -y sublinear-time-solver solve --matrix matrix.json --vector vector.json`), the `@ruvnet/sublinear-core` library for JavaScript and the `sublinear` crate for Rust.

Discussion

No questions or reviews yet.

An MCP server with a library of typed math operations: the agent finds one, runs it and passes the result on to the next

MCP serverExtended access367Repository stars

An MCP server of science agents: Claude Code analyzes spectra and images, plans experiments and prepares DFT calculations

MCP serverBroad access99Repository stars

An MCP server for searching and downloading academic papers from arXiv, PubMed, bioRxiv, Semantic Scholar and other open sources

MCP serverExtended access3.1KRepository stars

BioMCP

biomcp

One binary and a single command grammar for 70 biomedical sources: PubMed, ClinVar, ClinicalTrials.gov, OncoKB. MCP mode starts with the serve command

MCP serverMinimal access678Repository stars
Official

Official MCP server from the OpenSearch project exposes a cluster to agents: indexes, mappings, DSL search and shard state.

MCP serverExtended access158Repository stars
Official

An MCP server gives agents search and answers over local documents using hybrid retrieval, reranking and section links.

MCP serverExtended access663Repository stars

README in short

The README describes three packages (a JavaScript core, MCP with a CLI and a Rust crate), a quick start with a 2 by 2 matrix, MCP client setup, a method choice table and speed measurements.

README badge

Report a problem