{"id":31751459,"url":"https://github.com/toolprint/sdk-ts","last_synced_at":"2025-10-09T16:23:37.148Z","repository":{"id":299910561,"uuid":"1004524625","full_name":"toolprint/sdk-ts","owner":"toolprint","description":"The official toolprint SDK in typescript","archived":false,"fork":false,"pushed_at":"2025-09-22T04:50:37.000Z","size":1861,"stargazers_count":43,"open_issues_count":3,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-10-06T02:40:36.708Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://toolprint.ai","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/toolprint.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-18T19:01:45.000Z","updated_at":"2025-09-25T20:49:25.000Z","dependencies_parsed_at":"2025-06-18T23:33:28.791Z","dependency_job_id":"9333992a-6cce-4b41-8395-f97fa650fd6c","html_url":"https://github.com/toolprint/sdk-ts","commit_stats":null,"previous_names":["toolprint/sdk-ts"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/toolprint/sdk-ts","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toolprint%2Fsdk-ts","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toolprint%2Fsdk-ts/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toolprint%2Fsdk-ts/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toolprint%2Fsdk-ts/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/toolprint","download_url":"https://codeload.github.com/toolprint/sdk-ts/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/toolprint%2Fsdk-ts/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279001767,"owners_count":26083171,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-09T02:00:07.460Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-10-09T16:23:34.044Z","updated_at":"2025-10-09T16:23:37.143Z","avatar_url":"https://github.com/toolprint.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"assets/toolprint.png\" alt=\"Toolprint Logo\" width=\"200\"/\u003e\n\n# Build AI Agents That Think Like Experts\n\n[![Release](https://img.shields.io/github/v/release/toolprint/sdk-ts)](https://github.com/toolprint/sdk-ts/releases/latest)\n[![PNPM](https://img.shields.io/badge/pnpm-v10.4.1-orange)](https://pnpm.io)\n[![Node](https://img.shields.io/badge/node-%3E%3D22.14.0-brightgreen)](https://nodejs.org)\n[![TypeScript](https://img.shields.io/badge/typescript-5.x-blue)](https://www.typescriptlang.org)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\n\n**Use human-like instructions (\"Toolprints\") to guide agents in picking the right tools like an expert, secure by default.**\n\n[🚀 Get Started](#-get-started-in-60-seconds-in-cursor) | [🛠️ What are Toolprints?](#-what-are-toolprints-your-agents-reusable-brain) | [📖 SDK Docs](packages/toolprint-sdk/docs/apiSpec.md)\n\n\u003c/div\u003e\n\n## 🚀 Get Started in 60 Seconds (in Cursor!)\n\nGet from zero to a working, tool-enabled agent in your editor in under a minute.\n\n#### Step 1: Install the CLI \u0026 Create Your Account\n\n```bash\nbrew install toolprint/tap/toolprint\n\n# Follow prompts to create your free account \u0026 join the sandbox\ntoolprint\n```\n\n#### Step 2: Start the Toolprint Server\n\nIn your terminal, run the MCP server. This is the bridge that allows Toolprint to connect with your local tools and editor.\n\n```bash\ntoolprint mcp\n```\n\n#### Step 3: Connect to Cursor\n\nIn a **new terminal**, run the `toolprint` CLI again and navigate to the `Connect` option to link with your editor.\n\n#### Step 4: Craft Your First Toolprint!\n\nYou're all set. Go to Cursor and tag the `@toolprint` assistant to create your first blueprint.\n\n```\n@toolprint help me find the best tools to create linear tickets\n\n@toolprint create a new workflow to find all the recent github issues in model context protocol and track them in linear\n```\n\n## 🛠️ What are Toolprints? Your Agent's Reusable Brain\n\nForget brittle, hardcoded workflows. A **Toolprint** is a blueprint for tool usage—a declarative definition, crafted in natural language, that instructs your agent on how to achieve specific goals.\n\n- **✍️ Talk, Don't Code**: Your agent's new native language? English. Finally.\n- **⚡ Scripts are Brittle, Vibes are Forever**: Let your agent improvise when things go sideways.\n- **🔄 Craft Once, Sync Everywhere**: Create or edit a toolprint and the changes sync instantly across your team and agents.\n- **🔗 One Toolprint to Rule Them All**: Craft in Cursor, run in Claude, use in your SDK. It just works.\n\n## ✨ Your Tool-Using Superpowers\n\nToolprints are just the start. The Toolprint platform gives you a suite of powerful features to manage and optimize your entire tool ecosystem.\n\n#### 🔌 Universal Tool Connector\n\nConnect tools from any provider, across multiple MCPs, all through one secure gateway. Stop wrestling with dozens of different APIs and authentication schemes.\n\n#### 🧠 A System That Learns\n\nToolprint isn't static. It watches, learns, and gets smarter with every run. Our feedback loop analyzes agent performance to continuously improve tool selection, so your agents make better decisions tomorrow than they did today.\n\n#### 🎯 Just Need Great Search? We Got You.\n\nEven without using Toolprints, you can leverage our best-in-class semantic search. Point it at your tools, and get a powerful, natural language search interface to find the right tool for any job, instantly.\n\n## 🧑‍💻 Beyond the Editor: Unleash Your Agent\n\n#### Explore with the CLI\n\nReady to go deeper? Use the Toolprint CLI to explore the sandbox and connect your own tools.\n\n```bash\n# Explore all tools available in the sandbox\ntoolprint tools\n\n# Start the local server to connect your own tools\ntoolprint mcp\n```\n\n#### Build with the SDK\n\nFor full control, use the TypeScript SDK to build standalone agents. Here's how easy it is to inject recommended tools and prompts from Toolprint into a LangChain agent.\n\n**Install the SDK:**\n\n```bash\npnpm add @toolprint/sdk\n```\n\n**Example: Tool \u0026 Prompt Injection**\n\n```typescript\nimport { createLangchainToolbox, getToolbox } from '@toolprint/sdk'\nimport { createReactAgent, ChatOpenAI, HumanMessage } from '...' // Other LangChain imports\n\n// 1. Initialize Toolprint\nconst toolbox = await createLangchainToolbox(await getToolbox())\n\nconst userMessage = 'Find recent news about AI developments and summarize them.'\n\n// 2. Get tool \u0026 prompt recommendations from Toolprint\nconst recommendation = await toolbox.recommend(userMessage)\n\n// 3. Inject recommended tools and prompts into your agent\nconst agent = await createReactAgent({\n  llm: new ChatOpenAI(),\n  tools: recommendation.tools // \u003c-- Tool injection\n})\n\nconst result = await agent.invoke({\n  messages: [\n    new HumanMessage(userMessage),\n    ...recommendation.messages // \u003c-- Prompt injection\n  ]\n})\n```\n\nFor a complete, runnable example, check out the [LangChain Chat Agent README](apps/examples/langchain/chat-agent/README.md).\n\n## 🗣️ Have an Idea? Let's Talk!\n\n- **Got a Killer Feature Idea?**: We're all ears. [Open a feature request](https://github.com/toolprint/sdk-ts/issues/new?template=feature_request.yml) and let's build the future of agents together.\n- **Found a Gremlin?**: Bugs happen. [Report it here](https://github.com/toolprint/sdk-ts/issues/new?template=bug_report.yml) and we'll send out the exterminators.\n\n## 🙏 Acknowledgements\n\nA huge thank you to our partners at **[Blaxel](https://blaxel.ai)** for providing the MCPs and agent infrastructure that power our public sandbox.\n\n## 📝 License\n\n[MIT](LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftoolprint%2Fsdk-ts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftoolprint%2Fsdk-ts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftoolprint%2Fsdk-ts/lists"}