codewiki-mcp is a Model Context Protocol (MCP) server used to connect AI assistants to codewiki.google — a service that generates AI wiki documentation for open source repositories.
Purpose: This project lets any AI assistant access codewiki.google, so it can search repositories, retrieve full documentation, or ask questions in natural language, all through MCP.
Main capabilities:
- codewiki_search_repos: Search repositories indexed by codewiki.google.
- codewiki_fetch_repo: Retrieve the generated wiki content for a repository.
- codewiki_ask_repo: Ask a natural language question about a repository.
- Supports prompts in any MCP-compatible client, such as retrieving full documentation, retrieving a structured page, or asking questions in natural language.
Usage:
- Use npx (no installation required).
- MCP client configuration: Can be added to .cursor/mcp.json, claude_desktop_config.json, the Windsurf MCP configuration, or .vscode/mcp.json.
- Environment variables: Can be configured via environment variables, or by creating a .env file in the project root.
How it works: codewiki.google uses Google's internal batchexecute RPC format (not REST, not GraphQL). The client builds a POST request with f.req=..., sends it to /_/BoqAngularSdlcAgentsUi/data/batchexecute, receives a response with the XSSI prefix )]}'\n, parses the wrb.fr frames, and extracts typed payloads. Each tool maps to one RPC ID.
NLP repository resolution: Users can enter natural language instead of owner/repo.
Retry mechanism: Uses exponential backoff retries; 4xx errors (client errors) are never retried.
Response format: Error codes include VALIDATION, RPC_FAIL, TIMEOUT, NLP_RESOLVE_FAIL.
Troubleshooting:
- Large repositories may require a longer timeout.
- When natural language input cannot be resolved, use the explicit format.
- Set GITHUB_TOKEN to avoid GitHub API rate limits on unauthenticated requests.
Development: Contributions are welcome. Please fork the repository, create a feature branch (git checkout -b feat/my-feature), use Conventional Commits commit messages, run npm run typecheck && npm run test before committing, then open a Pull Request.
License: MIT © codewiki-mcp contributors.