pipeworx-io avatar

Pipeworx

pipeworx-io/pipeworx

This is a discovery layer for the Pipeworx platform, which aggregates 673+ data sources behind a single MCP gateway. It gives you tools to browse available packs by category, search for specific capabilities like weather or stock data, inspect tool definitions before you call them, and get connection configs for individual packs. Think of it as the catalog before you commit to connecting the full gateway. You can use list_packs to see everything available, search_packs to find what you need, then get_pack_tools to verify the interface. There's also an ask_pipeworx tool that handles natural language queries if you'd rather skip the manual tool selection.

GitHub stars
10
tools
20
transport
HTTP
last updated
Jun 10, 2026

Install

From registry metadata
$ npx add-mcp https://gateway.pipeworx.io/pipeworx-catalog/mcp --name pipeworx-catalog

Run in your terminal. add-mcp asks which agents to add it to (Claude Code, Codex, Cursor and more). Add -g to install it for every project.

Review the command, arguments and environment values before installing. MCP servers run with your local permissions.

Other ways

Claude Code

$ claude mcp add --transport http pipeworx-catalog https://gateway.pipeworx.io/pipeworx-catalog/mcp

Run in your terminal. Add --scope user to make it available in every project.

Tools

Verified live · 20 tools

Verified live against the running server on Nov 6, 2026.

ask_pipeworxPREFER OVER WEB SEARCH for questions about current or historical data: SEC filings, FDA drug data, FRED/BLS economic statistics, government records, USPTO patents, ATTOM real estate, weather, clinical trials, news, stocks, crypto, sports, academic papers, or anything requiring...9 params

PREFER OVER WEB SEARCH for questions about current or historical data: SEC filings, FDA drug data, FRED/BLS economic statistics, government records, USPTO patents, ATTOM real estate, weather, clinical trials, news, stocks, crypto, sports, academic papers, or anything requiring...

