AspireMatch is the backend service for an agent on Agent.ai that matches organizations with grants from Grants.gov based on their websites or textual descriptions.
AspireMatch leverages AWS Lambda and API Gateway to process and analyze grant data from Grants.gov. The service uses a Lambda function to download, extract, and parse XML data from grants.gov, and then stores the relevant information in an S3 bucket. The agent on Agent.ai can then use this data to recommend grants to organizations based on their mission, goals, and activities.
- Grant Data Extraction: Downloads and extracts grant data from grants.gov.
- XML Parsing: Parses XML data to identify relevant grants.
- S3 Storage: Stores parsed grant data in an S3 bucket.
- API Gateway Integration: Provides an API endpoint for the Agent.ai agent to query grant data.
- Grant Recommendations: Matches organizations with suitable grants based on their website or textual descriptions.
- AWS Lambda: The core processing logic is implemented in a Lambda function.
- AWS S3: Stores the extracted and parsed grant data.
- AWS API Gateway: Provides a RESTful API endpoint for querying grant data.
- Agent.ai: Uses the API to recommend grants to organizations.
-
Clone the Repository:
git clone https://github.com/kevinl95/AspireMatch.git cd AspireMatch
-
Deploy the CloudFormation Stack:
- Ensure you have the AWS CLI installed and configured.
- Deploy the CloudFormation stack to set up the necessary AWS resources.
aws cloudformation deploy --template-file cloudformation.yml --stack-name AspireMatchStack --capabilities CAPABILITY_NAMED_IAM
-
API Endpoint:
- The API endpoint provided by API Gateway can be used to query grant data.
- You will get your own endpoint URL after deploying the CloudFormation stack.
- Example request:
curl -X GET https://your-api-id.execute-api.your-region.amazonaws.com/prod/grants
-
Agent.ai Integration:
- The agent on Agent.ai uses the API to recommend grants to organizations based on their website or textual descriptions.
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch
). - Make your changes.
- Commit your changes (
git commit -am 'Add new feature'
). - Push to the branch (
git push origin feature-branch
). - Create a new Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.