MCP-Server

ctx

io.github.vanshulgoyal101/ctx
Entwicklertools Wissen & Dokumentation Öffentlich und erreichbar MCP 2026-07-28

Was dieses MCP kann

Packs and searches GitHub repositories and documentation sites into agent-ready context, with file retrieval and documentation crawling.

get_file
Return the full text of a single file in a repository, by path. Use after list_files or search_context to drill in.
Eingabeschema
{'type': 'object', 'required': ['repo', 'path'], 'properties': {'ref': {'type': 'string', 'description': 'Optional branch, tag or commit SHA (defaults to the default branch).'}, 'path': {'type': 'string', 'description': 'File path within the repo.'}, 'repo': {'type': 'string', 'description': 'A GitHub repo as "owner/repo" or a github.com URL.'}}}
list_files
List the text files ctx would include for a repository (after stripping binaries, lockfiles and build dirs), with their byte sizes. Cheap way for an agent to see the layout before packing.
Eingabeschema
{'type': 'object', 'required': ['repo'], 'properties': {'ref': {'type': 'string', 'description': 'Optional branch, tag or commit SHA (defaults to the default branch).'}, 'repo': {'type': 'string', 'description': 'A GitHub repo as "owner/repo" or a github.com URL.'}, 'exclude': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional glob patterns (support **, *, ?).'}, 'include': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional glob patterns (support **, *, ?).'}}}
pack_docs
Crawl a documentation site from a start URL and return it as one agent-ready context blob: each page extracted to clean Markdown, concatenated with its URL. Stays within the same site section; bounded by depth and page count. Use max_tokens to fit a budget.
Eingabeschema
{'type': 'object', 'required': ['url'], 'properties': {'url': {'type': 'string', 'description': 'The absolute http(s) URL to start crawling from (e.g. a docs index).'}, 'depth': {'type': 'number', 'description': 'How many link hops to follow (0–3, default 1).'}, 'max_pages': {'type': 'number', 'description': 'Max pages to fetch (1–30, default 10).'}, 'max_tokens': {'type': 'number', 'description': 'Stop adding pages once the estimate exceeds this many tokens.'}}}
pack_repo
Fetch a GitHub repository and return it as one agent-ready context blob: text files concatenated with clear "==== path ====" headers, binaries/lockfiles/build dirs stripped, with a token estimate. Use include/exclude globs to focus, and max_tokens to fit a budget.
Eingabeschema
{'type': 'object', 'required': ['repo'], 'properties': {'ref': {'type': 'string', 'description': 'Optional branch, tag or commit SHA (defaults to the default branch).'}, 'repo': {'type': 'string', 'description': 'A GitHub repo as "owner/repo" or a github.com URL.'}, 'exclude': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional glob patterns (support **, *, ?).'}, 'include': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional glob patterns (support **, *, ?).'}, 'max_tokens': {'type': 'number', 'description': 'Stop adding files once the estimate exceeds this many tokens.'}}}
search_context
Search a GitHub repository and return only the passages that match a query — each with its file path, line number and a relevance score. Far more token-efficient than pack_repo when you need a specific detail (e.g. "where is auth handled?").
Eingabeschema
{'type': 'object', 'required': ['repo', 'query'], 'properties': {'ref': {'type': 'string', 'description': 'Optional branch, tag or commit SHA (defaults to the default branch).'}, 'repo': {'type': 'string', 'description': 'A GitHub repo as "owner/repo" or a github.com URL.'}, 'query': {'type': 'string', 'description': 'Space-separated search terms; matching is case-insensitive.'}, 'exclude': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional glob patterns (support **, *, ?).'}, 'include': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional glob patterns (support **, *, ?).'}, 'max_matches': {'type': 'number', 'description': 'Max passages to return (1–50, default 5).'}, 'context_chars': {'type': 'number', 'description': 'Per-passage character budget (80–4000, default 500).'}}}
search_docs
Crawl a documentation site and return only the passages that match a query — each with its page URL, line and a relevance score. Token-efficient way to answer a question from docs without packing the whole site.
Eingabeschema
{'type': 'object', 'required': ['url', 'query'], 'properties': {'url': {'type': 'string', 'description': 'The absolute http(s) URL to start crawling from.'}, 'depth': {'type': 'number', 'description': 'How many link hops to follow (0–3, default 1).'}, 'query': {'type': 'string', 'description': 'Space-separated search terms; matching is case-insensitive.'}, 'max_pages': {'type': 'number', 'description': 'Max pages to fetch (1–30, default 10).'}, 'max_matches': {'type': 'number', 'description': 'Max passages to return (1–50, default 5).'}, 'context_chars': {'type': 'number', 'description': 'Per-passage character budget (80–4000, default 500).'}}}
Hinzugefügt
search_docs
17. September 2026 12:52
Hinzugefügt
pack_docs
17. September 2026 12:52
Hinzugefügt
get_file
17. September 2026 12:52
Hinzugefügt
list_files
17. September 2026 12:52
Hinzugefügt
search_context
17. September 2026 12:52
Hinzugefügt
pack_repo
17. September 2026 12:52