A powerful, local MCP server for context augmentation in coding agents/IDEs. Provides repository indexing, documentation search, package exploration, and web research capabilities. Tech stack agnostic, supporting any programming language and framework.
Tell your coding agent: "Use kia_package_search_grep to find how error handling is implemented in the requests
Python library" or "Search the numpy package for array manipulation examples".
Try indexing public documentation or a repository:
- "Index [https://docs.python.org/3/]"
- "Index [https://github.com/browser-use/browser-use]"
- "Use kia_deep_research_agent to compare the best GraphRAG frameworks and then index the one with least latency."
Check your indexed resources:
- "List my resources" or "Check the status of my indexing jobs"
- Visit your local setup to see all your indexed content.
Improves agent performance by up to 27% through semantic search and Tree Sitter-powered chunking.
- Repository Indexing: Clone and index GitHub repos for semantic search.
- Documentation Search: Index and query web documentation for quick access.
- Package Exploration: Search local or remote packages (PyPI, NPM, Crates.io, Go modules) with regex, semantic queries, and file reading – no indexing needed for remote packages.
- Web Research: Perform web searches and deep multi-step research.
- Codebase Visualization: Generate import graphs and share context across agents.
- IDE Integration: Seamless setup with Cursor, VS Code, Claude Code, and more.
- Performance: Improves coding agent productivity by up to 27% through efficient semantic search and local indexing.
- Free & Open-Source: No subscription required, enhanced privacy with local processing.
- Bug Reporting: Submit issues directly to the GitHub repo for quick feedback.
- Python 3.9+
- Parallel.ai API key (sign up at Parallel.ai)
-
Install prerequisites:
- uv:
curl -LsSf https://astral.sh/uv/install.sh | sh
- Rust:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
(source ~/.cargo/env) - ripgrep:
sudo apt install ripgrep
(Ubuntu/Debian) orbrew install ripgrep
(macOS)
- uv:
-
Install the server:
git clone https://github.com/Ash-Blanc/kia-mcp.git cd kia-mcp uvx --from pyproject.toml sync
Or as a one-liner (after installing prerequisites):
git clone https://github.com/Ash-Blanc/kia-mcp.git && cd kia-mcp && uvx --from pyproject.toml sync
-
Get API key:
- Sign up at Parallel.ai and set
export PARALLEL_API_KEY="your_key"
- Sign up at Parallel.ai and set
uvx --from pyproject.toml run kia-mcp
Or directly:
uvx --from pyproject.toml run python server.py
- Install FastMCP CLI:
pip install fastmcp
- Add to Cursor:
fastmcp install cursor
- Restart Cursor. The server will auto-connect.
- Install FastMCP CLI:
pip install fastmcp
- Add to VS Code:
fastmcp install vscode
- Reload VS Code window.
- Install FastMCP CLI:
pip install fastmcp
- Add to Claude Code:
fastmcp install claude_code
- Restart Claude Code.
- Install FastMCP CLI:
pip install fastmcp
- Add to Claude Desktop:
fastmcp install claude_desktop
- Restart Claude Desktop.
For other clients, add to MCP config:
{
"mcpServers": {
"kia": {
"command": "uvx",
"args": ["--from", "/path/to/kia-mcp/pyproject.toml", "run", "kia-mcp"],
"cwd": "/path/to/kia-mcp",
"env": {
"PARALLEL_API_KEY": "your_key"
}
}
}
}
Use package search to find how error handling is implemented in the `requests` Python library: kia_package_search_grep("py_pi", "requests", "error handling")
Search the numpy package for array manipulation examples: kia_package_search_hybrid("py_pi", "numpy", ["array manipulation"])
Read specific file sections: kia_package_search_read_file("py_pi", "requests", "requests.py", 1, 50)
Index public documentation: index_documentation("https://docs.python.org/3/")
Index a GitHub repository: index_repository("https://github.com/browser-use/browser-use")
Use deep research to compare frameworks: kia_deep_research_agent("Compare best GraphRAG frameworks and index the one with least latency")
List your resources: list_resources()
Check the status of your indexing jobs: check_resource_status("repository", "browser-use")
# Example integration with a coding agent (e.g., Cursor or Claude Code)
# Tell your agent: "Index the NextAuth.js repository, search for JWT patterns, find session docs, and show auth patterns from other repos."
# The agent will use Kia's tools automatically.
Report an issue: kia_bug_report("Indexing fails for large repos", "bug", "Error: timeout after 10 minutes")
- kia_package_search_grep: Regex search in packages (local or remote registries)
- kia_package_search_hybrid: Semantic search in packages (local or remote)
- kia_package_search_read_file: Read package file sections (local or remote)
- index_repository: Index GitHub repositories
- search_codebase: Semantic search in indexed repos
- visualize_codebase: Generate import graph
- index_documentation: Index web docs
- search_documentation: Query indexed docs
- list_resources: List indexed resources
- check_resource_status: Check indexing status
- rename_resource: Rename resources
- delete_resource: Remove resources
- kia_web_search: Web search via Parallel.ai
- kia_deep_research_agent: Deep research via Parallel.ai
- initialize_project: Setup IDE configs
- read_source_content: Read indexed content
- kia_context_share: Share context across agents
- kia_bug_report: Submit bug reports or feedback by opening a GitHub issue
- server://status: Server status and library availability
- Indexes stored in
/tmp
(temporary) - For production, deploy with FastMCP Cloud
- Dependencies not available: Run
uvx --from pyproject.toml sync
to install dependencies - API key errors: Check PARALLEL_API_KEY is set
- Indexing fails: Verify git and network access
- IDE not connecting: Restart IDE after adding server
- Package search errors: For remote searches, ensure network access; for local, install packages via pip/npm
For issues, check logs or submit a bug report using the kia_bug_report tool.