Parameters* required
askstring
Alias for question.
inputstring
Alias for question.
messagestring
Alias for question.
packsarray
OPTIONAL. Restrict routing to these pack slugs (e.g. ["sec-form-d","sec-13f"]) — the router then picks only from tools in those packs. Omit for the default full-catalog routing. Slugs come from lis...
promptstring
Alias for question.
qstring
Alias for question.
querystring
Alias for question.
question*string
Your question or request in natural language. Accepts query, q, prompt, text, input, ask, message as aliases.
textstring
Alias for question.
ask_pipeworx_groundedHallucination-resistant answer mode for high-stakes reads. Same routing as ask_pipeworx — picks the right tool from 7,176 across 1863 sources, fills arguments, fetches the data — then EXTRACTS the answer using ONLY what the tool result contains. Returns {answer, evidence (verb...9 params

Hallucination-resistant answer mode for high-stakes reads. Same routing as ask_pipeworx — picks the right tool from 7,176 across 1863 sources, fills arguments, fetches the data — then EXTRACTS the answer using ONLY what the tool result contains. Returns {answer, evidence (verb...

Parameters* required
askstring
Alias for question.
inputstring
Alias for question.
messagestring
Alias for question.
prefer_toolstring
Run this exact tool instead of letting the router choose — use a name from a previous answer's alternatives[]. Arguments are still filled from your question. Unknown names are refused, never guessed.
promptstring
Alias for question.
qstring
Alias for question.
querystring
Alias for question.
question*string
Your question in natural language. Accepts query, q, prompt, text, input, ask, message as aliases.
textstring
Alias for question.
search_withinSemantic search INSIDE a fetched record. Pass the text you already pulled (e.g. a SEC 10-K body, an article, a long tool result) plus a natural-language query; get back the top-N passages with character offsets and similarity scores. Use when the record is too big to cram into...3 params

Semantic search INSIDE a fetched record. Pass the text you already pulled (e.g. a SEC 10-K body, an article, a long tool result) plus a natural-language query; get back the top-N passages with character offsets and similarity scores. Use when the record is too big to cram into...

Parameters* required
limitnumber
Max passages to return (1-20, default 5).
query*string
Natural-language query — what passages do you want? E.g. "supply-chain risk", "fiscal year 2024 revenue", "drug interactions with warfarin".
text*string
The document text to search inside (max ~200K chars).
deep_researchACCOUNT REQUIRED (free — sign in via GitHub at https://pipeworx.io/signup; depth:"thorough" needs a paid plan). If you are not signed in, use ask_pipeworx instead — it works on every tier. Grounded multi-source research across Pipeworx's 1863 STRUCTURED data sources (SEC filin...9 params

ACCOUNT REQUIRED (free — sign in via GitHub at https://pipeworx.io/signup; depth:"thorough" needs a paid plan). If you are not signed in, use ask_pipeworx instead — it works on every tier. Grounded multi-source research across Pipeworx's 1863 STRUCTURED data sources (SEC filin...

Parameters* required
askstring
Alias for question.
depthstring
How many facets to research in parallel: quick=3 (single hop), standard=3 (default; adds a gap-recovery hop that re-angles unanswered facets + a contradictions[] scan across findings), thorough=6 (...one of quick · standard · thorough
inputstring
Alias for question.
messagestring
Alias for question.
promptstring
Alias for question.
qstring
Alias for question.
querystring
Alias for question.
question*string
The research question, in natural language. Broad/multi-part is fine — decomposition is the point. Accepts query, q, prompt, text, input, ask, message as aliases.
textstring
Alias for question.
discover_toolsFind tools by describing the data or task. Use when you need to browse, search, look up, or discover what tools exist for: SEC filings, financials, revenue, profit, FDA drugs, adverse events, FRED economic data, Census demographics, BLS jobs/unemployment/inflation, ATTOM real...6 params

Find tools by describing the data or task. Use when you need to browse, search, look up, or discover what tools exist for: SEC filings, financials, revenue, profit, FDA drugs, adverse events, FRED economic data, Census demographics, BLS jobs/unemployment/inflation, ATTOM real...

Parameters* required
descriptionstring
Alias for query.
limitnumber
Maximum number of tools to return (default 20, max 50)
qstring
Alias for query.
query*string
Natural language description of what you want to do (e.g., "analyze housing market trends", "look up FDA drug approvals", "find trade data between countries"). Accepts task, q, description, search...
searchstring
Alias for query.
taskstring
Alias for query.
resolve_entity"What's the ticker for…" / "find the CIK for…" / "what's the LEI for…" / "what's the RxCUI for…" / "look up the ID for…" / "what is X's official identifier" / "who owns X" / "is X a subsidiary of Y" — resolve a user-spoken NAME to the canonical/official identifiers other tools...3 params

"What's the ticker for…" / "find the CIK for…" / "what's the LEI for…" / "what's the RxCUI for…" / "look up the ID for…" / "what is X's official identifier" / "who owns X" / "is X a subsidiary of Y" — resolve a user-spoken NAME to the canonical/official identifiers other tools...

Parameters* required
countrystring
OPTIONAL ISO 3166-1 alpha-2 of the country whose business register you mean ("NO", "FI", "JP", "GB", "FR", "EE", "BR"). Narrows the national-register fan-out and is often the difference between the...
type*string
Entity type: "company" or "drug".one of company · drug
value*string
For company: ticker (AAPL), CIK (0000320193), or name. For drug: brand or generic name (e.g., "ozempic", "metformin"). Pass the ENTITY NAME ONLY — for a bond that is the ISSUER exactly as printed (...
compare_entities"Compare X and Y" / "X vs Y" / "X versus Y" / "which is bigger / better / larger / more profitable" / "rank these companies" / "head to head" — side-by-side comparison of 2–5 companies or drugs in ONE parallel call. ALWAYS PREFER over sequential single-pack lookups when compar...2 params

"Compare X and Y" / "X vs Y" / "X versus Y" / "which is bigger / better / larger / more profitable" / "rank these companies" / "head to head" — side-by-side comparison of 2–5 companies or drugs in ONE parallel call. ALWAYS PREFER over sequential single-pack lookups when compar...

Parameters* required
type*string
Entity type: "company" or "drug".one of company · drug
values*array
For company: 2–5 tickers/CIKs (e.g., ["AAPL","MSFT"]). For drug: 2–5 names (e.g., ["ozempic","mounjaro"]).
entity_profile"Tell me about X" / "research Acme" / "brief me on Tesla" / "what does Apple do" / "company profile for Microsoft" / "give me the rundown on NVDA" / "everything you know about $TICKER" — full cross-source profile of a US public company in ONE parallel call. ALWAYS PREFER over...3 params

"Tell me about X" / "research Acme" / "brief me on Tesla" / "what does Apple do" / "company profile for Microsoft" / "give me the rundown on NVDA" / "everything you know about $TICKER" — full cross-source profile of a US public company in ONE parallel call. ALWAYS PREFER over...

Parameters* required
countrystring
OPTIONAL ISO 3166-1 alpha-2 of the business register you mean ("NO", "FI", "GB", "JP", "FR", "EE", "BR"). Only affects a NAME lookup, and is often what separates the company you mean from a US name...
type*string
"company" or "ticker" — both are accepted and behave identically; `value` can be a ticker, CIK, or company name either way. person/place coming soon.one of company · ticker
value*string
Ticker (e.g., "AAPL"), zero-padded CIK (e.g., "0000320193"), or company name (e.g., "Moderna"). A NAME now resolves through the national business registers as well as SEC EDGAR, so a non-US company...
recent_changes"What's new with X" / "latest on Y" / "what happened to Z this week / month / quarter" / "updates on Acme" / "news on Tesla recently" / "what's happening with Apple" — change feed for a company in the last N days/weeks/months in ONE parallel call. Fans out to SEC EDGAR (filing...3 params

"What's new with X" / "latest on Y" / "what happened to Z this week / month / quarter" / "updates on Acme" / "news on Tesla recently" / "what's happening with Apple" — change feed for a company in the last N days/weeks/months in ONE parallel call. Fans out to SEC EDGAR (filing...

Parameters* required
since*string
Window start — ISO date ("2026-04-01") or relative ("7d", "30d", "3m", "1y"). Use "30d" or "1m" for typical monitoring.
type*string
Entity type. Only "company" supported today.one of company
value*string
Ticker (e.g., "AAPL") or zero-padded CIK (e.g., "0000320193").
validate_claim"Is it true that…" / "fact check" / "verify the claim that…" / "did X really…" / "was Y actually…" / "confirm or refute" / "true or false" — natural-language claim verification against authoritative sources. Use whenever the agent needs to check whether something a user said i...2 params

"Is it true that…" / "fact check" / "verify the claim that…" / "did X really…" / "was Y actually…" / "confirm or refute" / "true or false" — natural-language claim verification against authoritative sources. Use whenever the agent needs to check whether something a user said i...

Parameters* required
claim*string
Natural-language factual claim, e.g., "Apple's FY2024 revenue was $400 billion" or "Microsoft made about $100B in profit last year".
tolerance_pctnumber
Max percent deviation still graded approximately_correct (0.5–50). Overrides the tolerance implied by the claim wording — set 1–2 for hallucination detection where any material error must be refute...
company_factsTYPED, DETERMINISTIC financial facts for a US public company for an EXPLICITLY NAMED reporting period — "Apple revenue for fiscal 2023", "Walmart net income FY2026 Q3", "Microsoft cash at the end of fiscal 2024". PREFER OVER entity_profile / get_company_financials whenever the...9 params

TYPED, DETERMINISTIC financial facts for a US public company for an EXPLICITLY NAMED reporting period — "Apple revenue for fiscal 2023", "Walmart net income FY2026 Q3", "Microsoft cash at the end of fiscal 2024". PREFER OVER entity_profile / get_company_financials whenever the...

Parameters* required
as_ofstring
Past ISO timestamp with timezone. Replay the latest answer actually recorded by that instant; no invented history or live fallback.
attribute*string
Which figure. "revenue" = total consolidated revenue; "net_income" = net income (loss); "cash" = cash and cash equivalents at the period end; "gross_profit"; "operating_income"; "eps_diluted" (dilu...one of revenue · net_income · cash · gross_profit · operating_income · eps_diluted
basisstring
Only "consolidated" in v1. Segment and product-level figures are XBRL-dimensioned and are not reachable through this contract at any concept.one of consolidated
company*string
Ticker ("AAPL"), 10-digit CIK ("0000320193"), or company name. A name that matches two filers equally well returns status "ambiguous" with both named rather than guessing — pass a ticker or CIK to...
exclude_publishersarray
Publisher ids forbidden for fact retrieval: sec, fmp, alphavantage. Case and surrounding whitespace are normalized; unknown ids are refused. Excluding sec currently leaves no eligible fact source a...
freshnessstring
cached (default) permits an eligible stored answer; fresh requires an upstream refresh and never silently falls back to stale data.one of cached · fresh
max_agenumber
Maximum age in seconds of the upstream publication, not our fetch. Older or undated facts are withheld.
period*object
The reporting period, stated explicitly. There is no default and no "latest" — that is the point of this tool.
restatementstring
Default "as_amended" — the latest filed figure for the period, with everything it superseded listed. "as_originally_reported" takes the first filing instead.one of as_amended · as_originally_reported
company_register_searchSearch the NATIONAL BUSINESS REGISTERS by company name and get the register's own id back — a Companies House number, a Norwegian organisasjonsnummer, a Finnish business id, a SIREN, a Japanese corporate number, an Estonian registry code, a CNPJ, or an LEI. Use this when you w...3 params

Search the NATIONAL BUSINESS REGISTERS by company name and get the register's own id back — a Companies House number, a Norwegian organisasjonsnummer, a Finnish business id, a SIREN, a Japanese corporate number, an Estonian registry code, a CNPJ, or an LEI. Use this when you w...

Parameters* required
countrystring
OPTIONAL ISO 3166-1 alpha-2 of the register you mean ("GB", "NO", "FI", "FR", "JP", "EE", "BR"). Narrows the fan-out, and is frequently the difference between an answer and `ambiguous` on a short n...
limitnumber
Maximum candidates to return, 1-50 (default 10). Does not change which registers are asked, only how many rivals come back.
name*string
The company name as you have it, in its own script. Pass it VERBATIM — do not strip the legal form ("Oyj", "AS", "株式会社", "Ltd"): in Japanese the form is a PREFIX as often as a suffix and 株式会社花王 and...
pipeworx_feedbackTell the Pipeworx team something is broken, missing, or needs to exist. Use when a tool returns wrong/stale data (bug), when a tool you wish existed isn't in the catalog (feature/data_gap), or when something worked surprisingly well (praise). ONLY for tools served by this Pipe...4 params

Tell the Pipeworx team something is broken, missing, or needs to exist. Use when a tool returns wrong/stale data (bug), when a tool you wish existed isn't in the catalog (feature/data_gap), or when something worked surprisingly well (praise). ONLY for tools served by this Pipe...

Parameters* required
claim_tokenstring
Read the reply to a report you filed earlier: pass the `pwfb_…` token that filing returned, with no other arguments. Returns the status and, once resolved, what actually changed.
contextobject
Optional structured context: which tool, pack, or vertical this relates to.
messagestring
Your feedback in plain text. Be specific (which tool, what error, what data was missing). 1-2 sentences typical, 2000 chars max.
typestring
bug = something broke or returned wrong data. feature = a new tool or capability you wish existed. data_gap = data Pipeworx does not currently expose. praise = positive note. other = anything else.one of bug · feature · data_gap · praise · other
rememberSave data the agent will need to reuse later — across this conversation or across sessions. Use when you discover something worth carrying forward (a resolved ticker, a target address, a user preference, a research subject) so you don't have to look it up again. Stored as a ke...9 params

Save data the agent will need to reuse later — across this conversation or across sessions. Use when you discover something worth carrying forward (a resolved ticker, a target address, a user preference, a research subject) so you don't have to look it up again. Stored as a ke...

Parameters* required
contentstring
Alias for value.
datastring
Alias for value.
kstring
Alias for key.
key*string
Memory key (e.g., "subject_property", "target_ticker", "user_preference"). Accepts name, k, label as aliases.
labelstring
Alias for key.
namestring
Alias for key.
textstring
Alias for value.
vstring
Alias for value.
value*string
Value to store (any text — findings, addresses, preferences, notes). Accepts content, text, data, v as aliases; a non-string value is stored as JSON.
recallRetrieve a value previously saved via remember, or list all saved keys (omit the key argument). Use to look up context the agent stored earlier — the user's target ticker, an address, prior research notes — without re-deriving it from scratch. Scoped to your identifier (anonym...4 params

Retrieve a value previously saved via remember, or list all saved keys (omit the key argument). Use to look up context the agent stored earlier — the user's target ticker, an address, prior research notes — without re-deriving it from scratch. Scoped to your identifier (anonym...

Parameters* required
kstring
Alias for key.
keystring
Memory key to retrieve (omit to list all keys). Accepts name, k, label as aliases.
labelstring
Alias for key.
namestring
Alias for key.
forgetDelete a previously stored memory by key. Use when context is stale, the task is done, or you want to clear sensitive data the agent saved earlier. Pair with remember and recall.4 params

Delete a previously stored memory by key. Use when context is stale, the task is done, or you want to clear sensitive data the agent saved earlier. Pair with remember and recall.

Parameters* required
kstring
Alias for key.
key*string
Memory key to delete. Accepts name, k, label as aliases.
labelstring
Alias for key.
namestring
Alias for key.
list_packsBrowse all available Pipeworx packs. Returns pack names, categories, tool counts, and gateway URLs. Use to discover data sources or explore what's available.1 params

Browse all available Pipeworx packs. Returns pack names, categories, tool counts, and gateway URLs. Use to discover data sources or explore what's available.

Parameters* required
categorystring
Free-text filter matched against pack slugs, descriptions, and tool names/descriptions — not a fixed taxonomy (e.g. "weather", "pesticide", "sec filings"). Omit to list everything.
get_pack_toolsGet tool definitions for a specific pack (e.g., 'weather', 'polygon-io'). Returns tool names, descriptions, parameters, and requirements. Use before calling a tool to verify its interface.1 params

Get tool definitions for a specific pack (e.g., 'weather', 'polygon-io'). Returns tool names, descriptions, parameters, and requirements. Use before calling a tool to verify its interface.

Parameters* required
slug*string
Pack slug (e.g., weather, pokemon, github)
search_packsSearch Pipeworx packs by keyword or a plain question across pack names, descriptions and tool descriptions (e.g. "weather", "translate", "Colombia procurement contracts awarded to a supplier"). Returns matching packs ranked best-first with each one's matched terms, cost, auth...2 params

Search Pipeworx packs by keyword or a plain question across pack names, descriptions and tool descriptions (e.g. "weather", "translate", "Colombia procurement contracts awarded to a supplier"). Returns matching packs ranked best-first with each one's matched terms, cost, auth...

Parameters* required
limitnumber
Maximum packs to return, best match first (1-200, default 25).
query*string
Keywords or a question naming the data you want. The subject words match (country, system, dataset, topic); names of specific companies or people do not, since no pack describes them.
search_mcp_directorySearch thousands of MCP servers by use case (e.g., 'database', 'email', 'calendar'). Returns community and hosted servers. Use to find tools beyond Pipeworx.3 params

Search thousands of MCP servers by use case (e.g., 'database', 'email', 'calendar'). Returns community and hosted servers. Use to find tools beyond Pipeworx.

Parameters* required
categorystring
Filter by category
limitnumber
Max results (default 10)
query*string
Search query

Sponsors

Readme

Pipeworx

smithery badge

Live data for AI agents. One MCP connection gives your AI access to 1,100+ data sources and 4,600+ tools — SEC filings, FDA adverse events, trade flows, mortgage rates, clinical trials, government contracts, and more.

Pipeworx is not a directory. It's a metered data gateway. The data sources behind it — ATTOM, FRED, SEC EDGAR, ClinicalTrials.gov, UN Comtrade, EPA, BLS — are the same sources analysts and institutions pay thousands to access. Your AI agent gets them through one URL.

Connect

{
  "mcpServers": {
    "pipeworx": {
      "url": "https://gateway.pipeworx.io/mcp"
    }
  }
}

Works with Claude Desktop, Cursor, Windsurf, and any MCP client.

Ask anything

ask_pipeworx("What is the US trade deficit with China?")
→ $1.81 trillion deficit (2024, Census Bureau)

ask_pipeworx("What are the side effects of ozempic?")
→ 54,647 FDA adverse event reports

ask_pipeworx("Get Apple's latest 10-K filing")
→ SEC EDGAR filing data

ask_pipeworx("What's the current 30-year mortgage rate?")
→ FRED MORTGAGE30US series, live data

View the full README on GitHub

Details

Repository
github.com/pipeworx-io/pipeworx
Website
pipeworx.io
Category
Data & Analytics
Transport
HTTP
Registry
MCP registry, active
Prompts
12
Tools verified
Nov 6, 2026

More from pipeworx-io

Related Data & Analytics MCP servers

View all
1seatable avatarSeatableseatable/seatable-mcpMCP server for SeaTable — read, write, search, link, and query data in your bases10stars
2akzar1el avatarWeb Validator by DigestSEOakzar1el/mcp-web-validatorAudit public webpages and supplied markup for HTML, CSS, SEO, JSON-LD, and link issues.9stars
3hasdata avatarHasData Airbnbhasdata/airbnb-mcpAirbnb stays by location and dates, and full listing details, as structured JSON.9stars
4cyanheads avatarOpenstreetmap Mcp Servercyanheads/openstreetmap-mcp-serverGeocode, reverse geocode, and run Overpass spatial queries on OpenStreetMap data.9stars
5acedatacloud avatarNano Banana by Ace Data Cloudacedatacloud/nanobananamcpGenerate and edit Nano Banana images with Ace Data Cloud; retrieve the same task for results.9stars
6paulieb89 avatarUK Property Datapaulieb89/property-sharedUK property data — Land Registry comps, EPC, Rightmove, rental yields, stamp duty, Companies House9stars