Skip to main content
Glama
466,289 tools. Updated 2026-08-19 12:22

"Pi-hole" matching MCP tools:

  • Search research grants from the scite grants database (NIH RePORTER, NSF, SBIR/STTR, Wellcome, EU, and more). Use this tool to find grants by research topic, PI, organization, agency, or funding keywords. Returns grants with title, a short abstract preview, agency, organization, PI, country, dates, awardAmount, tags, and externalLink. Highlighted `<strong>...</strong>` fragments indicate which fields matched the query. **Grouping.** Resolute groups related grants under one shared slug (e.g. NIH subprojects of one center grant, or renewals of the same award). Each search result returns **only one representative grant** per group. `grantsInGroup` tells you how many total grants exist in the group; `siblingGrantIds` (when present) lists the other grant ids in the group. To pull the full record for a specific sibling, call `get_grant` with its id — do not re-search. **Abstract in search is a ~300-char highlighted preview, not the full text.** Call `get_grant` when you need the full abstract (often 1-3 KB) or source-specific identifiers (`awardYear`, `agencyTrackingNumber`, `contract`, `nihProgramCode`, `nihrApplicationId`). If the search result already contains the fields you need, do not call `get_grant`. **Parameters:** - q: Search query string (keywords, PI name, organization, agency, etc.) - f: Space-delimited filters in `field:"value"` format (e.g. `agency:"NIH" country:"United States"`) - p: Page number (default: 1) - s: Sort field (default: _relevance). Options: - _relevance: relevance score (sortDir ignored) - awardStartDate: grant start date - awardCloseDate: grant close date - awardNoticeDate: grant notice date - awardAmount: total award amount - employeeCount: PI employee count - sortDir: Sort direction, asc or desc (default: desc). Ignored when s is _relevance. **Returns:** Grants with id, title, abstract snippet, agency, organization, piName, country, award dates, awardAmount, tags, groupSlug, and grantsInGroup.
    Connector
  • Full French company file in ONE call, paying only for the blocks you ask for — for when you need several things about the same company and do not want to chain calls. The identity base is $0.005; add any of etablissements, alertes_bodacc, finances, marches_publics, marches_publics_ue, lobbying, risques_industriels, agrements, pi, documents, facturation_prep, score. Each block costs exactly what its dedicated endpoint costs, and the total is capped at $0.35. Any block that cannot be served is NAMED with a reason from a closed list: aucune_donnee (a negative answer, e.g. no patents), non_diffusible (GDPR/partial disclosure) or panne_amont (upstream register down). If EVERY requested block is down, the call returns 503 and nothing is charged. For a verdict rather than raw blocks, use get_french_company_intelligence ($1.00). Paid via x402 in USDC or EURC.
    Connector
  • "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 require as input. Use FIRST whenever you have a name but need an ID. SUPPORTED TYPES: "company" (cross-source identity spine: 10-digit CIK + ticker + company_name from SEC EDGAR, legal-entity LEI from GLEIF with parent/ultimate-parent/children ownership when the LEI resolves, and security FIGI from OpenFIGI when a ticker is implied; every identifier is labelled with the source that established it, and an identifier that could NOT be resolved is stated explicitly under `unresolved` rather than omitted — accepts ticker, CIK, ISIN, or company name as input; an ISIN like "CH0038863350" resolves to the LEGAL ENTITY that issued the security via the GLEIF ISIN-to-LEI mapping, covering non-US issuers EDGAR cannot reach), "drug" (returns RxCUI + ingredient + brand from RxNorm + pipeworx://rxnorm/concept/{rxcui} citation; accepts brand or generic name). LEI/FIGI enrichment degrades gracefully — if GLEIF or OpenFIGI is unavailable, the EDGAR identifiers still return. Each call cascades through several lookup endpoints internally — using resolve_entity replaces 2-3 manual lookups.
    Connector
  • Ripley — the MCP delegation surface over Fastio's RAG agent. Ripley is read-only for storage CONTENT: it answers natural-language questions about workspace/share files & folders (with citations) and never creates/edits/deletes your files — for content writes, call the primitive MCP tools directly. It DOES create/manage chat threads (chat-create/chat-update/chat-delete/message-send) and can generate shares (share-generate). Prefer Ripley over issuing many primitive reads: ask one NL question and let the server-side agent search + synthesize. Quick start: action='ask' (question + profile) → returns {answer_text, citations, chat_id, message_id, web_url}; action='status' for an engineered workspace-status summary. Lower-level chat/message actions remain for multi-turn control. Call action='describe' for the full action/param reference. Destructive: chat-delete. Side effects: ask/status/chat-create/message-send consume credits; chat-cancel terminates an in-progress message (partial tokens billed; idempotent). Verbosity (detail param): chat-list/message-list default to terse (compact rows). chat-details/message-details default to full (drill-down). Pass an explicit detail='standard'|'full' to override (best-effort: chat/message/activity endpoints may not yet honor detail server-side).
    Connector
  • Dismiss the red-team finding that blocks a goal from starting, when you disagree with the verdict. Requires a reason of at least 80 characters explaining why the counterexample does not apply. The dismissal is recorded in goal history and surfaced in goal-get, so "agent overrode the gate" stays distinguishable from "no hole was found". Prefer fixing the acceptance criteria via goal-add-criterion — dismissing leaves the hole open.
    Connector
  • Fetch the Auditable Research File behind one of the caller's own agent runs — the complete evidence chain an examiner asks for: the originating prompt, every tool the agent called in order, every `fact_id` it cited, every human approval, and which models were used. Assembled from the immutable audit ledger written as the run executed; nothing here is reconstructed or inferred. Name the subject EITHER way, and pass exactly one: `report_id` (a report you wrote or found — from `create_report`, `list_my_reports` or `search_reports`) or `run_id` (from `list_agent_runs`). Naming a REPORT is the richer call: it resolves the run behind that report AND adds two sections a run's ledger cannot carry — `human_review` (each figure a HUMAN verified, corrected, rejected or sourced externally, with who and when) and `sources` (the SEC filing, form, period and filed date behind each cited fact_id). It also echoes the resolved `run_id`. A run-keyed call omits both, because a run may produce several reports and 'the report for this run' has no honest answer; empty or absent there means NOT RESOLVED, never 'no sources'. `format: "pdf"` returns the SAME assembled file as a branded compliance PDF instead of inline JSON — a 15-minute presigned download URL (`url` + `filename`) for the human-facing artifact (cover with the completeness verdict, evidence chain table, provenance with clickable sec.gov links). The PDF is rendered fresh on every call — never cached — because an in-flight run's ledger can gain entries, and a stale 'complete' verdict is exactly the lie this document exists to prevent. ⚠️ ALWAYS READ `completeness` FIRST AND REPORT IT. `completeness.complete` is computed from the ledger, and `completeness.gaps` names every hole found — an irreversible action taken with no named approver, a state-changing action that cited no fact_id, an unrecorded model, a failed step. If you present this run as evidence, present the gaps too; a chain with holes that is quoted as if whole is the one thing this artifact exists to prevent. ⚠️ `found: false` IS NOT A FINDING ABOUT THE WORK. It is returned (not as an error) for an unknown id, an id belonging to another customer, and a report with no run on record — deliberately indistinguishable, so no caller can probe which. It means we hold no audit trail under that id. It does NOT mean the report is unaudited, unverified, or that the id does not exist, and it must never be reported that way. Tier: sp500+ (sample rejected).
    Connector

