A side-by-side look at the Rhumb and Ncp MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Rhumb for aggregators work as a local process; choose Ncp for aggregators as a local process. You can also run both side by side in one mcpServers block.
RHUMB_API_KEY.find_services, get_score, get_alternatives.sequentialthinking.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Aggregators | Aggregators |
| Quality signal | 64/100 · Good | 69/100 · Great |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | Not declared | API key required |
| Pricing | Not declared | Free |
| Required env vars | RHUMB_API_KEY | None listed |
| Verified owner | Community listing | Community listing |
| GitHub stars | 4 | 100 |
| Directory activity | 2 views 0 installs 0 upvotes | 3 views 0 installs 0 upvotes |
| Tools | 21 | 1 |
| Full listing | View Rhumb | View Ncp |
find_servicesSearch indexed Services by what you need them to do. Returns ranked Services with AN Scores. Use this when you know the problem but not which Service to call. For Capability-level search (e.g. 'email.send'), use discover_capabilities instead.get_scoreGet the full AN Score breakdown for a Service: execution quality, access readiness, autonomy level, tier label, and freshness. Use after find_services to evaluate a specific Service.get_alternativesFind alternative Services, ranked by AN Score. Use when a Service doesn't meet your needs or you want to compare options in the same category.get_failure_modesGet known failure patterns, impact severity, and workarounds for a service. Use BEFORE integrating to write defensive code, or AFTER hitting an error to diagnose it.discover_capabilitiesBrowse Capabilities by domain or search text. A Capability is an action (e.g. 'email.send', 'payment.charge') that multiple providers can fulfill. Use this when you know WHAT you need to do but not which Service does it. Returns Capability IDs for resolve_capability. Different from find_services: find_services searches Services, this searches Capabilities.resolve_capabilityGiven a Capability ID, and optionally a credential mode, returns ranked providers with health status, cost per call, auth methods, endpoint patterns, execute guidance, and machine-readable recovery fields like recovery_hint.resolve_url, recovery_hint.credential_modes_url, and, when applicable, recovery_hint.alternate_execute_hint or recovery_hint.setup_handoff, plus typo recovery when the capability ID is wrong. If the capability ID is wrong, returns a capability search URL plus suggested capabilities instead of a blank dead end. This is the core routing decision: 'I need email.send, and maybe a specific credential mode, which provider or recovery handoff should I use?' Call this before execute_capability to understand your options.execute_capabilityCall a Capability through Rhumb Resolve. Typical workflow: discover_capabilities → resolve_capability → estimate_capability → execute_capability. Default credential mode is auto: Rhumb uses Rhumb Resolve when an active managed config exists, otherwise falls back to byok. Legacy 'byo' is still accepted as an input alias. Other explicit modes: rhumb_managed — zero-config through Rhumb Resolve when available; byok — BYOK via agent_token + method + path; agent_vault — use a key from credential_ceremony via agent_token + method + path. Alternative: pass x_payment for a per-call USDC payment with no account needed. Use check_credentials to inspect live readiness globally or for a specific Capability before choosing a rail.estimate_capabilityEstimate the active execution rail, cost, and health before a Capability call; anonymous direct system-of-record paths also preserve machine-readable execute_readiness handoffs. Returns cost in USD, circuit health, and endpoint pattern. Default credential mode is auto: Rhumb uses Rhumb Resolve when an active managed config exists, otherwise falls back to byok. Legacy 'byo' is still accepted as an input alias. Always call this before execute_capability for cost-sensitive workflows — no charge for estimates.credential_ceremonyGet step-by-step instructions to obtain API credentials for a Service. Returns signup steps, expected token format (prefix, pattern), verification endpoint, estimated time, and whether human intervention is needed. Use before calling in agent_vault mode. Call without params to list all Services with available ceremonies.check_credentialsInspect live credential-mode readiness, globally or for a specific Capability. Call without params to see which BYOK bridges or direct bundles are already configured and which Capabilities are ready now through Rhumb-managed rails. Pass a Capability to inspect provider-level mode status, configured readiness, and ceremony availability for that specific path.budgetCheck or set your call spending limit. Budgets are enforced BEFORE a call — you get HTTP 402 (not a surprise bill) when you'd exceed your limit. Call with no params to check current budget and remaining balance.spendGet your spending breakdown for a billing period: total USD spent, call count, average cost per call, broken down by Capability and by provider. Use to audit costs or optimize routing.sequentialthinkingA detailed tool for dynamic and reflective problem-solving through thoughts.
This tool helps analyze problems through a flexible thinking process that can adapt and evolve.
Each thought can build on, question, or revise previous insights as understanding deepens.
When to use this tool:
- Breaking down complex problems into steps
- Planning and design with room for revision
- Analysis that might need course correction
- Problems where the full scope might not be clear initially
- Problems that require a multi-step solution
- Tasks that need to maintain context over multiple steps
- Situations where irrelevant information needs to be filtered out
Key features:
- You can adjust total_thoughts up or down as you progress
- You can question or revise previous thoughts
- You can add more thoughts even after reaching what seemed like the end
- You can express uncertainty and explore alternative approaches
- Not every thought needs to build linearly - you can branch or backtrack
- Generates a solution hypothesis
- Verifies the hypothesis based on the Chain of Thought steps
- Repeats the process until satisfied
- Provides a correct answer
Parameters explained:
- thought: Your current thinking step, which can include:
* Regular analytical steps
* Revisions of previous thoughts
* Questions about previous decisions
* Realizations about needing more analysis
* Changes in approach
* Hypothesis generation
* Hypothesis verification
- nextThoughtNeeded: True if you need more thinking, even if at what seemed like the end
- thoughtNumber: Current number in sequence (can go beyond initial total if needed)
- totalThoughts: Current estimate of thoughts needed (can be adjusted up/down)
- isRevision: A boolean indicating if this thought revises previous thinking
- revisesThought: If is_revision is true, which thought number is being reconsidered
- branchFromThought: If branching, which thought number is the branching point
- branchId: Identifier for the current branch (if any)
- needsMoreThoughts: If reaching end but realizing more thoughts needed
You should:
1. Start with an initial estimate of needed thoughts, but be ready to adjust
2. Feel free to question or revise previous thoughts
3. Don't hesitate to add more thoughts if needed, even at the "end"
4. Express uncertainty when present
5. Mark thoughts that revise previous thinking or branch into new paths
6. Ignore information that is irrelevant to the current step
7. Generate a solution hypothesis when appropriate
8. Verify the hypothesis based on the Chain of Thought steps
9. Repeat the process until satisfied with the solution
10. Provide a single, ideally correct answer as the final output
11. Only set nextThoughtNeeded to false when truly done and a satisfactory answer is reachedPaste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"supertrained-rhumb": {
"command": "npx",
"args": [
"-y",
"--package",
"rhumb-mcp@latest",
"rhumb-mcp"
],
"env": {
"RHUMB_API_KEY": "YOUR_RHUMB_API_KEY_HERE"
}
}
}
}
{
"mcpServers": {
"portel-dev-ncp": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-sequential-thinking"
]
}
}
}