nvNeuralVerge
Product Updates

MCP Crunchbase: When Your Agent Needs Tools, Not Just an API

When to expose a capability like a Crunchbase lookup over MCP instead of calling it directly over REST — and why most real systems end up using both.

Published September 12, 2026

Wire an MCP Crunchbase tool into an agent, and one question comes up almost immediately: why not just call the REST endpoint directly, the way the rest of the pipeline already does? The honest answer is usually both, for different callers. A backend job that runs the same lookup on a fixed schedule doesn't need MCP; it already knows when to call. An agent that's mid-conversation and just realized it needs to check a company's funding history does — it needs to discover that the capability exists and decide, on its own, to reach for it. The question isn't which protocol is better. It's which caller is deciding when the call happens.

The actual difference between the two

REST is a way to call a capability you already know about, at a point in your code where you already decided the call belongs. You write the request, you know the shape of the response, and the call happens because your code says it happens — at a moment a developer chose in advance. MCP is a different layer entirely: a way for an application to discover what capabilities are available to it and invoke one without the calling code having been written specifically for that one capability. The distinction isn't about which one is more modern or more capable — a REST endpoint and an MCP tool can wrap the exact same underlying logic and return the exact same data. What differs is who's deciding when the call happens: a developer, ahead of time, or an agent, in the moment.

A worked example: an MCP Crunchbase lookup, two callers

Take a concrete, illustrative case: NeuralVerge's Crunchbase company source, which resolves a company profile URL into structured funding and firmographic data, reachable over REST directly or as an MCP tool an agent can discover and call for itself.

A fixed onboarding pipeline that enriches every new vendor record with funding data the moment it's created already knows exactly when this lookup belongs — right after the record is created, every time, no exceptions. Calling the REST endpoint directly from that pipeline's own code is the natural fit: the call happens because the pipeline's logic says it happens, at a point a developer wrote in advance.

A due-diligence agent working through a compound research question — verify this counterparty, check its funding history, flag anything inconsistent — doesn't know in advance which specific lookups it'll need until it's partway through reasoning about the question. It might need the Crunchbase lookup, or it might not, depending on what the first few steps of its own reasoning surface. Exposing the same underlying capability as an MCP tool lets the agent discover it's available and reach for it exactly when its own reasoning decides it's needed — a decision the agent makes for itself, not one a developer scripted into a fixed sequence in advance.

Both callers reach the identical underlying data, through the identical response shape. The only thing that changed is which layer decided the call should happen.

What an MCP Crunchbase tool call actually looks like

NeuralVerge exposes its Crunchbase company source as an MCP tool named run-crunchbase-company, alongside the identical capability over REST. Once an agent's host is connected to NeuralVerge's MCP server, invoking the tool looks like this:

{
  "tool": "run-crunchbase-company",
  "arguments": { "url": "https://www.crunchbase.com/organization/example" }
}

The response comes back structured — funding rounds, investor names, headcount range, founding date — the same shape a direct REST call to the equivalent endpoint would return. Nothing about the data changes based on which transport carried the request; the tool definition is just a name, a description, and a set of arguments an agent's reasoning can match against the question it's trying to answer, without a developer having written integration code for this specific lookup in this specific application ahead of time.

This is also where the difference between the two callers from the worked example above becomes concrete rather than abstract. The fixed onboarding pipeline calls the underlying Crunchbase endpoint directly over REST, with the URL supplied by whatever created the new vendor record. The due-diligence agent calls the exact same underlying capability through the run-crunchbase-company tool, with the URL supplied by its own reasoning about what it still needs to check — a decision nothing in the system scripted in advance. Coverage across NeuralVerge's source catalog is rolling out endpoint by endpoint rather than landing all at once, and each data source page states its current MCP status directly rather than assuming blanket availability; where a specific source isn't yet reachable over MCP, the equivalent REST call returns the identical response shape in the meantime. Full connection details are documented at docs.neuralverge.ai.

Why "just use MCP everywhere" isn't the right instinct either

It's tempting, once MCP is available, to expose every capability through it and treat REST as the legacy option. That instinct undersells what a fixed pipeline actually has going for it: predictability. A pipeline that calls a REST endpoint at a known point in its logic has a call count you can predict, a cost you can budget, and a failure mode that's easy to reason about — the call either succeeds or it doesn't, at a moment you already know about. An agent deciding for itself, mid-task, whether to reach for a tool doesn't have that same predictability by construction — which is exactly the tradeoff that makes MCP valuable for genuinely dynamic decisions and unnecessary overhead for ones that were never actually dynamic in the first place.

The practical rule of thumb: if a human could correctly predict, in advance, every point in a workflow where a specific lookup belongs, that's a REST call written into the pipeline directly. If the workflow's own reasoning has to discover mid-task that it needs a specific piece of information, that's the shape of problem MCP is built for.

What actually changes when you add MCP on top of an existing REST API

Adding MCP support to a capability that already has a REST endpoint doesn't mean building a second version of the logic — it means wrapping the same underlying call with a discoverable description: a name, a summary of what it does, and the parameters it takes. NeuralVerge's own source catalog is reachable both ways specifically because the underlying capability — AI research, AI extraction, or a specific source like the Crunchbase lookup above — is the same logic underneath either interface. What's different is the wrapper: a client speaking MCP can discover the tool exists and its shape without a developer having written integration code for that specific capability in that specific application.

