{"id":51167698,"url":"https://github.com/subzeroid/hikerapi-mcp","last_synced_at":"2026-06-26T21:01:42.568Z","repository":{"id":352748523,"uuid":"1216390993","full_name":"subzeroid/hikerapi-mcp","owner":"subzeroid","description":"MCP server for HikerAPI — 105+ Instagram API tools auto-generated from the OpenAPI spec. Use from Claude Code, Claude Desktop, Cursor, OpenAI Codex, Zed, Windsurf.","archived":false,"fork":false,"pushed_at":"2026-04-20T23:49:14.000Z","size":28,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-21T01:35:44.693Z","etag":null,"topics":["ai-tools","auto-generated","claude","codex","cursor","data-api","hikerapi","instagram","instagram-api","mcp","mcp-server","model-context-protocol","openapi","social-media"],"latest_commit_sha":null,"homepage":"https://hikerapi.com/p/hsazcgym","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/subzeroid.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-20T21:22:44.000Z","updated_at":"2026-04-20T23:49:16.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/subzeroid/hikerapi-mcp","commit_stats":null,"previous_names":["subzeroid/hikerapi-mcp"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/subzeroid/hikerapi-mcp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subzeroid%2Fhikerapi-mcp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subzeroid%2Fhikerapi-mcp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subzeroid%2Fhikerapi-mcp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subzeroid%2Fhikerapi-mcp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/subzeroid","download_url":"https://codeload.github.com/subzeroid/hikerapi-mcp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subzeroid%2Fhikerapi-mcp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34832916,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-26T02:00:06.560Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai-tools","auto-generated","claude","codex","cursor","data-api","hikerapi","instagram","instagram-api","mcp","mcp-server","model-context-protocol","openapi","social-media"],"created_at":"2026-06-26T21:01:41.567Z","updated_at":"2026-06-26T21:01:42.557Z","avatar_url":"https://github.com/subzeroid.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# hikerapi-mcp\n\n[![npm version](https://img.shields.io/npm/v/hikerapi-mcp.svg)](https://www.npmjs.com/package/hikerapi-mcp)\n[![npm downloads](https://img.shields.io/npm/dm/hikerapi-mcp.svg)](https://www.npmjs.com/package/hikerapi-mcp)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\nMCP server for [HikerAPI](https://hikerapi.com) — Instagram data API. Available on npm: [`hikerapi-mcp`](https://www.npmjs.com/package/hikerapi-mcp).\n\nAuto-generates MCP tools from the HikerAPI OpenAPI spec at startup, so every non-deprecated `GET` endpoint is exposed without hand-written wrappers. HikerAPI only exposes read (`GET`) endpoints — the server maps each one 1:1 to an MCP tool (`GET /v2/user/by/username` → `get_v2_user_by_username`).\n\n## Get 100 Free API Requests\n\n**[Sign up with this link](https://hikerapi.com/p/hsazcgym)** and get **100 free HikerAPI requests** — no credit card required. Enough to wire up the MCP server, try a few prompts in Claude/Cursor/Codex, and evaluate the data quality before committing.\n\n\u003e **[Get your free 100 requests here](https://hikerapi.com/p/hsazcgym)**\n\n## Quick start\n\n1. Get an API key at [hikerapi.com/tokens](https://hikerapi.com/tokens).\n2. Add the server to your AI assistant.\n3. Ask your assistant something like:\n   - *\"Get the Instagram profile for @nasa.\"*\n   - *\"Find the top 5 recent posts under the hashtag `#photography`.\"*\n   - *\"Show stories for the user with id 25025320.\"*\n\n### Claude Code\n\n```bash\nclaude mcp add hikerapi -e HIKERAPI_KEY=your-api-key -- npx -y hikerapi-mcp\n```\n\n### Claude Desktop\n\nAdd to `claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"hikerapi\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"hikerapi-mcp\"],\n      \"env\": {\n        \"HIKERAPI_KEY\": \"your-api-key\"\n      }\n    }\n  }\n}\n```\n\n### Cursor / Windsurf\n\nSame shape as Claude Desktop — put the block under `mcpServers` in the app's MCP config file.\n\n### Zed\n\nAdd to `~/.config/zed/settings.json`:\n\n```json\n{\n  \"context_servers\": {\n    \"hikerapi\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"hikerapi-mcp\"],\n      \"env\": {\n        \"HIKERAPI_KEY\": \"your-api-key\"\n      }\n    }\n  }\n}\n```\n\n### OpenAI Codex\n\nAppend to `~/.codex/config.toml`:\n\n```toml\n[mcp_servers.hikerapi]\ncommand = \"npx\"\nargs = [\"-y\", \"hikerapi-mcp\"]\n\n[mcp_servers.hikerapi.env]\nHIKERAPI_KEY = \"your-api-key\"\n```\n\n## Tools\n\nTools are generated at startup from the live [HikerAPI OpenAPI spec](https://api.hikerapi.com/openapi.json), so the list always matches the current API. Roughly **100+ tools** across these groups (sizes as of this writing):\n\n| Group          | Tools | Examples                                                         |\n| -------------- | ----- | ---------------------------------------------------------------- |\n| User Profile   | 36    | `get_v2_user_by_username`, `get_v2_user_by_id`, `get_v1_user_medias` |\n| Post Details   | 20    | `get_v2_media_info_by_code`, `get_v2_media_comments`, `get_v2_media_likers` |\n| Search         | 13    | `get_v1_search_users`, `get_v1_search_hashtags`                  |\n| Hashtags       | 7     | `get_v2_hashtag_medias_top`, `get_v2_hashtag_medias_recent`      |\n| Stories        | 7     | `get_v2_story_by_url`, `get_v1_story_by_id`                      |\n| Location       | 7     | `get_v1_location_medias_recent`, `get_v1_location_search`        |\n| Audio, Share, Highlights, Comments | ~10 | `get_v2_track_by_id`, `get_v1_share_by_url`, …     |\n\nEach tool name mirrors its endpoint (`GET /v2/user/by/username` → `get_v2_user_by_username`). Your assistant can call `tools/list` over MCP to get the full, up-to-date list with parameter schemas. `Legacy` and `System` groups are excluded by default.\n\n## Configuration\n\n| Variable                      | Description                                                                            | Required |\n| ----------------------------- | -------------------------------------------------------------------------------------- | -------- |\n| `HIKERAPI_KEY`                | Your HikerAPI access key (sent as `x-access-key` header)                               | yes      |\n| `HIKERAPI_URL`                | Base URL. Default: `https://api.hikerapi.com` (alias `https://api.instagrapi.com`)     | no       |\n| `HIKERAPI_SPEC_URL`           | OpenAPI spec URL. Default: `${HIKERAPI_URL}/openapi.json`                              | no       |\n| `HIKERAPI_TAGS`               | Whitelist: only include operations with these tags (comma-separated)                   | no       |\n| `HIKERAPI_EXCLUDE_TAGS`       | Blacklist: additional tags to exclude (on top of default `Legacy`,`System`)            | no       |\n| `HIKERAPI_TIMEOUT_MS`         | Per-request timeout for API calls. Default: `30000`                                    | no       |\n| `HIKERAPI_SPEC_TIMEOUT_MS`    | Timeout for the startup spec fetch. Default: `60000`                                   | no       |\n| `HIKERAPI_MAX_RESPONSE_BYTES` | Max bytes read from each API response. Default: `10485760` (10 MB)                     | no       |\n| `HIKERAPI_MAX_SPEC_BYTES`     | Max bytes read from the OpenAPI spec. Default: `8388608` (8 MB)                        | no       |\n\n`Legacy` and `System` tags are excluded by default. Deprecated operations are also skipped.\n\nIf `HIKERAPI_URL` points to a host other than `api.hikerapi.com` or `api.instagrapi.com`, the server prints a warning on startup — your key will be sent there, so only use it for a self-hosted or proxied HikerAPI.\n\nExample — expose only the most common groups:\n\n```json\n\"env\": {\n  \"HIKERAPI_KEY\": \"...\",\n  \"HIKERAPI_TAGS\": \"User Profile,Post Details,Search,Hashtags,Stories\"\n}\n```\n\n## How it works\n\n```\nAI Assistant ←stdio→ hikerapi-mcp ──https──\u003e api.hikerapi.com\n                          │\n                          └─ fetches /openapi.json once on startup,\n                             builds one MCP tool per GET endpoint\n```\n\nTool arguments map to the endpoint's `query` and `path` parameters. The response body is returned as-is (JSON text). Non-2xx responses are surfaced as tool errors with the HTTP status and body.\n\n## Development\n\n```bash\ngit clone https://github.com/subzeroid/hikerapi-mcp.git\ncd hikerapi-mcp\nnpm install\nnpm run build\nHIKERAPI_KEY=your-key node dist/index.js\n```\n\nRun in watch mode:\n\n```bash\nHIKERAPI_KEY=your-key npm run dev\n```\n\nRun tests (unit + stdio smoke tests against a local mock server, no network/API key required):\n\n```bash\nnpm test\n```\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsubzeroid%2Fhikerapi-mcp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsubzeroid%2Fhikerapi-mcp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsubzeroid%2Fhikerapi-mcp/lists"}