{"name":"io.github.vanshulgoyal101/ctx","slug":"vanshulgoyal101-ctx","title":null,"description":"Turn a GitHub repo or docs site into agent-ready context: pack it or search it, over MCP.","url":"https://mcp.market/server/vanshulgoyal101-ctx","rating":null,"grade":"A","score":91,"certified":false,"status":"active","category":"devtools","tags":["devtools","productivity","ai","search"],"presence":{"score":26,"stars":1,"forks":0,"downloads_week":null,"last_push_at":"2026-09-04T08:02:01.000Z","license":"MIT"},"uptime":{"percent":100,"checks":28,"ok":28,"last_checked_at":"2026-11-04T01:30:26.596Z","last_ok_at":"2026-11-04T01:30:26.596Z","latency_ms":63},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/vanshulgoyal101/ctx","website":"https://ctx.vanshul.com","version":"1.0.0","remotes":[{"type":"streamable-http","url":"https://ctx.vanshul.com/mcp"}],"packages":[],"tools":[{"name":"get_file","description":"Return the full text of a single file in a repository, by path. Use after list_files or search_context to drill in.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"repo":{"type":"string","description":"A GitHub repo as \"owner/repo\" or a github.com URL."},"path":{"type":"string","description":"File path within the repo."},"ref":{"type":"string","description":"Optional branch, tag or commit SHA (defaults to the default branch)."}},"required":["repo","path"]}},{"name":"list_files","description":"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.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"repo":{"type":"string","description":"A GitHub repo as \"owner/repo\" or a github.com URL."},"ref":{"type":"string","description":"Optional branch, tag or commit SHA (defaults to the default branch)."},"include":{"type":"array","items":{"type":"string"},"description":"Optional glob patterns (support **, *, ?)."},"exclude":{"type":"array","items":{"type":"string"},"description":"Optional glob patterns (support **, *, ?)."}},"required":["repo"]}},{"name":"pack_docs","description":"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.","write_action":false,"price_micros":0,"input_schema":{"type":"object","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."}},"required":["url"]}},{"name":"pack_repo","description":"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.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"repo":{"type":"string","description":"A GitHub repo as \"owner/repo\" or a github.com URL."},"ref":{"type":"string","description":"Optional branch, tag or commit SHA (defaults to the default branch)."},"include":{"type":"array","items":{"type":"string"},"description":"Optional glob patterns (support **, *, ?)."},"exclude":{"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."}},"required":["repo"]}},{"name":"search_context","description":"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?\").","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"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."},"ref":{"type":"string","description":"Optional branch, tag or commit SHA (defaults to the default branch)."},"include":{"type":"array","items":{"type":"string"},"description":"Optional glob patterns (support **, *, ?)."},"exclude":{"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)."}},"required":["repo","query"]}},{"name":"search_docs","description":"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.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"url":{"type":"string","description":"The absolute http(s) URL to start crawling from."},"query":{"type":"string","description":"Space-separated search terms; matching is case-insensitive."},"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_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)."}},"required":["url","query"]}}],"scan":{"score":91,"grade":"A","scanned_at":"2026-09-24T05:05:07.426Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-24T05:05:07.415Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 662ms"]},"poisoning":{"score":15,"max":15,"notes":["6 tool descriptions checked"]},"auth":{"score":10,"max":15,"notes":["open endpoint, read-only tools"]},"maintenance":{"score":15,"max":15,"notes":["last push 20 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"probes":[{"url":"https://ctx.vanshul.com/mcp","reachable":true,"authRequired":false,"latencyMs":662,"serverInfo":{"name":"vanshul-ctx","version":"1.0.0"}}],"packages":[],"repo":{"found":true,"owner":"vanshulgoyal101","repo":"ctx","archived":false,"pushedAt":"2026-09-04T08:02:01Z","stars":1,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/96768035?v=4","ownerCreatedAt":"2021-12-28T08:06:32Z","license":"MIT"},"icon":{"url":"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Ctext y='.9em' font-size='90'%3E%F0%9F%93%A6%3C/text%3E%3C/svg%3E","source":"site"},"presence":{"stars":1,"forks":0,"downloadsWeek":null,"license":"MIT","lastPushAt":"2026-09-04T08:02:01.000Z","score":26}}}},"grade_history":[],"reviews":[]}