How to Use the DonorsChoose MCP in Vercel AI SDK
Stream real-time classroom funding data directly into your Vercel AI SDK interface without waiting for loading spinners.
Works with every AI agent you already use
…and any MCP-compatible client
Connect DonorsChoose MCP to Vercel AI SDK
Create your Vinkius account to connect DonorsChoose to Vercel AI SDK and route execution through our secure gateway. The platform manages server hosting, runtime updates, and security layers. Configuration requires no manual server provisioning.
Real-time project discovery
Feed live classroom needs into your UI components using `search_classroom_projects`. Your users see updates as the AI retrieves them. This keeps your interface snappy. Use `list_latest_classroom_proposals` to show fresh requests instantly.
Targeted funding audits
Trigger `quick_regional_funding_audit` to display summary stats for specific areas. It’s perfect for building dashboards that highlight local impact. Combine this with `search_projects_by_zipcode` to map regional needs. Data hits the browser as soon as the agent fetches it.
Urgent need identification
Highlight critical classroom gaps by calling `list_urgent_funding_needs`. Your frontend will reflect these priority items immediately. Pair this with `get_classroom_project_details` to give donors the full picture. It’s the fastest way to get resources where they belong.
Set up DonorsChoose MCP in Vercel AI SDK
Prerequisites
- Node.js 18+ and a TypeScript project
-
ai+@modelcontextprotocol/sdkpackages - Active Vinkius subscription with a valid endpoint token
- 1
Install dependencies
Run
npm install ai @modelcontextprotocol/sdkplus your preferred model provider (e.g.@ai-sdk/openai). - 2
Create the Streamable HTTP transport
Use
StreamableHTTPClientTransportwith your Vinkius endpoint URL. Replace[YOUR_TOKEN_HERE]with your token from cloud.vinkius.com. - 3
Discover and use tools
Call
mcpClient.tools()to auto-discover all DonorsChoose tools. Pass them directly togenerateText()orstreamText()— no manual schema definitions needed. - 4
Works with any model provider
Swap
openai("gpt-4o")for any AI SDK provider — Anthropic, Google, Mistral. The MCP tools work identically across all supported models.
import { experimental_createMCPClient as createMCPClient } from "ai";
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp";
import { generateText } from "ai";
import { openai } from "@ai-sdk/openai";
const transport = new StreamableHTTPClientTransport(
new URL("https://edge.vinkius.com/[YOUR_TOKEN_HERE]/mcp")
);
const mcpClient = await createMCPClient({ transport });
const tools = await mcpClient.tools();
const { text } = await generateText({
model: openai("gpt-4o"),
tools,
prompt: "List recent DonorsChoose transactions",
});
console.log(text);
await mcpClient.close(); Independent Platform Disclaimer: Vinkius is an independent platform and is not affiliated with, endorsed by, sponsored by, verified by, or otherwise authorized by DonorsChoose. All third-party trademarks, logos, and brand names are the property of their respective owners. Their use on this website is strictly for informational purposes to identify service compatibility and interoperability.
Why Choose Vinkius
Vinkius connects your tools to AI with real-time monitoring and automatic cost savings — all from one dashboard.
Real-time monitoring
Live
visibility into every interaction
Connect your favorite tools to your AI and see exactly what's happening — every request, every response, in real time.
Built-in savings
60%
lower AI costs
Vinkius compresses data between your apps and your AI automatically. Lower bills every month — no configuration required.
Single dashboard
One
place for every integration
Every tool your AI connects to, managed from a single screen. One account, complete control.
Common questions about DonorsChoose MCP in Vercel AI SDK
Use it with your favorite AI tools
Connect this server to Cursor, Claude, VS Code, and more.
Start using the DonorsChoose MCP today
We host it, we monitor it, we maintain it. You just paste one token.