Matching MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    Connects AI assistants to Pi-hole network-wide ad blocker, enabling monitoring of DNS traffic statistics, controlling blocking settings, managing whitelist/blacklist domains, viewing query logs, and performing maintenance tasks through natural language.
    16
    78
    6
    MIT

Matching MCP Connectors

  • Shared distillation cache for AI agents — every fetch ~73-89% fewer tokens via a shared cache.

  • BJJ video analysis — YOLO pose detection, AI technique analysis, and highlight reels.

  • Executes a Strale capability by slug and returns the result. Use this when you need to perform any verification, validation, lookup, or data extraction from the capability registry. Call strale_search first to find the right slug and required input fields. Returns a result object with the capability output, latency, price charged, and data provenance. Several capabilities are free without an API key (10/day limit) — strale_search reports which. Paid capabilities debit from the wallet — check strale_balance first for high-value calls.
    Connector
  • [cost: external_io (DNS via Cloudflare + Google; TLS handshake + a SIP OPTIONS keepalive to public targets when applicable) | read-only | rate-limited per IP: 10/min, 200/day] Walk DNS the same way a SIP UA does (RFC 3263 §4.1): NAPTR → SRV → A/AAAA. Given a SIP URI ("sip:example.com"), bare hostname ("example.com"), or "host:port" string, return the records that exist and the resolution ladder a UA would try. When the queried target uses TLS (`sips:` URI, `transport=tls/wss`, or any `_sips._tcp` SRV record), the tool also performs a TLS handshake against each resolved sips target and reports the negotiated TLS version + cipher, the leaf certificate's subject / issuer / SANs / validity, the chain length and whether it validates against Node's default trust store, plus two cert-domain checks: RFC 5922 §7.2 strict (cert must cover the original SIP domain) and a lenient SAN match against the SRV target hostname. SIP liveness: DNS resolving and a TLS handshake succeeding do NOT prove the endpoint actually speaks SIP - a load-balanced node can accept TCP/TLS yet black-hole SIP. So the tool ALSO sends a real SIP OPTIONS keepalive to each resolved public IP across the relevant transports (UDP/TCP on 5060, TLS on 5061 / SRV port) and reports per-IP answered / timeout / refused. Any SIP response (even 405/403/404) proves the stack is alive on that IP. When a name resolves to multiple IPs it is treated as a load-balancer fan-out and each IP is probed individually, with a warning about the known failure modes of fronting stateful SIP/RTP with a cloud L4 LB (AWS NLB/ALB etc.): cross-zone-off targets that black-hole, the ~120s UDP idle timeout, and per-5-tuple hashing splitting signaling from media. Egress safety: - Per-IP rate limited. - Hostnames that resolve only to RFC 1918 / loopback / link-local / documentation / multicast space are refused (SSRF guard). - Walk depth capped to prevent runaway NAPTR / CNAME chains. - TLS probes capped at 6 (host, port, ip) tuples per call, 5 s handshake timeout each, public-IP only (we connect to the resolved IP, not the hostname, so the system resolver cannot redirect us into private space). - SIP OPTIONS probes capped at 6 (ip, transport) tuples per call, 3 s timeout each, public-IP only; the request carries no SDP/body and an unroutable Via, and only the response status line is captured. Use to diagnose: - "carrier doesn't answer" / "wrong port" / "TLS instead of UDP" routing puzzles - "DNS looks healthy but calls fail" - per-IP SIP OPTIONS surfaces nodes that resolve and accept the transport but never answer SIP (the decisive step for load-balanced / multi-IP targets) - "carrier rejects our target because no SRV is published" - when A/AAAA resolves but SRV is missing the tool synthesises a copy-pasteable suggested zone-record block pointing at the resolved canonical hostname - "TLS handshake works but cert isn't valid for the SIP domain" - RFC 5922 §7.2 compliance is checked separately from generic chain validation, since the SAN must cover the *original* SIP domain (not the SRV-redirected target) ACL caveat: a SIP OPTIONS timeout can also mean the target authorizes inbound SIP by source IP whitelist on the trunk (Twilio, Telnyx, Bandwidth, …; see https://www.twilio.com/docs/sip-trunking/api/ipaccesscontrollist-resource) and is dropping our probe because our egress IP is not on the ACL. An `answered` result is conclusive (the node speaks SIP); a `timeout` is suggestive, not proof of a dead node - confirm reachability from the SBC itself. Pair with: `troubleshoot_response_code` when 503 / 408 / 480 are involved; `search_sip_docs(vendor=...)` for carrier-specific routing docs.
    Connector
  • 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 1462 STRUCTURED data sources (SEC filings, FRED/BLS economics, FDA, USPTO patents, markets, science, government records, etc.) in ONE call — this is NOT open-web search. Decomposes your question into focused facets, routes each to the right one of 5,564 tools IN PARALLEL, and returns a findings packet: verbatim evidence + confidence + source + fetched_at + a stable pipeworx:// citation per finding, with explicit gaps[] for facets the data couldn't answer (never invented). Best for broad/multi-part questions over structured data ("compare X and Y's regulatory + financial exposure", "research the filings + market picture for ACME"). For a single lookup use ask_pipeworx (one LLM call, not many). For BREAKING or colloquial CURRENT-NEWS / "what's the world saying about X" topics, prefer ask_pipeworx — it routes to live news APIs and the *-news-feeds packs; deep_research returns mostly empty gaps[] when the topic isn't in the structured catalog. Second-hop iteration: depth:"standard" re-angles unanswered gaps (gap recovery); depth:"thorough" additionally chases the best leads from the first pass — so multi-step questions resolve in one call. Every finding carries a `hop` field and a citation_uri — a resolvable pipeworx:// record URI, present only when the source emits one that resources/read can actually serve, so a citation you get back is always fetchable. "standard" and "thorough" also return contradictions[] flagging findings that disagree. Large records are semantically excerpted to the passages relevant to each facet (not head-truncated), so answers deep in a long filing/series aren't missed. Expect 15-60s (thorough with its follow-up + contradiction pass: up to ~90s).
    Connector
  • Use this when you need to repeat a feature in a pattern. Insert a Shape.patternLinear / .patternCircular / .patternGrid call into a kernelCAD script before the last top-level return. Pass structured args (kind + the matching spec object). Returns the modified code plus diagnostics from re-evaluating. Side-effect-free. The pattern feature is a single editable unit; pattern-instance face refs resolve via `<sourceId>_pattern_<i>` on the pattern feature's lineage. Geometric note: pattern is implemented as cumulative boolean union of transformed source copies — additive features (boxes, ribs, fins, spokes) pattern cleanly; patterning a subtractive feature (hole, cutout) only preserves the per-instance void when adjacent bodies are disjoint.
    Connector
  • Crypto cycle position — where are we in the cycle? Default BTC: point-in-time 10-indicator aggregation (MVRV-Z, NUPL, Puell, Pi-Cycle, Funding, Hash-Ribbons, Power-Law, Rainbow, F&G, Mayer). Pass asset=ETH or asset=SOL for a per-coin cycle read built from the transferable price-derived indicators (Mayer, weekly-RSI, 200-week-MA distance) with renormalized weights; BTC-native indicators (halving, dominance, mining, hash-ribbons, F&G, Pi-Cycle, on-chain) are explicitly returned as `not_applicable` rather than faked. All return raw + Z-Score, signal enum, and a `percentiles` block ranking each indicator against that asset’s own history. The `signal` enum is a FIXED SCORE-BAND LABEL (<25 accumulation · 25–45 recovery · 45–60 expansion · 60–75 distribution · ≥75 overheated), not an independent market-phase detection — a mid-band score reads "expansion" even in a drawdown market (the 45–60 band is the neutral middle; cross-check price/drawdown context before quoting the label as a market state). BTC additionally returns `highlights[]` (rule-based markers for currently unusual indicator values — descriptive, versioned ruleset; empty array = nothing unusual) and `price_context` (price at scoring time vs live spot with drift % — the scores are based on the scoring-time price, not the live spot). Point-in-time scored — not reconstructable from a generic price API. Note for volatility questions: this tool carries the regime context around a volatility reading (Funding, Mayer, Pi-Cycle) but not the volatility series itself — that is arena_get_volatility_history. Related: arena_get_historical_analog (what followed states like this one), arena_get_bullmarket_ampel, arena_get_pulse. [Free tier]
    Connector
  • Opens the Picsart Film Tracker: the 11-stage film production pipeline as a living map — stage chips with gate status, each stage's exit checklist, and the scene×assets coverage matrix with its holes marked. The user checks items off, confirms the current gate, or overrides it with a reason; their decisions come back as a JSON message in the conversation. Call this when opening a film session ("you are here"), when judging a gate, and whenever the matrix changes — a hole in the matrix is a stop: no scene generates until its assets are locked. Pass all 11 stages every time so the map stays complete; pass the matrix during asset and generation phases. Record a confirmed gate in the film state, and record an override verbatim with its reason — an override is a debt, not a pass. Returns the normalised pipeline payload the widget renders. Read-only; spends no credits and works without authentication.
    Connector
  • Checks that the Strale API is reachable and the MCP server is running. Call this before a series of capability executions to verify connectivity, or when troubleshooting connection issues. Returns server status, version, tool count, capability count, solution count, and a timestamp. No API key required.
    Connector
  • Fetch full details for a single clinical trial by NCT id. Use this after `search_clinical_trials` when you need the complete record for a specific trial, including the full `description`, study `design`, `enrollment`, `outcomes` (primary/secondary), full `eligibility` inclusion/exclusion criteria, `reportedEvents` (adverse events when the trial has posted results), principal investigator (`pi`), `contacts`, `citations` (related publications), and `resultsUrl`. The search tool returns a slim summary to save tokens; call this tool for a specific NCT id when you need those verbose fields for deeper analysis or patient-trial matching. **Parameters:** - id: NCT identifier (e.g. `NCT02986230`). **Returns:** A compact detail record preserving all trial fields except the low-signal `ontology` classifications.
    Connector
  • Hallucination-resistant answer mode for high-stakes reads. Same routing as ask_pipeworx — picks the right tool from 5,564 across 1462 sources, fills arguments, fetches the data — then EXTRACTS the answer using ONLY what the tool result contains. Returns {answer, evidence (verbatim quote), confidence, source, fetched_at, refusal_reason:null} on success, OR an explicit refusal {answer:null, refusal_reason:"not_in_source"|"no_tool_match"|"tool_error"|"data_truncated"|"llm_error"} when the data doesn't directly answer. Use whenever an answer will be quoted, cited, or acted on, and the agent must not invent facts (financial verdicts, legal claims, medical lookups, public statements). Costs one extra LLM call vs ask_pipeworx — prefer ask_pipeworx for casual lookups.
    Connector
  • 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 Pipeworx connection — if the tool came from a different MCP server in your client (another vendor's Gmail, Splunk, Slack, etc. connector), we cannot fix it and reporting it here only delays you; file it with that server instead. Not sure? Pipeworx tool names are the ones this connection lists. Describe the issue in terms of Pipeworx tools/packs — don't paste the end-user's prompt. Filing without an account returns a `claim_token`; pass it back later as pipeworx_feedback({claim_token:"pwfb_…"}) to read whether it was fixed and what changed. The team reads digests daily and signal directly affects roadmap. Rate-limited to 5 per identifier per day. Free; doesn't count against your tool-call quota.
    Connector
  • Evaluate a math expression and return the numeric result. Useful for fuel, range/autonomy, unit conversions, and ad-hoc arithmetic. Supported (exhaustive): +, -, *, /, ^, %, parentheses, sqrt(), abs(), ceil(), floor(), round(), sin(), cos(), tan(), log(), exp(), min(), max(), PI, E. Anything else (atan2, pow, log10, hypot, if, factorial, comparisons) is rejected. Examples: "(120 / 6) * 8.5" (fuel for 120 nm at 8.5 L/h, 6 kn); "45 * 1.852" (nm to km).
    Connector
  • Search NSF awards. Filter by keyword (matches title/abstract), PI name, awardee institution, NSF program, date range, US state, or country. Returns title, PI, awardee, amount, dates, program. Use get_award for full abstract + outcomes report.
    Connector
  • INTERACTIVE RESORT GUIDE CARD (Resort Info sidebar UI) — elevation, vertical, lifts, runs, skiable acres, average snowfall, season dates, ski passes, editorial description, hero/gallery carousel. REQUIRED when the user asks for: resort guide, mountain profile, resort info, lifts/runs/vertical/skiable area, season dates, ski passes, or "tell me about the mountain" (non-weather). Answers single-resort stat questions: base/summit elevation, vertical drop, skiable area, average annual snowfall. Examples: "Aspen Mountain resort guide", "how many lifts at Jackson Hole", "what is the base elevation at Arapahoe Basin". For X-vs-Y stat questions use compare_resorts. Do NOT use get_resort (that shows the snow conditions card).
    Connector
  • Material ids + keys + names + categories you can build with (146 entries; ids are SPARSE/non-contiguous, so always pass a returned key rather than guessing an id). Category names are specific (e.g. "natural-stone", "marble", "metal-(ferrous)", "emissive", "glass"), so the category arg is matched FORGIVINGLY - "stone" finds "natural-stone", "metal" finds "metal-(ferrous)". NOTE: the "glass" materials are fully OPAQUE (this world has no transparent material) - use them as tinted accent panels, never as see-through windows (a window is an empty hole, not a glass block). Call categories_only:true FIRST to see the exact category list, then drill down (keeps the payload small for a token-budgeted brain). Each entry carries a "look" field (e.g. "near-white polished marble with soft veining", "warm yellow-brown wood with visible grain") + an rgb + a colour word, so PICK BY APPEARANCE - choose materials whose look fits what you are making, and vary them across a structure (foundation vs walls vs roof vs trim) instead of one flat grey stone. You can pass any returned key (e.g. "calacatta-gold") straight to build/place_block material.
    Connector