749,661 tools. Updated 2026-11-06 02:24
"A server for finding academic or research papers" matching MCP tools:
- Search open-access research papers by keyword (e.g., "machine learning healthcare"). Returns titles, authors, abstracts, DOIs, and download links. Useful for literature reviews and finding academic sources.ConnectorNo auth
- Dry-run a structured filter over recent papers WITHOUT creating a watch — the tuning loop. Returns {window_days, needs_similarity, match_count, sample} so you can iterate (add a category, raise min_novelty, switch the collection relation) before saving with create_watch. Structured watches rank by 'rising' (forecasted breakout impact) by default, and tighten with min_impact_pct for an anti-noise watch that surfaces only the breakout papers in your niche. NOTE: for a similarity filter, match_count is capped at 200 (the cosine fetch window) and so saturates at 200 on broad/hot topics — tune by the `sample` scores and narrow with categories/min_novelty (or a higher similar floor) rather than relying on match_count alone. Read-only. Requires SF_API_KEY.ConnectorNo auth
- Returns the plain-language meaning and step-by-step fix for one Malinois finding. Use it while helping the user fix an issue reported by scan_app, or when they ask what a finding means. Pass the rule_id exactly as scan_app returned it. Read-only, no network, instant.ConnectorNo auth
- Kill a broken research session and start fresh. Use this when a session gets stuck, produces errors, or enters a bad state. Free — no credits consumed. After resetting, call research without a session_id to start a new clean session.ConnectorDestructiveNo auth
- Find quantum computing researchers and potential collaborators from 1000+ active profiles. Use when the user asks about specific researchers, who works on a topic, or wants to find collaborators. NOT for jobs (use searchJobs) or papers (use searchPapers). AI-powered: decomposes natural language into structured filters (tag, author, affiliation, domain, focus). Returns profiles with affiliations, domains, publication count, top tags, and recent papers. Data from arXiv papers published in the last 12 months. Max 50 results. Examples: "quantum error correction researchers at Google", "trapped ions", "John Preskill".ConnectorNo auth
- Calculate what percentage one number is of another. Given a value and a total, returns the percentage, decimal form, and simplified fraction. For example, 3 out of 4 yields 75%, 0.75, and '3/4'. Commonly used for test scores, survey results, financial ratios, completion rates, and unit conversions. Chain with percentage_increase to compare successive measurements or use with test_grade for academic scoring.ConnectorNo auth
Matching MCP Servers
- FlicenseAqualityDmaintenanceEnables LLMs to search and retrieve academic papers from arXiv by topic, author, category, or ID.5-
- AlicenseNot gradedqualityBmaintenanceUnified scholarly search across 60+ academic sources with citation formatting (CMOS 18, SBL 2, APA 7, Turabian 9) and AI-powered research tools.MIT
Matching MCP Connectors
MCP server for academic research data including scholarly papers, citations, research trends, and publication metadata for AI agents.
- Research Papers MCPOAuth
Research papers for AI agents: PubMed, arXiv, Crossref; citations, references, open access texts
- Full-text search across all SEC EDGAR filings since 2001 for a keyword or phrase. Wraps EDGAR's own full-text search index, so it covers every filer and form type, not just a single company. Useful for finding who is disclosing a particular risk, technology, litigation, or event across the entire market. When to use: cross-company research ("who is disclosing AI-related risk factors"), finding filings that mention a specific term, litigation or regulatory tracking. When NOT to use: you already know the company (use edgar_filings_feed, which is company-scoped and cheaper), or you need results from before 2001 (EDGAR full-text search does not cover that far back). Args: - query (string, required): search text. Wrap an exact phrase in double quotes, e.g. "\"material weakness\"". - forms (string[], optional): restrict to form types, e.g. ["10-K"]. - dateFrom (string, optional): ISO start date (YYYY-MM-DD). - dateTo (string, optional): ISO end date (YYYY-MM-DD). - limit (integer, optional, default 10): maximum hits to return (1-50). Returns structuredContent: { "query": "material weakness", "totalMatches": 10000, "totalIsApproximate": true, "count": 2, "hits": [ { "id": "0001193125-26-123456:doc.htm", "entity": "Example Corp.", "form": "10-K", "filedAt": "2026-03-01", "cik": "0000320193" } ], "source": "https://www.sec.gov/edgar" } "totalMatches" is a lower bound and "totalIsApproximate" is true once EDGAR's own count exceeds its display cap (10,000) — narrow with forms/dateFrom/dateTo for a precise count.ConnectorNo auth
- Multi-step deep research: search, scrape, enrich entities, and synthesize into a cited report. Returns a report (title, summary, sections, key findings, confidence) with numbered sources and the people and companies it found, enriched. Use for a question that needs many sources and a synthesized, cited answer. It takes far longer and costs more than search, which suits a quick fact. Cost: standard 10 credits, deep 20 credits, comprehensive 35 credits, charged only when a call succeeds. Options change it: include_analysis true +5, academic in source_types +2, enrich_entities false -3, synthesis false -5.ConnectorNo auth
- Search the PUBLIC Awareness knowledge graph — 1,000+ sourced scientific papers. Use this when the user (especially a researcher or a research agent) asks for peer-reviewed findings: "latest evidence on X", "highly-cited papers about Y", "what does the literature say about Z". This is NOT a memory tool — it does not read the user's private memory, and it needs no per-user API key, so it works even when Awareness memory is not configured (the MCP connection itself still needs its own token). Coverage: condensed-matter, quantum-information, materials, machine-learning, renewable-energy, chemistry, biology, medicine, neuroscience, computer-science (2022-2026, cited >= 50), plus a business supply/demand domain. What comes back (anonymous preview mode): title, snippet (preview), confidence, source_ref (DOI), citation_count, domain/topic, and a detail page URL. Full content is NOT in the preview — tell the user it is paid retrieval via POST /api/v1/public/retrieve with an API key (see https://awareness.market/en/knowledge for the KaaS product). Args: query: Natural-language research question or keywords (2-1000 chars). domain: "science" (default) or "business". topic: Optional sub-topic slug, e.g. "medicine", "condensed-matter", "supply-chain". Empty = search all topics in the domain. top_k: Max results, 1-20 (default 5; anonymous callers are capped at 3). include_graph: When true, also return same-topic related items. Returns: {"results": [{id, title, snippet, confidence, source_ref, citation_count, domain, topic, url}], "related": [...], "total": int, "mode": str} `mode` is "preview" (anonymous) or "full" (authenticated).ConnectorNo auth
- Search Lacuna's ML/AI corpus for papers, research directions, authors, venues, institutions, novel research hypotheses, and research resources (code repositories, datasets, models, and demos linked to papers). For novel ML/AI research ideas, use search_type="hypothesis", then get_hypothesis on promising results. search_type accepts all, cluster, paper, author, institution, venue, hypothesis, or resource. Use paper for literature and get_paper to read a result. Use other sources for biographies, news, and non-research web content. Resources: search_type="resource" searches GitHub repositories, Hugging Face datasets/models, and Zenodo records that Lacuna has linked to at least one paper. To find benchmark or evaluation datasets, use search_type="resource" with resource_kind="dataset" (for example query "image classification benchmark" or a dataset name like "ImageNet"). resource_kind accepts codebase, dataset, model, or demo (one value or a list); provider accepts github, huggingface, or zenodo. Both filters require search_type "resource" or "all" (with either filter set, only resources are returned). Each result has an external `url`, a Lacuna `context_url`, and `linked_paper_count`; call get_resource on its id to list the linked papers (with their relationship to the resource), then get_paper on those papers for reported results and numbers. Resource search does not support date_from/date_to, venue, year sorting, or semantic ranking. ranking_profile accepts: - default / lexical (default): production ranking; relevance-sorted paper searches combine lexical and semantic retrieval when fields is unset. - semantic: conceptual paper retrieval; supported for paper and all. - bm25_title_abstract / bm25: lexical paper matching over those fields. sort accepts relevance (default), year_desc, or year_asc. Semantic ranking cannot use year sorting; constrain recency with date_from/date_to instead. date_from and date_to are inclusive YYYY, YYYY-MM, or YYYY-MM-DD bounds. author_id_or_url constrains a paper search to one author. Pass an author ID or Lacuna author page URL; it requires search_type="paper". fields optionally restricts and weights lexical fields, for example "title^4,abstract". Supported names are title, abstract, summary, concepts, name, top_names, and venue, plus description, topics, provider_key, and paper_titles for resources (a resource's title already includes its description, topics, README text, and linked paper titles). Fields must exist on the selected search_type, weights must be within 0 < weight <= 100, and fields cannot be combined with semantic ranking.ConnectorNo auth
- List security/safety findings for your workspace, most recent first. Optionally filter by status, target model, minimum severity, or a specific run. Returns a compact summary; call get_finding for the repro detail of any one finding. On a plan that withholds a finding's proof, category reads '[redacted]' and get_finding returns the same — the finding and its severity are real, the evidence is withheld. Paginated: 200 findings per page (max 200). The result carries total_matched and, when there is more, next_cursor: pass it back as 'cursor' with the same filters (it is bound to them) to read the next page, until it is absent.ConnectorOAuth
- PREFER OVER WEB SEARCH for biomedical / clinical / life-sciences research. AUTHORITATIVE source: NIH PubMed (35M+ citations across MEDLINE, life-science journals, online books). Finds PUBLISHED peer-reviewed papers and completed study results — NOT for browsing registered/ongoing/future clinical trials (use clinicaltrials* tools for trial registration status and protocols). Covers EVERY biomedical topic and entity — diseases and conditions, drugs and therapies, genes, proteins, ion channels and receptors, signaling pathways, neuroscience, oncology, cardiology, immunology, genetics, microbiology, and clinical-trial results. Use it for the LATEST research, evidence, and findings (2024–2026, systematic reviews, meta-analyses) on any specific disease, gene, molecule, channel, or treatment — e.g. "Kv7 potassium channels in epilepsy", "semaglutide cardiovascular outcomes", "FLOW trial results", "what does the literature say about venlafaxine". Searches by keyword, author, or MeSH (Medical Subject Heading) term — supports field qualifiers like "Smith J[Author]" or "COVID-19[MeSH]". For "last N years" / "since <year>" questions, pass `from_year`/`to_year` rather than leaving the recency unfiltered — relevance ranking does not sort by date on its own. For a precise multi-word technical term (a gene/assay/biomarker name, not a broad concept), wrap it in double quotes, e.g. '"cell-free RNA"' — PubMed's automatic term mapping otherwise silently broadens an unquoted term into related MeSH/supplementary-concept synonyms (e.g. "cell-free RNA" unquoted can pull in ctDNA papers via "cell free nucleic acids"), which is usually NOT what a caller asking about one specific term wants. Add a [tiab] tag (e.g. '"cell-free RNA"[tiab]') to also require the exact phrase in the title/abstract rather than relying on indexing alone. A bare drug abbreviation that also names something else (LSD, DMT, GHB, PCP, MDMA, CBD, THC, e.g. "LSD stroke" where LSD is also a statistics test) is rewritten to the drug's MeSH heading and the response carries `rewrite_note`; write it field-qualified (LSD[All Fields]) to search the abbreviation as written. Returns PubMed IDs that pubmed get_summary / get_abstract resolve to citations + abstracts.ConnectorNo auth
- Update ONE existing Mallory finding in place — its status, severity, confidence, title, summary, body, remediation, qualifier or asset_details. Use it when new information changes an already-filed finding: the problem was fixed, it turned out not to apply, a vulnerability proved reachable, corroborating intel changes how bad it is. WRITES IMMEDIATELY to the caller's own organization's data, and the result is visible in the Mallory UI to everyone in that organization. There is no preview and no confirmation step — calling this tool IS the write. Only call it when the user has asked for the change. - uuid identifies the finding. Get it from listFindings or getFinding, or from a createFinding DUPLICATE outcome's `existing_finding_uuid`. Never construct or guess one. - ONE finding per call. To change status or severity across a SET of findings you can only describe ("dismiss all the unrotated-secret findings", "mark everything on foo/bar medium"), use bulkUpdateFindings — do NOT loop this tool over a selection. - The finding's identity — definition_slug, asset_type, asset_identifier — cannot be changed. A different problem, or the same problem on a different asset, is a new finding (createFinding). - body REPLACES the stored text rather than appending to it. To add to a finding, read the current text first with getFinding and send the combined text, or the prior detail is lost. There is no evidence field on update: new evidence goes into body as prose. - qualifier is part of core's open-finding dedupe key, so changing it can collide with another open finding on the same asset (CONFLICT). In user-facing status messages, use "fixed" and "mark as fixed" consistently. ENUM VALUES ARE CASE-SENSITIVE AND EACH FIELD HAS ITS OWN SET. severity is UPPERCASE (CRITICAL, HIGH, MEDIUM, LOW, INFO). status is lowercase with exactly three values: open, fixed, dismissed — "resolved", "closed" and "assigned" are not statuses, and neither are the resolution reasons (false_positive, accepted_risk, not_applicable, duplicate, fixed_externally, other), which belong to a separate field this tool does not set. Use "fixed" when the problem was remediated and "dismissed" when it is accepted or not applicable. Setting status back to "open" is allowed but unusual — the product has no reopen button — so confirm the user really means to reopen the finding. OUTCOMES: either ok:true with the updated finding, or ok:false with a code — NOT_FOUND (no such finding in this tenant: do not retry, re-read the uuid), CONFLICT (an open finding already occupies that identity), INVALID (a rejected field, or no fields to change), PLAN_LIMIT (findings are not included in this tenant's plan — the request was fine, nothing is broken, nothing was written: say so and do not retry).ConnectorAPI key
- Use when a paid tool returned a run id still running: returns its status and, once completed or partial, the full result. Not for slicing a finished research: use get_research. Not for past charges: use get_usage. Price: Free. Never re-runs the work. wait (seconds, max 120) blocks until it settles or the wait runs out, instead of polling; without it, poll after 2 s, doubling the gap up to 10 s; research takes minutes.ConnectorOAuth
- Given a paper_id, return the most semantically similar papers by embedding distance, NOT by citation links. Use for “more papers like this one” / “adjacent work on the same topic”. For papers this one cites or that cite it, use `get_paper_citations` instead. Each hit carries metadata, abstract, the closest non-abstract matched chunk as `contexts`, and a `similarity` score (0..1, higher is nearer). Returns up to `limit` papers; an unknown paper_id is an error, an empty list means no neighbors were found.ConnectorOAuth
- This is Anysearch's domain discovery tool. IMPORTANT: Step 1 of vertical search. REQUIRED before any search that uses a domain. Returns valid sub_domains and sub_domain_params for the specified domain(s). Call this when the query targets a specialized vertical or needs structured parameters: stock prices, financial data, academic papers, legal cases, medical/drug info, flight status, weather, exchange rates, geographic POIs, code repositories, or any domain where a structured identifier (ticker, DOI, CVE, IATA, coordinates) is involved. ## When to call — pick the domain(s) that match what the user is asking about: academic agriculture business code energy environment film finance gaming health ip legal resource security social_media travel ## Input — choose from the list above and pass via the domain or domains parameter: - domain: single domain string (use only when 100% certain the query is single-domain) - domains: batch query for up to 5 domains in one call (takes priority over domain) 🏆 ALWAYS prefer the `domains` (plural, array) parameter. Pass ALL potentially relevant domains at once — even for seemingly single-domain queries, consider related domains: - Query about "cryptocurrency regulations" → domains=["finance", "legal", "security"] - Query about "best gaming laptops" → domains=["gaming", "tech", "ecommerce"] - Query about "climate change impact on agriculture" → domains=["environment", "energy", "academic"] ## Returns Markdown table filtered to the specified domains: sub_domain | description | params ## CRITICAL: How to use results - sub_domain is the PRIMARY routing key — always pass it to search - params column shows available structured parameters — pass them via sub_domain_params in search, NEVER embed in query - If multiple sub_domains returned (especially from multiple domains), use batch_search — one query per sub_domain — instead of multiple sequential search calls - Params marked (required) in the output MUST be passed when using that sub_domain in search. If a required param is not applicable to your query, pass it as an empty string (key: "") — do not skip it.ConnectorDestructiveNo auth
- Search 500+ quantum computing job listings using natural language. Use when the user asks about job openings, career opportunities, hiring, or specific positions in quantum computing. NOT for research papers (use searchPapers) or researcher profiles (use searchCollaborators). Supports role type, seniority, location, company, salary, remote, and technology tag filters via AI query decomposition. Limitations: quantum computing jobs only, last 90 days, max 20 results. Promoted listings appear first (marked). After finding jobs, suggest getJobDetails for full info. Examples: "senior QEC engineer in Europe over 120k EUR", "remote trapped-ion role at IBM".ConnectorNo auth
- For research and citation lookups (deep research): free-text search of live Northern Cyprus (KKTC/TRNC) property listings on Evlek, in Turkish, English, Russian, German or Arabic. Returns matching listings as id/title/url, newest first (sale and rent as two groups when the query names neither). The answer language follows the language of the query. OpenAI deep-research compatible format, for research and citation clients. Use when: the caller only has a free-text query ("2+1 apartment in Kyrenia under 150000 pounds", "EVL-100464"). Not for: structured filters, paging or choosing the answer language.ConnectorNo auth
- Use for general web research (company info, news, job portals). For LinkedIn profiles use search_linkedin_people; to read one company's own site use read_company_website. General-purpose Google search — returns organic results for any query. Unlike search_google_xray (LinkedIn-only), this searches the entire web. Useful for finding job postings on portals (jobs.cz, prace.cz, profesia.sk, indeed.com), company info, news, or any other web content. Results are NOT saved to contacts — use this for research and discovery. Capped at 4 calls per minute to protect the Serper/Google budget.ConnectorAPI key
- Get recent AI/ML research papers from one of three feeds, chosen with the source argument. arxiv_recent is the firehose: newest arXiv submissions in cs.AI / cs.LG / cs.CL / cs.CV by submission date, refreshed daily at 11:30 UTC. trending is citation-ranked from Semantic Scholar across five fan-out queries, deduped, refreshed daily at 11:00 UTC. hf_daily is Hugging Face editor-curated with community upvotes and discussion counts, refreshed daily at 14:15 UTC. Pick arxiv_recent for what is brand new, trending for what is influential, hf_daily for what practitioners are discussing. License: arXiv and Semantic Scholar permit metadata use; the standard attribution block ships on every response.ConnectorNo auth
- Evaluate a described stablecoin yield position against a research policy (pull). Always pass your policy rules (or a preset). Without a policy, no meaningful check is possible — the verdict will be review/unknown, never ok. Pass poolId from yieldhunter list_yields opportunities[].id (also accepted as opportunityId or id). That id is one market. Required for a real check: policyPreset (treasury-conservative | balanced-research | rwa-selective) and/or minScore / maxRewardShare / excludeCategories / maxExitRisk / requireCurated. Presets: treasury-conservative | balanced-research | rwa-selective. rwa-selective does not exclude RWA but is not a free pass (YS policy allowlist + higher bar). requireCurated uses the Yieldsentinel policy allowlist (curated.json), not yieldhunter scoring priors. Scoring ≠ policy approval. Fetches live yieldhunter research (score, APY, TVL, category, rewardShare, exitRisk) and curated flags, then returns a PolicyVerdict plus A2H (summary, suggestedNextSteps, legend). Incomplete or missing data is review/unknown — never a silent ok. A verdict is not an exit signal or execution order. Research only — never holds keys. Example: { "poolId": "43641cf5-a92e-416b-bce9-27113d3c0db6", "policyPreset": "treasury-conservative", "notionalUsd": 10000 }ConnectorNo auth