Agent skill

research-tools

External research via Context7 (docs), Grep.app (code examples), Exa (web search), and Tavily (web search). Loads MCPs on-demand via skill_mcp.

Stars 14
Forks 0

Install this agent skill to your Project

npx add-skill https://github.com/marcusrbrown/.dotfiles/tree/main/.config/opencode/skills/research-tools

Metadata

Additional technical details for this skill

category
research
triggers
docs, documentation, code examples, web search, how do others, library, API, current info, crawl, extract, scrape

SKILL.md

Research Tools

CRITICAL: skill_mcp Syntax

skill_mcp(mcp_name="<MCP_SERVER>", tool_name="<TOOL>", arguments='<JSON>')
  • mcp_name = MCP server (context7, grep_app, tavily, websearch) — NOT "research-tools"
  • tool_name = Tool name without prefix — NOT context7_resolve-library-id

Tools

MCP Server Tool Use For
context7 resolve-library-id Get library ID (required first)
context7 query-docs Query library documentation
grep_app searchGitHub GitHub code pattern search
websearch web_search_exa Web search
tavily tavily_search Web search (real-time, news, finance)

Examples

Context7 (2-step: resolve ID → query docs):

skill_mcp(mcp_name="context7", tool_name="resolve-library-id", arguments='{"libraryName": "react", "query": "hooks"}')
skill_mcp(mcp_name="context7", tool_name="query-docs", arguments='{"libraryId": "/facebook/react", "query": "useEffect"}')

Grep.app (search literal code patterns, not keywords):

skill_mcp(mcp_name="grep_app", tool_name="searchGitHub", arguments='{"query": "useActionState(", "language": ["TypeScript", "TSX"]}')

Exa:

skill_mcp(mcp_name="websearch", tool_name="web_search_exa", arguments='{"query": "Next.js 15 features", "numResults": 5}')

Tavily Search (real-time web search with topic filtering):

skill_mcp(mcp_name="tavily", tool_name="tavily_search", arguments='{"query": "Next.js 15 features", "max_results": 5}')
skill_mcp(mcp_name="tavily", tool_name="tavily_search", arguments='{"query": "OpenAI API pricing", "topic": "news", "days": 7}')
skill_mcp(mcp_name="tavily", tool_name="tavily_search", arguments='{"query": "AAPL stock", "topic": "finance"}')

Common Mistakes

❌ Wrong ✅ Correct
mcp_name="research-tools" mcp_name="context7"
tool_name="context7_resolve-library-id" tool_name="resolve-library-id"
tool_name="grep_app_searchGitHub" tool_name="searchGitHub"
tool_name="context7_get-library-docs" tool_name="query-docs"
tool_name="tavily_tavily_search" tool_name="tavily_search"

Expand your agent's capabilities with these related and highly-rated skills.

marcusrbrown/.dotfiles

file-organizer

Intelligently organizes your files and folders across your computer by understanding context, finding duplicates, suggesting better structures, and automating cleanup tasks. Reduces cognitive load and keeps your digital workspace tidy without manual effort.

14 0
Explore
marcusrbrown/.dotfiles

content-research-writer

Assists in writing high-quality content by conducting research, adding citations, improving hooks, iterating on outlines, and providing real-time feedback on each section. Transforms your writing process from solo effort to collaborative partnership.

14 0
Explore
marcusrbrown/.dotfiles

copilot-coding-agent

Use when configuring or troubleshooting GitHub Copilot coding agent, setting up copilot-setup-steps, MCP servers, hooks, firewall rules, custom agents, or Copilot CLI workflows for issue-to-PR automation.

14 0
Explore
edmundmiller/dotfiles

zbench

Benchmark interactive zsh performance with zsh-bench and track regressions. Use when benchmarking shell startup, comparing zsh latency after config changes, investigating slow shell, or running git bisect on performance. Trigger phrases: "benchmark zsh", "shell is slow", "zbench", "zsh-bench", "shell startup time", "profile zsh", "zsh performance".

53 5
Explore
edmundmiller/dotfiles

nix-rebuild

Rebuild nix-darwin/NixOS system after dotfiles changes. Use when config files managed by Nix (lazygit, ghostty, etc.) need to be regenerated, or after editing any .nix file in the dotfiles repo.

53 5
Explore
edmundmiller/dotfiles

hass-config-flow

Interact with Home Assistant via the REST API on a NixOS host. Use when adding integrations, querying entities, managing config flows, creating API tokens, or automating HA setup programmatically. Also covers identifying device protocols (Matter, Zigbee, Thread, HomeKit) from the device registry. Trigger phrases: "add HA integration", "configure home assistant", "query HA entities", "create HA token", "HA REST API", "pair homekit", "set up matter in HA", "add spotify to HA", "is this device zigbee or thread", "what protocol is this device", "move devices to ZHA", "identify matter devices".

53 5
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results