This is also why the description attached to an MCP tool matters more than it might seem. A REST endpoint's shape is documented once, read by a developer, and encoded into fixed calling code. An MCP tool's description is read by an agent's own reasoning, in the moment, to decide whether this specific tool is the right one to reach for — a vague description risks an agent skipping a genuinely useful tool, or reaching for the wrong one on an ambiguous case.

A second worked example: the same lookup, an unpredictable trigger

Take a different shape of problem: a support or sales agent handling inbound conversations, where a prospect mentions their company by name partway through an otherwise unrelated conversation about pricing. Nothing about this trigger is schedulable — it happens whenever it happens, mid-conversation, and a fixed pipeline has no natural point to insert a Crunchbase lookup because there's no fixed point at which the company name is guaranteed to come up.

With the capability exposed only over REST, this case is awkward to handle well: either every conversation gets a lookup regardless of whether a company was mentioned, which wastes calls on conversations that never needed one, or someone writes bespoke logic to detect when a company name appears in the transcript and trigger a call — logic that has to be maintained separately from the agent's own reasoning about the conversation. With the same capability also exposed as run-crunchbase-company over MCP, the agent's own reasoning handles the detection implicitly: when a company name surfaces and funding context would help answer the prospect's question, the agent reaches for the tool itself, in the same reasoning step that noticed the name was relevant in the first place. No separate detection logic has to be written and kept in sync with the agent's own judgment about relevance.

Where teams end up using both

  • A single product exposing the same capability two ways. NeuralVerge's source catalog is reachable over REST for fixed pipeline integrations and over MCP for agent-driven use, from the same account and response shape either way.
  • A backend pipeline with an agent layered on top. The pipeline's own scheduled and triggered logic calls REST directly; an agent working alongside it, handling exceptions or open-ended requests, reaches for the same capabilities over MCP when its own reasoning needs them.
  • Migrating a fixed workflow toward more autonomy. A team that starts with a fully scripted pipeline and gradually hands more decision-making to an agent doesn't have to rebuild the underlying capability — only add an MCP-accessible wrapper as the decision-making layer changes.
  • Conversational agents reacting to unpredictable triggers. A support or sales conversation where a company name might surface at any point, unpredictably, is a poor fit for a fixed pipeline step and a natural fit for a tool the agent reaches for only when its own reasoning decides a lookup is warranted.
  • Cost-sensitive workflows where every call should be deliberate. Because an MCP-exposed tool is only called when an agent's reasoning decides it's needed, it avoids the waste of a fixed pipeline that runs a lookup on every record regardless of whether that record actually needed one.

What to check before deciding between MCP and REST for a specific capability

  • Does something need to decide dynamically whether to call this, or is the calling logic already fixed? A fixed pipeline doesn't need MCP just because the option exists; a dynamic decision does.
  • Is the tool's description clear enough for an agent to know when to reach for it? This is the MCP-specific failure mode REST doesn't have — a vague description means a capability that exists but doesn't get used correctly.
  • Does the underlying capability return the same shape either way? If a REST call and an MCP tool call for the same capability return different response shapes, that's two integrations to maintain instead of one.
  • Are you exposing a capability over MCP because an agent genuinely needs to discover it, or by default? Not every capability benefits from MCP exposure — one only ever called at a fixed point in a pipeline gains little from being independently discoverable.

Building one real agent workflow that plausibly needs to decide, mid-task, whether to reach for a specific capability — and watching whether it actually does — is a better test of whether MCP is warranted than reasoning about it in the abstract.

Frequently asked questions

Is MCP meant to replace REST entirely?

No — they solve different problems. REST is a way to call a capability; MCP is a way for an application to discover and connect to capabilities it doesn't already know about in advance. Most real systems use both for different parts of the same pipeline.

Does exposing a capability over MCP change what it does?

No — the underlying capability, and the data it returns, stays identical. What changes is who decides when to call it: a developer, in code written in advance, or an agent, deciding for itself mid-task.

If I already call a REST endpoint directly, do I need to add MCP too?

Only if something in your system needs to decide dynamically whether to reach for that capability — typically an autonomous agent. A fixed pipeline that already knows when a lookup belongs has no need for MCP just because the option exists.

Does MCP add latency compared to calling REST directly?

There's a discovery step the first time a client connects to a server, but the invocation itself is a similar request-response exchange to a REST call. The larger latency difference in practice usually comes from an agent's own reasoning about whether to call a tool, not from the protocol itself.

How do I decide which of a product's capabilities to expose over MCP?

Start with the capabilities an agent would plausibly need to reach for dynamically, mid-task, rather than exposing everything by default. A capability only ever called at one fixed point in a pipeline doesn't gain much from being MCP-accessible too.

Does an MCP Crunchbase tool return different data than the REST endpoint?

No — NeuralVerge's run-crunchbase-company MCP tool wraps the same underlying Crunchbase company source as the REST endpoint and returns the identical structured response. Only the transport and who decides when to call it differ.

Is NeuralVerge's MCP coverage available for every data source at once?

No — coverage is rolling out endpoint by endpoint rather than landing for the whole catalog simultaneously. Each data source page states its current MCP status, and where a source isn't yet reachable over MCP, the equivalent REST call returns the same response shape in the meantime.

About NeuralVerge

NeuralVerge gives developers and AI builders a single API for AI deep research, AI extraction, and autonomous agents — powered by 29 data sources under the hood.

Product Updates on the NeuralVerge blog.

Try it on your own data

One request format across research, extraction, and enrichment.

Get started