mirror of
https://github.com/modelcontextprotocol/servers.git
synced 2026-04-18 02:54:12 +02: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(
|
content, prefix = await fetch_url(
|
||||||
url, user_agent_autonomous, force_raw=args.raw
|
url, user_agent_autonomous, force_raw=args.raw
|
||||||
)
|
)
|
||||||
if len(content) > args.max_length:
|
original_length = len(content)
|
||||||
content = content[args.start_index : args.start_index + args.max_length]
|
if args.start_index >= original_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>"
|
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}")]
|
return [TextContent(type="text", text=f"{prefix}Contents of {url}:\n{content}")]
|
||||||
|
|
||||||
@server.get_prompt()
|
@server.get_prompt()
|
||||||
|
|||||||
Reference in New Issue
Block a user