fetchaller
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| HTTP_PORT | No | Server port (1-65535) | 6000 |
| JWT_SECRET | No | Secret for OAuth tokens (derived from API key if not set) | |
| MCP_API_KEY | No | Bearer token for authentication (required for HTTP mode) | |
| MCP_SERVER_URL | No | Public URL for OAuth | http://localhost:$PORT |
| MOUSER_API_KEY | No | Mouser Search API key (free registration) | |
| DIGIKEY_CLIENT_ID | No | DigiKey API client ID (free registration) | |
| RATE_LIMIT_REQUESTS | No | Requests/minute per IP | 100 |
| DIGIKEY_CLIENT_SECRET | No | DigiKey API client secret |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| fetchA | Fetch any URL and return the page content as clean markdown. Handles HTML, JSON, XML, CSV, and PDF files. Use this tool for reading/fetching web pages - it has no domain restrictions. For discovering URLs via search, use the search tool. For reading URL content, use this tool. |
| browse_redditB | Browse a subreddit's posts. Returns metadata and URLs. Use mcp__fetchaller__fetch to read full post content. |
| search_redditB | Search Reddit posts. Returns metadata and URLs. Use mcp__fetchaller__fetch to read full post content. |
| searchA | Search the web for titles, URLs, and snippets, then use fetch to read full pages. Specify provider: google (default choice, automatic fallback to DDG then Brave on failure), ddg, brave, or all (merge all three). Sources and fallback are disclosed. Google and Brave support pages 1-100; DDG supports 1-10 and is skipped beyond page 10 in all/fallback. Brave challenge recovery may take up to three minutes. |
| get_aliexpress_productA | Get AliExpress product details including price, specifications, ratings, and recent reviews. Accepts a numeric product ID or full URL. |
| search_aliexpressA | Search AliExpress products. Returns product listings with prices, ratings, and links. Best-effort — may fail if anti-bot protection triggers. |
| get_alibaba_productA | Get Alibaba.com B2B product details including tiered pricing, MOQ, lead times, supplier info, and specifications. Accepts a numeric product ID or full URL. |
| search_alibabaB | Search Alibaba.com B2B products. Returns supplier listings with tiered pricing, MOQ, and supplier info. |
| search_marketplaceA | Search Kijiji, Craigslist, and Facebook Marketplace simultaneously. Takes human-readable parameters (city name, category, price range) and returns grouped results from all platforms. Use fetch(url) to get full listing details for any result URL. |
| search_linkedin_jobsA | Search LinkedIn's public job board (no account needed). Filter by keywords, location, date posted, remote/hybrid/on-site, experience level, job type, and minimum salary. Returns title, company, location, posting date, and a linkedin.com/jobs/view URL. Call get_linkedin_job(job_id) for the full description. |
| get_linkedin_jobB | Get the full public detail for one LinkedIn job posting: description, seniority, employment type, job function, industries, and applicant count. Applying still requires a LinkedIn account. |
| get_unifi_manualA | Download a Ubiquiti UniFi installation guide (ui.com/qig/) as a readable document. Ubiquiti publishes no PDF and draws every word of these guides as vector artwork, so the guide cannot be read as text — this rebuilds its pages and writes them to disk. Use 'pdf' for one combined file, or 'png' to get one image per page that can be viewed directly. For a device's specifications or price, fetch its store or techspecs.ui.com page instead. |
| search_eightfold_jobsA | Search a company career site hosted by Eightfold AI — Microsoft, Netflix, PayPal, or any other Eightfold tenant by board URL. Filter by job title and location. The board ranks rather than filters, so the title is re-applied against each posting's own name and the number dropped is reported. Use fetch() on a returned posting URL for the full description. |
| search_workday_jobsA | Search any Workday board (*.myworkdayjobs.com) by job title and location — Adobe, NVIDIA, Salesforce, Autodesk, CrowdStrike, ServiceTitan, Motorola Solutions, or any tenant by board URL. Resolves the tenant's own location facet, whatever it is named, and filters the title client-side because Workday's searchText is unreliable (on some tenants it silently drops real matches). |
| search_oracle_jobsA | Search a career site running on Oracle Recruiting Cloud (Oracle Fusion) — Oracle and Uber today, or any ORC tenant by careers URL or Fusion host. Returns the full posting text, location, department, and job family. The board filters by country but ignores city names, so a city is matched against each posting here. |
| search_amazon_jobsA | Search amazon.jobs by title, location, and job category. Amazon publishes pay bands inline where local law requires it (including Canada), and those are surfaced as a Pay field. Its own search is fuzzy — a "product designer" query returns engineering reqs — so title and location are both re-applied against each posting. |
| search_google_jobsA | Search Google's own careers board by job title and location. Google's free-text matching is very loose — a "product designer" search in Canada reports 38 matches of which two have a matching title — so each posting's own title and location are re-checked and both counts are reported separately. |
| search_apple_jobsA | Search jobs.apple.com by title and location. A place name is resolved to Apple's own location code automatically. Country scope comes from |
| search_gojobsA | Search gojobs.gov.on.ca, the Ontario Public Service (OPS) careers board. Every posting is an Ontario government job. The board has NO keyword search of its own — its only text input is an exact Job ID — so |
| get_gojobs_jobA | Full detail for one Ontario Public Service posting by its numeric Job ID. Reports the competition status, which can say a job is filled while the posting still reads as open. |
| search_indeedA | Search ca.indeed.com. Carries salary bands on most result cards, and get_indeed_job will read the full body of any result — including postings a UKG or PeopleSoft careers site will not serve. Returns one page (~15 postings) per query: every deeper offset returns Indeed's sign-in wall, so refining the query changes which postings appear rather than how many. |
| get_indeed_jobA | Full detail for one Indeed posting: description, salary band, employment type, posting age, and whether Indeed marks it expired (an expiry date only when the page publishes one; Indeed stopped in November 2026). Use this to read a body that a UKG or PeopleSoft careers site gates behind a session. |
| search_jobbankA | Search jobbank.gc.ca, the federal Job Bank — the highest-volume Canadian board, with salary published on most listings. A place name is resolved to Job Bank's own numeric city id first, because the board silently ignores an unresolved location and returns the whole country (64,000+ postings) as an ordinary successful search. Job Bank searches a RADIUS around a city, so nearby towns are included by design and the radius used is always reported. |
| search_gcjobsA | Search GC Jobs (emploisfp-psjobs.cfp-psc.gc.ca), the federal public service board — the only route to Government of Canada postings, which a plain fetch of the site cannot read (it returns a 'JavaScript must be enabled' shell over zero postings). Title, location, organization, minimum salary and language are real board filters, sent the way the board's own form sends them and confirmed against the page's echo of what it applied; title, location and salary are re-checked here. Rows come back soonest-closing first. Eligibility ('Who can apply') is not on the listing — many federal processes are restricted to current public servants, citizens, or a named area — so read a posting with get_gcjobs_job before relying on it. Give at least one filter. |
| get_gcjobs_jobA | Full detail for one GC Jobs posting by the numeric poster ID in its URL. Reports 'Who can apply' first — the eligibility line that decides whether a federal posting is open to the reader — flags a posting whose closing date has passed (the board still serves 2001-era postings as though live), and, for the third of postings the hiring organization hosts on its own site, returns the outbound URL instead of an empty record. |
| search_meta_jobsA | Search metacareers.com by title and office. Meta spells its offices "Vancouver, Canada" rather than "Vancouver, BC"; a place name is matched against its real office list and the list is returned when nothing matches. |
| search_uber_jobsA | Search Uber's job board by title and location. Uber runs on Oracle Recruiting, which answers anonymously with the full posting text, so results carry title, department, team, level, location, and description. |
| search_realtorA | Search Canadian homes for sale or rent on realtor.ca with full filters (location, price, beds, baths, property/building type, ownership). Returns listings with price, address, beds/baths, size, agent and a realtor.ca URL. Call fetch(url) on a listing URL for the full description, every property detail, and similar nearby homes. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 28 tools
The generic fetch/search pair is clean, and most verticals (Reddit, Alibaba, AliExpress, realtor, UniFi) are clearly distinct. But the surface carries 13 job-board searchers plus several generic ATS searchers (eightfold, workday, oracle), and search_oracle_jobs explicitly covers Uber while search_uber_jobs also exists — a direct overlap an agent must reason through. Descriptions disambiguate well, but selection depends on knowing which board hosts which employer.
Almost everything follows a verb_noun snake_case pattern (search_* / get_*, grouped by source), which is highly predictable. The deviations are the bare verbs `fetch` and `search`, plus `browse_reddit` where sibling sources use `search_reddit` — same concept, two different verbs.
28 tools is heavy and sits above the comfortable 15-tool band, largely because each job board got its own search tool. Each tool is scoped to a real, distinct source, so nothing is gratuitous, but the sheer breadth imposes a discovery cost on the agent.
Generic fetch/search backs every vertical, so agents can always fall back to reading a URL, and the highest-value boards even get dedicated get_* detail tools (LinkedIn, Indeed, gojobs, gcjobs). Gaps are minor: no per-posting detail tool for the ATS boards (Workday, Eightfold, Oracle, Job Bank) and no dedicated Reddit/Marketplace item reader, both mitigated by documented fetch(url) workarounds.