About repowiki
repowiki provides CLI and local MCP access to DeepWiki documentation for public GitHub repositories. It can list wiki topics, return full documentation, and answer codebase questions using DeepWiki’s hosted service.
Key features
- 01List repository wiki topics
- 02Retrieve full wiki documentation
- 03Ask questions about a codebase
- 04CLI and local stdio MCP server
Use cases
- 01Review documentation topics before exploring a repository
- 02Find documentation text for a public GitHub project
- 03Ask a question about a repository’s code
MCP support
Provides three tools to MCP clients over stdio: `read_wiki_structure`, `read_wiki_contents`, and `ask_question`. Calls are forwarded to DeepWiki’s hosted MCP endpoint; access is limited to public repositories.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
3Saved tool list · updated 2w ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| repoName | string | Yes | GitHub repository in "owner/repo" format whose documentation topics to list. |
Details
From the project READMErepowiki
repowiki gives a command line and a local MCP server for DeepWiki,
the service that writes documentation wikis for public GitHub
repositories. Point it at a repository in owner/repo form and it can
list the topics DeepWiki has written for that project, hand back the
full documentation text, or answer a plain-language question about
the codebase using DeepWiki's own index and models.
The answers come from DeepWiki's public hosted service, which is free and needs no account or API key. repowiki is the local half: it speaks the documented protocol to that service and presents the same three tools over stdio, so any MCP client can use them without a remote transport setup.
Install
npx @reneturcios/repowiki structure facebook/react
Or run the container image:
docker run -i ghcr.io/cloudcorprecords/repowiki
The container defaults to the MCP server (see below). Pass CLI arguments to use it as a CLI instead.
CLI
# List the documentation topics for a repository
repowiki structure facebook/react
# Print the full documentation text
repowiki contents facebook/react
# Ask a question about the repository
repowiki ask facebook/react "How is state managed?"
repowiki --version
Exit codes: 0 on success, 1 when the upstream service reports an
error or cannot be reached, 2 for usage errors. Repository names
must be in owner/repo form; anything else is rejected before a
request is made.
MCP server
One bin serves both faces. The mcp subcommand starts a stdio MCP
server:
npx -y @reneturcios/repowiki mcp
MCP client configuration:
{
"mcpServers": {
"repowiki": {
"command": "npx",
"args": ["-y", "@reneturcios/repowiki", "mcp"]
}
}
}
Tools
| Tool | Input | What it returns |
|---|---|---|
read_wiki_structure | repoName (string, required, owner/repo) | The list of documentation topics DeepWiki has for the repository. |
read_wiki_contents | repoName (string, required, owner/repo) | The full documentation text for the repository. |
ask_question | repoName (string, required), question (string, required) | An answer about the repository, grounded in DeepWiki's index of its code and documentation. |
Behind the scenes each call is forwarded to DeepWiki's hosted MCP
endpoint (https://mcp.deepwiki.com/mcp) as a JSON-RPC tools/call
request; responses arrive as plain JSON or as a Server-Sent Events
stream and are reduced to their result text. No credentials are sent:
the public service requires none. Private repositories are out of
scope, matching the upstream's public-only access.
Development
npm install
npm run build # tsc -> dist/
npm test # node test runner over test/*.test.ts, no network (fake fetch fixtures)
npm run dev # run the CLI from source via tsx
License
MIT — see LICENSE.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.