{"_id":"@actualte/person-search-mcp","name":"@actualte/person-search-mcp","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@actualte/person-search-mcp","version":"1.0.0","publishConfig":{"access":"public"},"description":"MCP server (and tiny CLI) that researches a real person from public web sources and returns a cited briefing. Wraps the public PersonSearch / Deep Search agent — no API key required.","keywords":["mcp","model-context-protocol","person-search","people-search","research","osint","openclaw","ai-agent"],"homepage":"https://github.com/DhanushKenkiri/PersonSearchAgent-MCP#readme","repository":{"type":"git","url":"git+https://github.com/DhanushKenkiri/PersonSearchAgent-MCP.git"},"license":"MIT","type":"module","bin":{"person-search-mcp":"dist/index.js"},"engines":{"node":">=18"},"scripts":{"build":"tsc","prepare":"npm run build","start":"node dist/index.js","test":"npm run build && node --test"},"dependencies":{"@modelcontextprotocol/sdk":"^1.18.0","zod":"^3.23.8"},"devDependencies":{"@types/node":"^22.10.0","typescript":"^5.6.3"},"gitHead":"c02d2adc3b6f57994fef7c363a73959bcaf41fd2","_id":"@actualte/person-search-mcp@1.0.0","bugs":{"url":"https://github.com/DhanushKenkiri/PersonSearchAgent-MCP/issues"},"_nodeVersion":"24.13.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-eJnt25pinb1ZqfW70wmX+InOUtAPdvEAF2HIM4rqvpBV51p5/hesxnNZLIjfjFuXgDVNslqlRGCM6Gnp/sLj+g==","shasum":"ca89fae9134e8d5c79910556f5150b7251f39839","tarball":"https://registry.npmjs.org/@actualte/person-search-mcp/-/person-search-mcp-1.0.0.tgz","fileCount":4,"unpackedSize":12477,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIBm3Y2t2EuuxvtwRJ/fAJDBb7RrWu5T4MnGE5rn2wbpfAiAi7IBNmR+ZOqCABB+GoA5E1th+TfS8YcjLyG3ary62Fg=="}]},"_npmUser":{"name":"actualte","email":"dhanushkenkiri@gmail.com"},"directories":{},"maintainers":[{"name":"actualte","email":"dhanushkenkiri@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/person-search-mcp_1.0.0_1780726736345_0.8628709808070703"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-06T06:18:56.185Z","1.0.0":"2026-06-06T06:18:56.492Z","modified":"2026-06-06T06:18:56.703Z"},"maintainers":[{"name":"actualte","email":"dhanushkenkiri@gmail.com"}],"description":"MCP server (and tiny CLI) that researches a real person from public web sources and returns a cited briefing. Wraps the public PersonSearch / Deep Search agent — no API key required.","homepage":"https://github.com/DhanushKenkiri/PersonSearchAgent-MCP#readme","keywords":["mcp","model-context-protocol","person-search","people-search","research","osint","openclaw","ai-agent"],"repository":{"type":"git","url":"git+https://github.com/DhanushKenkiri/PersonSearchAgent-MCP.git"},"bugs":{"url":"https://github.com/DhanushKenkiri/PersonSearchAgent-MCP/issues"},"license":"MIT","readme":"# person-search-mcp\n\nAn [MCP](https://modelcontextprotocol.io) server that **researches a real person from public web sources and returns a cited briefing** — drop it into any MCP-capable agent (Claude Desktop, Cursor, Cline, Windsurf, OpenClaw, …) and your agent gains a `search_person` tool.\n\nIt's a thin, generic wrapper over the public **PersonSearch \"Deep Search\"** agent. Give it a name and a public profile link; it runs federated web research and returns a structured, **source-cited** markdown report (current role, background, online presence, notable quotes). No API key required.\n\n```\nYou:    Research Paul Graham (https://x.com/paulg) before my call.\nAgent:  → calls search_person → returns a cited briefing with numbered sources.\n```\n\n---\n\n## The tool\n\n**`search_person`**\n\n| Argument | Required | Description |\n| --- | --- | --- |\n| `name` | yes | Full name, e.g. `\"Paul Graham\"`. |\n| `profile_url` | yes | A public profile link (LinkedIn, personal site, GitHub, X, …). Anchors the research to the right individual. |\n| `context` | no | Extra disambiguating context, e.g. `\"Founder, Acme\"`. |\n| `force_refresh` | no | Re-run from scratch, bypassing any cached result. |\n\nReturns the briefing markdown followed by a numbered **Sources** list. For people with little public presence it reports gaps honestly instead of inventing facts (and flags low evidence quality).\n\n---\n\n## Quick start\n\nRequires Node.js ≥ 18.\n\n### Run it in an MCP client\n\nAdd the server to your client's MCP config. **Today (no install needed)**, run it straight from GitHub:\n\n```jsonc\n{\n  \"mcpServers\": {\n    \"person-search\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"github:DhanushKenkiri/PersonSearchAgent-MCP\"]\n    }\n  }\n}\n```\n\nOnce published to npm, swap the args to `[\"-y\", \"person-search-mcp\"]`.\n\nConfig file locations:\n- **Claude Desktop** — `claude_desktop_config.json` (`mcpServers` key)\n- **Cursor** — `.cursor/mcp.json`\n- **Cline / Windsurf / others** — their MCP settings JSON (same shape)\n\n### Or run from a clone\n\n```bash\ngit clone https://github.com/DhanushKenkiri/PersonSearchAgent-MCP.git\ncd PersonSearchAgent-MCP\nnpm install        # builds automatically via the prepare script\nnode dist/index.js # starts the MCP server on stdio\n```\n\nThen point your client's `command`/`args` at `node` + the absolute path to `dist/index.js`.\n\n### Try it without an MCP client (CLI)\n\n```bash\nnode dist/index.js search \"Paul Graham\" \"https://x.com/paulg\" \"Y Combinator\"\n# or, from anywhere, with no clone:\nnpx -y github:DhanushKenkiri/PersonSearchAgent-MCP search \"Paul Graham\" \"https://x.com/paulg\"\n```\n\n---\n\n## OpenClaw\n\nThis works with [OpenClaw](https://www.npmjs.com/package/openclaw) agents too — see [`openclaw/README.md`](openclaw/README.md) for both paths:\n- **MCP** — register this server through OpenClaw's built-in `mcporter` skill, or\n- **Native skill** — drop the ready-made [`person-search` skill](openclaw/skills/person-search/) into `~/.openclaw/skills/`.\n\n---\n\n## Configuration\n\n| Env var | Default | Purpose |\n| --- | --- | --- |\n| `PERSON_SEARCH_API_URL` | `https://mvp.actualte.tech` | Base URL of the research backend. Point it at your own deployment to self-host. |\n| `PERSON_SEARCH_TIMEOUT_MS` | `180000` | Per-request timeout (deep research can take 1–2 minutes). |\n\nThe default backend is the hosted, public PersonSearch agent, so the server works out of the box. It calls a single public endpoint — `POST /api/research` — and adds no auth, storage, or state of its own.\n\n---\n\n## Develop\n\n```bash\nnpm install     # install deps + build\nnpm run build   # compile src/ -> dist/\nnpm test        # build + run the MCP protocol tests (offline, deterministic)\n```\n\nThe test suite (`test/mcp.test.mjs`) launches the built server over stdio and drives it with the official MCP SDK client against a local mock backend — verifying the `initialize` handshake, `tools/list`, a successful `tools/call`, and the error path.\n\n## Publish (maintainer)\n\n```bash\nnpm login\nnpm publish --access public\n```\n\nAfter publishing, anyone can run it with `npx -y person-search-mcp`.\n\n## License\n\nMIT © Dhanush Kenkiri\n","readmeFilename":"README.md","_rev":"1-f35cf37fd6487011794739e2d9e1a543"}