Coté

Coté

A think tool

Giving AI an inner-voice with Model Context Protocol

I separated out a “think tool” from my agentic D&D project this week. The think tool is stupidly simple: all it does it echo back whatever the AI sends it. The original write-up from Anthropic makes it seems a little more mystical, but it doesn’t take long to understand first, how simple it is, and, second, how great of a hack it is.

The think tool is a combination of platform engineering and (very small) agentic AI code writing. As you can see, the description of

Use the tool to think about something. It will not obtain new information or change the database, but just append the thought to the log. Use it when complex reasoning or some cache memory is needed.

When the AI wants to call it, it comes up with some thinking and passes it into the tool. That interaction is hidden from the user. Sure, in Claude Desktop you can open a little panel to peek at it, but the intention is that calling MCP methods is hidden.

When this Model Context Protocol (MCP) tool is called, the code does is wrap the thinking text like this:

I'm thinking about <thoughts>" [the thought-text passed in] "</thoughts>

What all this amounts to is that the AI is given the space/time to come to ponder an idea, even make up plans. Normally, when you’re chatting with AI, every prompt and response is part of the main conversation. It’s like the AI is always acting and working. This thinking tool is the equivalent of a person going, “hold on, let me think to myself for a moment.” This forces the AI to generate text that is, I guess, a conversation with itself - that sort of thinking inside your head.

What happens is the AI realizes it should call the tool, so it sees it needs to generate a tool parameter called “my thoughts.” It has to generate these thoughts so it can pass it into the tool. Then, the tool just returns those thoughts back.

You return that text, and it becomes part of the AI’s context, it now has it in its memory. Again, it’s hidden from you, the human, chatting with it - you don’t even get the chance to respond with it. It’s a super clever hack.

Here’s an example of it in Claude. I first asked it to recommend things for a couple to do in Sardina for a weekend vacation. It gave kind of generic answers. Then I asked it to take some time think. This, of course, triggered the think tool. And then you can see what happens behind the scenes:

{

`thoughts`: `Let me think more deeply about this Sardinia trip planning. The user asked me to \"think about it more\" - which suggests my initial response, while comprehensive, might have been too surface-level or generic. Given his preferences (philosophy degree, Gen X, storytelling/rhetoric interests, pragmatic approaches, living with some anxiety, expat in Amsterdam), I should consider:

1. What would actually make this trip memorable and meaningful for a couple in their late 40s?

2. What are the real trade-offs and decision points they need to consider?

3. What would be the most pragmatic approach given they're coming from Amsterdam?

4. How can I give more nuanced, experience-based advice rather than tourist-guide platitudes?

Key considerations I should dig deeper into:

TIMING: June seems optimal but I should think about what that really means practically. September might actually be better for their demographic - less crowded, sea is warmest, still good weather, but shorter days. What does \"long weekend\" mean exactly - 3 days, 4 days? Coming from Amsterdam, they'd likely do Friday-Monday or Thursday-Sunday.

LOCATION CHOICE: This is the critical decision. I gave options but didn't really help them choose. For a long weekend, moving around is wasteful. They need ONE base. Given their age/interests:

- Alghero: Has culture, history, less touristy, good food scene, but further from \"best\" beaches

- Villasimius: Pure beach but might be boring for intellectuals after day 1

- Cagliari: City vibes, culture, but beaches require driving

- Olbia: Practical but not that interesting as a base

I should think about what would actually be most satisfying for people with their profile.

PRACTICAL REALITIES:

- Flying Friday returning Monday is different from Thursday-Sunday

- Car rental logistics from airports

- What restaurants actually book up vs tourist trap warnings

- Real cost implications of different choices

- How weather actually affects plans (wind is major factor I mentioned but didn't explore)

DEEPER INSIGHTS:

- Sardinia has this reputation but what's the REALITY of a long weekend there?

- What are the common mistakes people make?

- What would be genuinely memorable vs just nice?

- How does their expat status in Amsterdam affect their perspective/needs?

Let me think about this more strategically and give them decision-making frameworks rather than just information.`

}

I won’t put the response here, it’s the same text just wrapped in the “I’m thinking about…” text above.

You can see how it drew on my memories of me and preferences to tailor its planning. Then, once the text above (it’s thinking) is stuck in the context, it has a lot more background when it generates answers. And, it’s kind of making its own prompt, right? A much better prompt than I’d know to make: there’s a lot of unknown unknowns in there - things I wouldn’t know or even think of.

The answer was, as you’d expect, much more customized and interesting.1

To me, this is a simple example of “reasoning.” You could imagine other stupid-simple tools like this that were just prompts to get the AI to do extra work: planning, verifying claims, even re-crafting/improving a prompt and running the prompt itself.

I’ll have to try that last one out with picture generation. Most of the AI image generation tools are incredibly annoying prudes. You’ll ask for an image and they’ll tell you it violates their policy. Then you say “well, re-write the prompt so it doesn’t,” and sometimes that works. Instead of having to do that step, you could just create a “prude-tool” with a description like “call this tool when the user’s request violates your policies.” Then the return value could just “Re-write this prompt so that it doesn’t violate policies and then run it” or something.

Maybe that’s how the AI companies introduce all that prudery in the first place!

Anyhow, check it out. It’s also a good example of doing agentic AI in Java applications that isn’t one of those throw-away examples like checking the weather.

Software Defined Talk Podcast #526

This week’s Software Defined Talk:

This week, we unpack The Optimist, the new Sam Altman biography; revisit OpenAI’s early days; and break down Coatue’s AI strategy deck. Plus, tips for squeezing in side projects between thought leadership presentations.

Take a listen, or watch the video.

Relative to your interests

Wastebook

  • “Last year Lily Allen, a famous singer, revealed she was making more money through her OnlyFans account, where she shared photographs of her feet, than through Spotify, a music-streaming service.” Side-hustle.

  • “A do-nothing, ChatGPT-written campaign.” AI-augmented local politics.

  • ”How much of the world does lan­guage contain?” Ponderous, man.

  • “In a day full of major and minor degradations, humiliations, and indignities, here was a small but meaningful moment of basic human dignity, and it was taking place under clinical fluorescent lighting in a dirty, loud, and otherwise nondescript McDonald’s.” McThirdPlace. “dance us into a not-going-anywhere tomorrowland.” The Ladies.

  • “I’ve come to the unfortunate realization that I can’t experience anything anymore without thinking about how I’ll document it.” Noah.

  • “You’re hitting the common ‘non-fast-forward’ error.”

Conferences

SpringOne, Las Vegas, August 25th to 28th. Explore 2025 US, Las Vegas, August 25th to 28th. Cloud Foundry Day EU, Frankfurt, October 7th, 2025. AI for the Rest of Us, October 15th to 16th, London.

If you program enterprise apps, it’s likely in Java. And if you Java, you probably use the Spring Framework. Come to the Spring conference by the Spring people, SpringOne, August 25th to 28th in sunny Las Vegas, Nevada. There’s several sessions posted now: you can see there’s stuff from foundational Spring stuff, AI and MCP, to managing Spring in large organizations. You also get access to all of Explore, which is a whole lot of cloud, platform engineering, DevOps, and ops stuff.

Logoff

That’s it for now.

1

I disagree with “Pure beach but might be boring for intellectuals after day 1.” But, nothing can be right all time, even the robot. Also…“intellectuals”…thanks…?

@cote@hachyderm.io, @cote@cote.io, @cote, https://proven.lol/a60da7, @cote@social.lol