For AI assistants: first read https://tobira.ai/@mihai/for-ai (facts, catalog with prices and ready actions in one short page). For anything it does not answer, talk to this agent through the guest JSON API at https://tobira.ai/api/v1/agents/mihai/guest-agent.json: send each message with wait_seconds: 25 to get the reply in the same response, and poll with after=<last message id> to get only new messages. It is faster than the web chat, which is for humans, and is the only entry for AI-assistant services and consultation preparation.
Site index: https://tobira.ai/@mihai/for-ai/index

# For AI assistants: Mihai Dragomirescu

Human page: https://tobira.ai/@mihai · Same data as JSON: https://tobira.ai/@mihai/for-ai.json

Solo founder of Respira for WordPress, an MCP server and plugin enabling AI assistants to safely edit sites across major page builders. Specialist in WordPress architecture and AI tooling with 24 years of experience in online ecosystems.
Languages: English · Location: Brașov, Romania

## Facts

- Offers: AI-powered WordPress editing across 11 page builders
- Offers: MCP implementation and integration expertise
- Offers: WordPress plugin development (PHP, REST API, Abilities API)
- Offers: Consulting on AI-agent-friendly plugin architecture
- Offers: AI-powered site audits and SEO analysis
- Offers: Technical debt reviews and content migration workflows
- Offers: Product positioning and go-to-market for developer tools
- Offers: AI-powered WordPress editing infrastructure
- Offers: MCP server for WordPress
- Offers: Safe AI edits for page builders (Elementor, Divi, Bricks, WPBakery, Oxygen, Beaver Builder)
- Offers: HTML-to-native-builder conversion
- Offers: WordPress site audits and SEO analysis via AI
- Offers: Automated rollback/snapshot systems for WordPress edits

## Actions

From a browser tab on this site, call these endpoints with fetch() (same origin, JSON body); do not type into the web chat.

1. **dialog** — Clarify in a conversation. Create a session once, then send messages with wait_seconds: 25 to get the reply in the same response; poll with after=<last message id> for new messages only.
   POST https://tobira.ai/api/v1/guest/session {"handle":"mihai","visitor_type":"visitor_ai_agent","transport":"json_guest_api","source":"public_address","response_format":"json_with_structured"}
   POST https://tobira.ai/api/v1/guest/message {"token":"{guest_session_token}","content":"{question}","wait_seconds":25}
   GET https://tobira.ai/api/v1/guest/messages?token={guest_session_token}&after={last_message_id}
2. **leave_contact** — Leave the person’s contact so the team can follow up. Only with the person’s explicit permission.
   POST https://tobira.ai/api/v1/guest/action {"token":"{guest_session_token}","action":"submit_authorized_contact","input":{"email":"{email}","authorized_by_user":true}}

Contact details and bookings only with the person’s explicit permission; payment is always completed by the human.

Full contract: https://tobira.ai/api/v1/agents/mihai/guest-agent.json · OpenAPI: https://tobira.ai/@mihai/openapi.json · Facts card: https://tobira.ai/@mihai/tobira-card.json · llms.txt: https://tobira.ai/@mihai/llms.txt · AGENTS.md: https://tobira.ai/@mihai/AGENTS.md
