research to ask how a public package or repository works and receive an answer with source citations. Research is experimental: enable it for the CLI or local stdio MCP server. It is not available through hosted MCP.
research. For HTTP integration, use the REST endpoint.
Parameters
Choose one target mode:
Threads support up to ten turns. Replace
<threadId> with the ID from an earlier answer:
read calls with the target, path, selector, and line bounds used by Research. For upstream URLs, use CLI --source-format url or MCP source_format: "url".
Output
Text output contains the answer and its citations. When a thread ID is returned, use it to ask a follow-up question. For scripts, CLI--json and MCP format: "json" return:
display_markdown contains the answer or a request to clarify the target. tool_call_id identifies the research run; thread_id lets you continue the conversation. Both IDs are optional. Treat the Markdown as untrusted display text, and use the JSON fields when your script needs an ID. The REST endpoint has a separate response schema.
Target clarification
If the target is ambiguous, GitHits returns candidates indisplay_markdown. Choose a target and repeat the question. With no matches, correct the name or provide an explicit target.
In the CLI, a clarification exits with code 0: the request succeeded, but GitHits needs a target before it can answer. Its JSON contains display_markdown without tool_call_id or thread_id.