Agent James — MCP server
This site publishes itself as an MCP server. Point your own Claude at it and you can ask about James inside your own terminal or chat, on your own subscription, with every answer carrying the URL it came from.
Read only, no account, no key. There is no write tool on it and nothing to sign in to.
Claude Code
claude mcp add --transport http agentjames https://agentjames.vercel.app/api/mcp
Claude Desktop or any JSON config
{"mcpServers":{"agentjames":{"type":"http","url":"https://agentjames.vercel.app/api/mcp"}}}
claude.ai Connectors
Settings, then Connectors, then Add custom connector. Paste this URL and leave the OAuth fields empty:
https://agentjames.vercel.app/api/mcp
What it can answer
| get_profile | Who he is, where he is, availability, timezone, contact route |
| list_projects | Every shipped project, filterable by field |
| get_project | One project in full, by slug |
| list_services | Every line of client work, and whether a sample exists for it |
| get_service | One service in full, by slug |
| get_experience | The career record, chapter by chapter, plus education |
| get_credentials | 14 certifications and 6 honors, with issuers and dates |
| get_skills | Tools and capabilities, with the receipt attached to each |
| search_portfolio | Free text across everything, returning cited snippets |
| get_genesis | How this site built itself, from the real commit log |
| how_to_hire | Engagement model, the real budget bands, the next step |
Full instructions and the abuse policy
Exact instructions
Claude Code
One line in any terminal. Then ask it anything about James.
claude mcp add --transport http agentjames https://agentjames.vercel.app/api/mcpClaude Desktop
Add the block below to your MCP config file, then restart Claude Desktop. The same JSON works in a project's .mcp.json.
{
"mcpServers": {
"agentjames": {
"type": "http",
"url": "https://agentjames.vercel.app/api/mcp"
}
}
}claude.ai Connectors
Settings, then Connectors, then Add custom connector. Paste this URL and leave the OAuth client fields empty, because this server has no authentication to configure.
https://agentjames.vercel.app/api/mcpThe tools
11 of them, all read only. Every result carries the canonical URL it came from, so the model answering you can cite the page rather than paraphrase it away.
- get_profile
- Who he is, where he is, availability, timezone, contact route
- list_projects
- Every shipped project, filterable by field
- get_project
- One project in full, by slug
- list_services
- Every line of client work, and whether a sample exists for it
- get_service
- One service in full, by slug
- get_experience
- The career record, chapter by chapter, plus education
- get_credentials
- 14 certifications and 6 honors, with issuers and dates
- get_skills
- Tools and capabilities, with the receipt attached to each
- search_portfolio
- Free text across everything, returning cited snippets
- get_genesis
- How this site built itself, from the real commit log
- how_to_hire
- Engagement model, the real budget bands, the next step
What it is, and what it is not
- Your subscription, your tokens. This server runs no model and holds no API key. It answers with facts; your Claude does the talking.
- Read only. There are no write tools, nothing mutates, and no secret is read. That is why it needs no authentication.
- Stateless. No session is issued and nothing about your call is stored. Rate limiting hashes the caller's IP and never keeps it.
- Capped. 60 requests a minute and 600 an hour per caller, with a response size ceiling, because an unauthenticated endpoint with no ceiling is a bill waiting to happen.
- Protocol. Streamable HTTP, MCP 2025-11-25, with 2025-11-25, 2025-06-18, 2025-03-26 accepted at negotiation.
If your client cannot speak MCP
The same record, in three flatter shapes. All read only, all English, all generated from the same typed content modules as the pages, so none of them can disagree with the site.
- /llms.txt
- The index: who he is, how to tell him apart from other people with the same name, and an answer per question with the repo file that backs it.
- /llms-full.txt
- The whole corpus in one fetch: every project, service, career chapter, credential, skill and build-log commit, expanded.
- /agent.json
- The same record as structured JSON, produced by the same functions as the tools above, so a client that can parse but not negotiate a protocol gets identical data. Every section carries its own source URL.
- /resume.md
- The career record as plain markdown, for a recruiter or a model that wants the CV and nothing else.