MCP Server
Connect your AI assistant straight to this portfolio: a public Model Context Protocol server that answers questions about Monir with live, structured data in all five site languages.
The Endpoint
One public endpoint, no session to manage. Point any MCP client at it and start asking.
https://mcp.webanion.com/mcp- Transport: Streamable HTTP, JSON-RPC 2.0 over POST, stateless
- Authentication: None to start. Sign in once from your client, or send a free API key as a bearer header, and the full catalogue opens.
- Discovery: A machine-readable description of the server lives at /.well-known/mcp.json
Connect and Sign In
Add the server by URL, then sign in once in a browser. The client keeps the token and refreshes it by itself; nothing is pasted into a conversation or a config file, and nothing has to be reconnected.
Claude Code
claude mcp add --transport http webanion https://mcp.webanion.com/mcp
claude mcp login webanionThe first line adds the server, the second runs the sign-in from the shell. Or, in a session, open /mcp, pick webanion and choose Authenticate. A browser tab opens, you give your name and email, a six digit code arrives by email within a minute, you enter it and approve. That is the whole sign-in.
Claude Desktop and claude.ai
Add the endpoint URL as a custom connector and connect from the connector's settings. The same sign-in runs in the browser.
Cursor
Add the endpoint URL as a remote MCP server. Cursor reads the server's metadata and offers the login itself.
ChatGPT
https://mcp.webanion.com/mcpChatGPT adds remote MCP servers as connectors: open Settings, then Connectors, enable developer mode, choose Add custom connector and paste the endpoint URL.
Approving lets the client read the full portfolio, the timeline, the blog and the people, and send Monir a message or subscribe to the newsletter as you. You can end it from the client at any time, with claude mcp logout webanion or Clear authentication in /mcp, and Monir can from his side.
What It Can Tell You
It can answer
- Who Monir is: headline, summary, availability, timezone and working hours
- What he builds: services, showcases and every project with its story and tech stack
- The evidence: the experience timeline, client testimonials and the technologies counted across real projects
- How he works: capabilities, pricing and engagement terms from the curated knowledge base
- The writing: blog articles with their categories and tags
It will not give you
- Private contact details: client and collaborator emails never leave the database
- Day-level dates: engagement dates are month precision by design
- Draft or unpublished content: the CMS serves only what is public
- Anything beyond Monir and his work
Two Tiers, One Registration
Anonymous callers already get the shortlisting answers. Signing in from your client unlocks everything else, and a free key, verified by email, does the same for a client with no browser.
Anonymous
No sign-in needed: the profile, the tech stack, services, showcases, shallow portfolio search, the whole knowledge base, the full record for any named project and the experience timeline.
Verified
Everything above at full depth, plus site wide search, one service or showcase in full, articles and taxonomy, companies, people, testimonials, messaging and the newsletter.
Tool Catalogue
The real tool names, exactly as the server registers them.
Available anonymously
get_profileWho this is: headline, summary, availability, resume and social links. Call it first.
search_portfolioFind projects by description or exact technology. Anonymous callers get slug, title and a one line summary; verified callers get the full result.
get_tech_stackTechnologies across the portfolio, each with the number of projects it appears in.
search_knowledge / get_knowledgeSearch the curated knowledge base and read any document: how he works, capabilities with evidence, project stories, pricing and terms.
list_servicesThe services on offer, each with a summary.
list_showcasesWork grouped by kind: mobile, web, desktop, devops.
get_projectFull detail for one project: story sections, tech stack, live URLs, the client and testimonials.
get_experience_timelineWork history grouped by company, month precision, the way a CV reads.
request_access / verify_accessRegister with a name and email, verify the six digit code, receive the API key. The route for a client that cannot open a browser.
Signed in, or with an API key
search_siteFull text search across projects, services, articles, companies, people, testimonials and tags.
get_serviceOne service with the projects delivered under it.
get_showcaseOne showcase with every project inside it.
search_articles / get_articleSearch the blog and read any published article in full.
list_categories / list_tags / get_tagBlog categories, plus tags across the blog and the portfolio.
list_companies / get_companyCompanies Monir has worked with and the work delivered for each.
list_clients / list_talents / get_talentClients and collaborators with their roles and projects. Contact details are never included.
list_testimonialsClient testimonials with rating and attribution.
send_contact_messageSend Monir a message as the verified consumer. Five per day; a duplicate is delivered once.
subscribe_newsletterSubscribe the verified address to the newsletter.
Example prompts
Once the server is connected, ask in plain language and the assistant picks the tools.
Has Monir built anything like a booking marketplace with payments?
What does his experience timeline look like, and what is he focused on right now?
Which projects used React Native, and what did the clients say about them?
How does he price an engagement and how does he like to work?
Register me for an API key with my email, then send him a short intro message.
Without a Browser: the API Key
A client that cannot open a browser registers with two tool calls instead and sends the key in a header on every request. The key is shown once and only its hash is kept, so a lost key is not recovered but reissued: verify a fresh code and a new key retires the old one.
How to register
- Call request_access with your name and email address.
- A six digit code arrives at that address within a minute.
- Call verify_access with the email and the code. The key is shown once, so store it.
- Send the key as an Authorization: Bearer header on every request, and reconnect your client so the header takes effect.
Copy, paste, done. Replace <key> with the key verify_access returned, or drop the Authorization header entirely to browse anonymously.
Claude Code
claude mcp add --transport http webanion https://mcp.webanion.com/mcp --header "Authorization: Bearer <key>"Claude Desktop
{
"mcpServers": {
"webanion": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp.webanion.com/mcp",
"--header",
"Authorization:${WEBANION_AUTH}"
],
"env": { "WEBANION_AUTH": "Bearer <key>" }
}
}
}Cursor
{
"mcpServers": {
"webanion": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp.webanion.com/mcp",
"--header",
"Authorization:${WEBANION_AUTH}"
],
"env": { "WEBANION_AUTH": "Bearer <key>" }
}
}
}Claude Desktop and Cursor speak stdio, so the small mcp-remote proxy bridges them to the HTTP endpoint.
A connection opened without the header keeps going without it. After configuring the key, reconnect the client, in Claude Code /mcp and reconnect, or the key changes nothing and every gated call keeps asking you to register.
Rate Limits
Enough for real use, tight enough to stop abuse. Limits apply per verified consumer.
- Reads: 120 per minute
- Writes: 5 per minute, and at most five contact messages per day
- Key requests: 3 per hour per email address, 10 per hour per network
A blown limit answers with a retry time, never a silent failure.
Privacy, Stated Plainly
Reads without a key are anonymous. No account, no cookie, no profile of what you ask.
Signing in or registering stores exactly what you send: the name, the email address the code was sent to, and the optional organization and purpose. That is all a token or a bearer key resolves to, and both are stored as hashes only.
Messages sent through send_contact_message land in Monir's inbox under the verified sender's name and address, and nowhere else.
The newsletter uses the verified address only, and subscribing twice is one subscription. Nothing here is sold or shared.
Terms of Use
Using the server means accepting the site's terms of use, which cover it in a section of their own. This is the short version, and where the two differ, the terms apply.
What the server returns may be quoted in part, with a link to the page it came from. Ask before republishing a whole article, case study or image.
A sign-in or a key is free and personal to whoever verified it: use it yourself or for the assistant you run, and do not share or sell it. A lost key means verifying again, which retires the old one.
Abuse, working around the limits or impersonation can get a sign-in or a key revoked, and the person behind it blocked, without notice. The server is offered as it is, and it can change, pause or stop at any time.