Skip to main content
Glama
r28ai

Web Research to Docs

by r28ai

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
GITHUB_TOKENNoGitHub personal access token
LINEAR_API_KEYNoLinear personal API key
NOTION_API_KEYNoNotion integration secret (ntn_…)
TAVILY_API_KEYNoTavily API key
SLACK_BOT_TOKENNoSlack bot token (xoxb-…)
GOOGLE_CLIENT_IDNoGoogle OAuth client ID
FIRECRAWL_API_KEYNoFirecrawl API key
GOOGLE_CLIENT_SECRETNoGoogle OAuth 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

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
firecrawl_monitor_checks_listC

List checks for a monitor.

tavily_searchA

Execute a real-time web search optimized for AI agents. Use when sources are unknown or current web context is needed. Prefer search_depth advanced with chunks_per_source 3 for stronger evidence per source.

notion_pages_createA

Create a page — as a subpage of another page, or as a row of a database by giving its data_source_id as the parent. Content comes as a markdown string Notion parses into blocks, or from a template: one or the other, never both.

slack_chat_post_messageA

Send a message to a Slack channel, private group, or DM. Provide text for a plain message; set thread_ts to reply inside an existing thread.

tavily_research_createA

Create an async research task that searches, analyzes sources, and generates a cited report. Poll results with research_get.

tavily_research_getA

Retrieve the status and results of a research task by request_id. HTTP 202 means still running; poll until HTTP 200.

gdocs_documents_createA

Create a blank document with a title. Only the title is honoured — the document is created empty. To add content, call this and then documents_batch_update with the returned documentId.

firecrawl_research_papers_searchC

Search the research paper index with natural-language queries.

firecrawl_research_paper_getA

Inspect metadata or read passages from a research paper.

firecrawl_extractA

Extract structured data from one or more URLs using an LLM. Poll results with extract_status.

gsheets_spreadsheets_values_updateC

Sets values in a range of a spreadsheet.

firecrawl_monitor_createB

Create a scheduled monitor for scrape, crawl, or search targets.

github_search_repositoriesA

Search repositories with qualifiers, e.g. 'topic:cli language:go stars:>500'. Rate limited to 30 requests per minute.

firecrawl_crawlC

Recursively crawl a website and scrape each discovered page.

firecrawl_scrapeB

Scrape a single URL and optionally extract information. Use when the user wants to read or summarize a specific webpage. Supports markdown, HTML, screenshots, and structured JSON extraction.

linear_customer_need_createA

Record a customer request, optionally attached to an issue or project. This is the one Linear mutation whose reply carries no object — it answers only with whether it worked.

github_repos_list_languagesA

List a repository's languages with bytes of code each — the quickest way to find out what a repository is written in before reading any of it. Answers with an object keyed by language, so there is nothing to page.

linear_search_issuesA

Search issues by text, across titles and descriptions. Set include_comments to search inside comments too. This is full-text search; to filter on fields such as state or assignee, use issues_list.

linear_issue_createA

Create an issue. team_id and title are required; everything else is optional. The UUIDs for team, assignee, state and labels come from teams_list, users_list and workflow_states_list — Linear does not accept names here. Set parent_id to create a sub-issue.

connectA

Connect one app this server uses. For an app that issues keys, says where to get one and the terminal command that stores it. For Google, once the user's own OAuth client is set, starts the browser sign-in and returns at once: the user approves in the browser and the next call works. To see which apps are connected, call connection_status. Never ask the user for a key in the chat.

connection_statusA

See which apps this server is connected to, and how to connect each one that is not. Changes nothing.

Prompts

Interactive templates invoked by user choice

NameDescription
setupConnect every app this server uses, the quickest way each one allows.
competitive_intel_digestSite changes and news per competitor, weekly, in one page.
deep_research_to_shared_docA cited report in the team's Drive, not in someone's chat history.
paper_watchNew papers on your topics land in a reading list with abstracts.
market_mapPlayers, pricing, funding and positioning, one row each.
pricing_benchmark_memoTen competitors' pricing pages normalised into one table and a recommendation.
regulatory_watchA regulator's guidance page changes and legal hears the same day.
company_due_diligencePublic footprint, open-source activity and product surface in one memo.
public_complaints_to_roadmap_evidenceWhat people complain about in your category, attached to the issues it supports.
open_source_landscapeWho is building what in your space, with momentum, before you build it.
web_page_to_linear_issueA public bug report, forum post or status page becomes a tracked issue.

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.2/5.0

Scored across 21 tools

Disambiguation4/5

Most tools target clearly distinct resources (web search, crawl, scrape, Notion pages, Slack messages, Linear issues, GitHub repos), and descriptions provide usage guidance. However, the web research cluster (tavily_search, firecrawl_scrape, firecrawl_extract, tavily_research_create) has overlapping purposes that an agent could confuse without careful reading.

Naming Consistency3/5

All names use snake_case with app prefixes, but the ordering is mixed: some are verb_noun (github_search_repositories, linear_search_issues) while others are noun_verb (notion_pages_create, gdocs_documents_create, linear_issue_create). The server-level tools 'connect' and 'connection_status' also lack the app-prefix pattern, making the set readable but not fully predictable.

Tool Count3/5

21 tools is on the heavy side for a server named 'Web Research to Docs', and the surface sprawls across web search, document creation, spreadsheets, Slack, Linear, GitHub, and connection management. While each tool could earn its place in a broad integration hub, the count feels over-scoped for the stated workflow.

Completeness2/5

Several tools reference operations that are not exposed: gdocs_documents_create points to documents_batch_update for adding content, firecrawl_extract points to extract_status for polling, and linear_issue_create requires teams_list/users_list/workflow_states_list that are absent. Create-only surfaces for Notion, Google Docs, and Sheets lack read/update/delete counterparts, leaving agents with dead ends.

Maintenance

ActivityMaintained
ResponsivenessNo issues