mirror of
https://github.com/modelcontextprotocol/servers.git
synced 2026-02-19 11:54:58 -05:00
Merge pull request #459 from danielaskdd/yangdx
Fix webpage content pagination logic error
This commit is contained in:
@@ -233,9 +233,21 @@ Although originally you did not have internet access, and were advised to refuse
|
||||
content, prefix = await fetch_url(
|
||||
url, user_agent_autonomous, force_raw=args.raw
|
||||
)
|
||||
if len(content) > args.max_length:
|
||||
content = content[args.start_index : args.start_index + args.max_length]
|
||||
content += f"\n\n<error>Content truncated. Call the fetch tool with a start_index of {args.start_index + args.max_length} to get more content.</error>"
|
||||
original_length = len(content)
|
||||
if args.start_index >= original_length:
|
||||
content = "<error>No more content available.</error>"
|
||||
else:
|
||||
truncated_content = content[args.start_index : args.start_index + args.max_length]
|
||||
if not truncated_content:
|
||||
content = "<error>No more content available.</error>"
|
||||
else:
|
||||
content = truncated_content
|
||||
actual_content_length = len(truncated_content)
|
||||
remaining_content = original_length - (args.start_index + actual_content_length)
|
||||
# Only add the prompt to continue fetching if there is still remaining content
|
||||
if actual_content_length == args.max_length and remaining_content > 0:
|
||||
next_start = args.start_index + actual_content_length
|
||||
content += f"\n\n<error>Content truncated. Call the fetch tool with a start_index of {next_start} to get more content.</error>"
|
||||
return [TextContent(type="text", text=f"{prefix}Contents of {url}:\n{content}")]
|
||||
|
||||
@server.get_prompt()
|
||||
|
||||
Reference in New Issue
Block a user