Overview
MCP exposes the OiAir public catalog through five read tools. None sends messages, creates requests or reserves places.
This public server does not require authentication. It does not provide access to organization management, enrollment or personal data.
Connect a client
In a client that supports remote MCP servers, add the address below and select Streamable HTTP. Support and setup steps depend on the client.
Claude Code
Add the server in your terminal. Then use /mcp in Claude Code to check the connection.
claude mcp add --transport http oiair https://oiair.com.br/api/mcpMCP Inspector
To check the connection without an agent, list the tools with the official diagnostic client.
npx @modelcontextprotocol/inspector --cli \
'https://oiair.com.br/api/mcp' --transport http \
--method tools/listAvailable tools
| Purpose | Main inputs |
|---|---|
search_activitiesSearches activities with text, filters and a cursor. | query, filters, locale, limit, cursor |
get_organizationReads an organization’s public profile. | organizationId, locale |
list_offeringsLists the organization’s current publications. | organizationId, locale |
get_offeringReads the exact group; can check an expected version. | publicationId, expectedVersion?, locale |
get_booking_linkBuilds a form link for the exact organization, publication and version. | organizationId, publicationId, expectedVersion, visit? |
get_booking_link requires expectedVersion; visit accepts trial or regular. Use the publication’s returned version. If it has changed, read it again before creating the link.
From search to form
Find activities
Call search_activities with the family’s age, city and preferences.
Check the group
Call get_offering to read the selected publication’s address, times, prices and version.
Open the form
Call get_booking_link with organizationId, publicationId and expectedVersion. The family reviews the conditions and submits the request on OiAir.
The client initializes MCP and sends tools/call. This example shows the call body after connecting.
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "search_activities",
"arguments": {
"query": "desenho",
"locale": "en",
"filters": {
"city": "Florianópolis",
"age": 6
},
"limit": 5
}
}
}The OiAir form sends a request to the organization. Submitting it does not reserve a place. This read connection does not submit requests or confirm enrollment.
Connection scope
- Use the data returned by the server. Do not infer available places from a published schedule.
- Show applied filters and unresolvedConstraints. Results are a ranked shortlist; respect resultScope, nextCursor and data expiry.
- Do not include names, phone numbers or other personal data in search queries.
- The client must connect the server to use its tools. An endpoint does not automatically list OiAir in third-party directories.
- Tools return text and structured data. Visual interfaces inside a chat depend on client support and are not required for this connection.
Integration and releases
See connection examples and release history on GitHub. Read the server metadata in the MCP Registry.
Next step
Integrating directly into your app? See the API endpoints and contract.