A lightweight framework for creating and deploying API servers for Vapi custom tools.
pip install vapiserve
from vapiserve import tool, serve
@tool(name="echo")
async def echo(message: str = "Hello") -> dict:
# Add your tool logic here
...
message = f"You said: {message}"
return {"message": message}
if __name__ == "__main__":
serve(echo, port=8000)
Your tool is now available at http://localhost:8000/tools/echo
.
- Create tools with simple
@tool
decorator - Built on FastAPI for high performance
- Structured error handling and validation
- Multiple service integrations in modular design
- Expose local servers with ngrok for development
- Comprehensive type hints and documentation
VapiServe provides integrations across various categories:
- Scheduling: Google Calendar, Outlook Calendar
- Tasks: Todoist
- Communication: Slack, Twilio
- Storage: AWS S3, Google Cloud Storage
- Email: SendGrid
- AI: OpenAI, Anthropic
Kindly refer to our documentation for detailed usage instructions.
Contributions are welcome. Kindly fork the repository, create a feature branch, and submit a pull request.
This project is licensed under the MIT License.
Made with ❤️ by Mahimai Raja